cassandra-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From jbel...@apache.org
Subject [2/6] git commit: improve Windows launch scripts patch by Ala' Alkhaldi and Josh McKenzie for CASSANDRA-7503
Date Mon, 14 Jul 2014 12:49:25 GMT
improve Windows launch scripts
patch by Ala' Alkhaldi and Josh McKenzie for CASSANDRA-7503


Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/94605037
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/94605037
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/94605037

Branch: refs/heads/cassandra-2.1.0
Commit: 9460503713891048fbd26549538d9215b8828f52
Parents: 83ac8a6
Author: Jonathan Ellis <jbellis@apache.org>
Authored: Mon Jul 14 07:48:03 2014 -0500
Committer: Jonathan Ellis <jbellis@apache.org>
Committed: Mon Jul 14 07:48:03 2014 -0500

----------------------------------------------------------------------
 bin/cassandra.bat |  3 ++-
 bin/cassandra.ps1 | 48 ++++++------------------------------------------
 2 files changed, 8 insertions(+), 43 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cassandra/blob/94605037/bin/cassandra.bat
----------------------------------------------------------------------
diff --git a/bin/cassandra.bat b/bin/cassandra.bat
index 8f645f2..08c0520 100644
--- a/bin/cassandra.bat
+++ b/bin/cassandra.bat
@@ -35,8 +35,9 @@ goto runLegacy
 REM -----------------------------------------------------------------------------
 :runPowerShell
 echo Detected powershell execution permissions.  Running with enhanced startup scripts.
+set errorlevel=
 powershell /file "%CASSANDRA_HOME%\bin\cassandra.ps1" %*
-goto finally
+exit /b %errorlevel%
 
 REM -----------------------------------------------------------------------------
 :runLegacy

http://git-wip-us.apache.org/repos/asf/cassandra/blob/94605037/bin/cassandra.ps1
----------------------------------------------------------------------
diff --git a/bin/cassandra.ps1 b/bin/cassandra.ps1
index 237c28c..53b0032 100644
--- a/bin/cassandra.ps1
+++ b/bin/cassandra.ps1
@@ -47,7 +47,7 @@ usage: cassandra.ps1 [-f] [-h] [-p pidfile] [-H dumpfile] [-E errorfile]
[-insta
     -f              Run cassandra in foreground
     -install        install cassandra as a service
     -uninstall      remove cassandra service
-    -p              pidfile tracked by server and removed on close
+    -p              pidfile tracked by server and removed on close (defaults to pid.txt)
     -H              change JVM HeapDumpPath
     -E              change JVM ErrorFile
     -help           print this message
@@ -109,7 +109,6 @@ Function Main
     }
     else
     {
-        CleanOldRun
         RunCassandra($f)
     }
 }
@@ -186,34 +185,6 @@ Function HandleInstallation
 }
 
 #-----------------------------------------------------------------------------
-Function CleanOldRun
-{
-    # see if we already have an instance of cassandra running from this folder
-    if (Test-Path $pidfile)
-    {
-        $a = Get-Content $pidfile
-
-        # file is there but empty
-        if ($a -eq $null)
-        {
-            Remove-Item $pidfile
-            return
-        }
-
-        $proc = Get-Process -Id $a -ErrorAction SilentlyContinue
-        if ($proc)
-        {
-            echo "ERROR!  There is already an instance of cassandra running from this folder
with pid: $a.  Please use stop-server.bat to stop this instance before starting cassandra."
-            exit
-        }
-        else
-        {
-            Remove-Item $pidfile
-        }
-    }
-}
-
-#-----------------------------------------------------------------------------
 Function RunCassandra([string]$foreground)
 {
     echo "Starting cassandra server"
@@ -275,8 +246,8 @@ $env:JAVA_BIN
     {
         $proc = Start-Process -FilePath "$cmd" -ArgumentList $arg1,$arg2,$arg3,$arg4 -PassThru
-WindowStyle Hidden
 
-        # Always store the pid, even if we're not registering it with the server
-        # The startup script uses this pid file as a protection against duplicate startup
from the same folder
+        $exitCode = $?
+
         try
         {
             echo $proc.Id > $pidfile
@@ -287,19 +258,12 @@ $env:JAVA_BIN
 WARNING! Failed to write pidfile to $pidfile.  stop-server.bat and
     startup protection will not be available.
 "@
+            exit 1
         }
 
-        Start-Sleep -m 100
-        $checkProcess = Get-Process -Id $proc.Id -ErrorAction SilentlyContinue
-        if ($checkProcess -eq $null)
-        {
-            echo "Error starting cassandra."
-            echo "Run with -v and -f to get foreground verbose information on the error."
-        }
-        else
+        if (-Not $exitCode)
         {
-            $cassPid = $proc.Id
-            echo "Started cassandra successfully with pid: $cassPid"
+            exit 1
         }
     }
 }


Mime
View raw message