LP#1337401: Only care about our own processes
authorMike Rylander <mrylander@gmail.com>
Fri, 20 Jun 2014 20:48:51 +0000 (16:48 -0400)
committerGalen Charlton <gmc@esilibrary.com>
Tue, 19 Aug 2014 18:51:17 +0000 (11:51 -0700)
OpenSRF can run mutiple times, as different users, on one host.
Right now we look for all service processes, but we should only
look for our own. This patch does that.

Signed-off-by: Mike Rylander <mrylander@gmail.com>
Signed-off-by: Galen Charlton <gmc@esilibrary.com>

bin/opensrf-perl.pl.in

index e98eed6..e1c7efc 100755 (executable)
@@ -211,8 +211,8 @@ sub get_service_pids_from_ps {
     my $service = shift;
 
     my $ps = ($service eq 'router') ?
-        "ps ax | grep 'OpenSRF Router'" :
-        "ps ax | grep 'OpenSRF Listener \\[$service\\]'";
+        "ps x | grep 'OpenSRF Router'" :
+        "ps x | grep 'OpenSRF Listener \\[$service\\]'";
 
     $ps .= " | grep -v grep |  sed 's/^\\s*//' | cut -d' ' -f1";
     my @pids = `$ps`;
@@ -492,9 +492,9 @@ sub get_running_pids {
 
     # start with the listeners, then drones, then routers
     my @greps = (
-        "ps ax | grep 'OpenSRF Listener' ",
-        "ps ax | grep 'OpenSRF Drone' ",
-        "ps ax | grep 'OpenSRF Router' "
+        "ps x | grep 'OpenSRF Listener' ",
+        "ps x | grep 'OpenSRF Drone' ",
+        "ps x | grep 'OpenSRF Router' "
     );
 
     $_ .= "| grep -v grep |  sed 's/^\\s*//' | cut -d' ' -f1" for @greps;