]> jspc29.x-matter.uni-frankfurt.de Git - hadesdaq.git/commitdiff
kill ioc when IOCs should be restarted, mt
authorhadaq@countinghouse <jan@mueschelsoft.de>
Fri, 25 Apr 2014 20:06:26 +0000 (22:06 +0200)
committerhadaq@countinghouse <jan@mueschelsoft.de>
Fri, 25 Apr 2014 20:06:26 +0000 (22:06 +0200)
evtbuild/start_eb_gbe.pl

index cf0bcaa793fd69be88c9ee36c096d4914825f9df..232c0fbb389d8de0b9d379f7a10744d887b46a7a 100755 (executable)
@@ -960,10 +960,40 @@ sub killIOC()
         }
     }
 
+
+    
+
     #- Wait for children
     foreach my $cur_child_pid (@process_list) {
         waitpid($cur_child_pid,0);
     }
+
+    ### just kill the remaining stuff
+    @process_list = ();
+
+    foreach my $ip (@EB_IP_list){
+       my $cmd = qq|ssh scs\@$ip "/usr/bin/pkill -f \\"SCREEN -dmS ioc_eb\\""|;
+       print $cmd;
+       &forkMe($cmd, "/tmp/ioc_kill_$ip", \@process_list);
+    }
+
+    foreach my $cur_child_pid (@process_list) {
+        waitpid($cur_child_pid,0);
+    }
+
+    sleep 1;
+
+    ### just kill the remaining stuff
+    @process_list = ();
+    foreach my $ip (@EB_IP_list){
+       my $cmd = qq|ssh scs\@$ip "/usr/bin/pkill -9 -f \\"SCREEN -dmS ioc_eb\\""|;
+       &forkMe($cmd, "/tmp/ioc_kill2_$ip", \@process_list);
+    }
+
+    foreach my $cur_child_pid (@process_list) {
+        waitpid($cur_child_pid,0);
+    }
+
 }
 
 sub forkMe()
@@ -976,7 +1006,7 @@ sub forkMe()
         push( @$proc_list, $child );
     }
     elsif( $child == 0 ) {                        # child
-        system("$cmd > $log");
+        system("$cmd >$log 2>&1 ");
         exit(0);
     }
     else{