diff --git a/testsuite/expect/test2.7 b/testsuite/expect/test2.7 index 8dcf6d7a2891a1518814142a01a6950662b95f17..94821f4b254f955e342e2725cecb21f2cd973041 100755 --- a/testsuite/expect/test2.7 +++ b/testsuite/expect/test2.7 @@ -52,7 +52,7 @@ make_bash_script $file_in "$scontrol pidinfo \$\$" # # Spawn a srun batch job that uses stdout/err and confirm their contents # -spawn $srun --batch --output=$file_out --error=$file_err -t1 $file_in +set srun_pid [spawn $srun --batch --output=$file_out --error=$file_err -t1 $file_in] expect { -re "jobid ($number) submitted" { set job_id $expect_out(1,string) @@ -60,9 +60,8 @@ expect { } timeout { send_user "\nFAILURE: srun not responding\n" - kill_srun + slow_kill $srun_pid set exit_code 1 - exp_continue } eof { wait diff --git a/testsuite/expect/test2.8 b/testsuite/expect/test2.8 index cac2866cca5643ba0648d31eb77050e470407d75..f7a630f6031dc763ed4015aea3a762e075b05d92 100755 --- a/testsuite/expect/test2.8 +++ b/testsuite/expect/test2.8 @@ -50,7 +50,7 @@ make_bash_script $file_in " # # Submit a couple jobs so we have something to work with # -spawn $srun --batch --output=/dev/null --error=/dev/null -t5 $file_in +set srun_pid [spawn $srun --batch --output=/dev/null --error=/dev/null -t5 $file_in] expect { -re "jobid ($number) submitted" { set job_id1 $expect_out(1,string) @@ -58,7 +58,7 @@ expect { } timeout { send_user "\nFAILURE: srun not responding\n" - kill_srun + slow_kill $srun_pid exit 1 } eof { @@ -67,11 +67,10 @@ expect { } if {$job_id1 == 0} { send_user "\nFAILURE: srun submit failed\n" - kill_srun exit 1 } -spawn $srun --batch --output=/dev/null --error=/dev/null -t5 $file_in +set srun_pid [spawn $srun --batch --output=/dev/null --error=/dev/null -t5 $file_in] expect { -re "jobid ($number) submitted" { set job_id2 $expect_out(1,string) @@ -80,7 +79,7 @@ expect { timeout { send_user "\nFAILURE: srun not responding\n" cancel_job $job_id1 - kill_srun + slow_kill $srun_pid exit 1 } eof { @@ -90,7 +89,6 @@ expect { if {$job_id2 == 0} { send_user "\nFAILURE: srun submit failed\n" cancel_job $job_id1 - kill_srun exit 1 } diff --git a/testsuite/expect/test3.2 b/testsuite/expect/test3.2 index b9512e2aa58551a1e9b22b4a76528a68cf9922c9..96fe385b844c77967a0018b987769a019203cd2b 100755 --- a/testsuite/expect/test3.2 +++ b/testsuite/expect/test3.2 @@ -49,7 +49,7 @@ proc run_job { part_name } { global bin_hostname srun timeout set rc 1 - spawn $srun --output=none --error=none -p $part_name -N1-128 -t1 $bin_hostname + set srun_pid [spawn $srun --output=none --error=none -p $part_name -N1-128 -t1 $bin_hostname] expect { -re "Unable to contact" { send_user "\nFAILURE: slurm appears to be down\n" @@ -60,12 +60,12 @@ proc run_job { part_name } { exp_continue } -re "not available" { - kill_srun + slow_kill $srun_pid exp_continue } timeout { send_user "\nsrun not responding\n" - kill_srun + slow_kill $srun_pid return 1 } eof { diff --git a/testsuite/expect/test3.4 b/testsuite/expect/test3.4 index a417e1a99a7f4368ab80fb388e693eb3086751ff..cd54ec700db6940873134ee22602f316e0d1ac21 100755 --- a/testsuite/expect/test3.4 +++ b/testsuite/expect/test3.4 @@ -49,7 +49,7 @@ make_bash_script $file_in "$srun $bin_sleep 60" # # Submit a job so we have something to work with # -spawn $srun --batch --output=/dev/null --error=/dev/null -t1 --hold $file_in +set srun_pid [spawn $srun --batch --output=/dev/null --error=/dev/null -t1 --hold $file_in] expect { -re "jobid ($number) submitted" { set job_id $expect_out(1,string) @@ -57,9 +57,8 @@ expect { } timeout { send_user "\nFAILURE: srun not responding\n" - kill_srun + slow_kill $srun_pid set exit_code 1 - exp_continue } eof { wait diff --git a/testsuite/expect/test3.5 b/testsuite/expect/test3.5 index c0e64d8399a1d839f1f4ceb607a06de08986d3eb..29e9deef986478ea8652ec75fe61bc9d78436641 100755 --- a/testsuite/expect/test3.5 +++ b/testsuite/expect/test3.5 @@ -217,7 +217,7 @@ if {$found != 1} { set timed_out 0 set sleep_time 300 set timeout [expr $max_job_delay + $sleep_time] -spawn $srun -t1 -p $part_name $bin_sleep $sleep_time +set srun_pid [spawn $srun -t1 -p $part_name $bin_sleep $sleep_time] expect { -re "job exceeded timelimit" { set timed_out 1 @@ -229,8 +229,7 @@ expect { } timeout { send_user "\nFAILURE: srun not responding\n" - kill_srun - exp_continue + slow_kill $srun_pid } eof { wait diff --git a/testsuite/expect/test3.7 b/testsuite/expect/test3.7 index 659cbcd3f2fe28e027c649450f7c6d566147fba0..7e9f9930897d590d19ae14d8ca0e96555b2cc9b3 100755 --- a/testsuite/expect/test3.7 +++ b/testsuite/expect/test3.7 @@ -122,7 +122,7 @@ exec $bin_chmod 700 $file_prog # # Submit two jobs to the same node # -spawn $srun --batch -N1 -t1 --output=$file_out1 $file_prog_sh1 +set srun_pid [spawn $srun --batch -N1 -t1 --output=$file_out1 $file_prog_sh1] expect { -re "jobid ($number) submitted" { set job_id1 $expect_out(1,string) @@ -130,7 +130,7 @@ expect { } timeout { send_user "\nFAILURE: srun not responding\n" - kill_srun + slow_kill $srun_pid exit 1 } eof { @@ -139,7 +139,6 @@ expect { } if {$job_id1 == 0} { send_user "\nFAILURE: srun failed to report jobid\n" - kill_srun exit 1 } # Get the job's allocate host name @@ -159,7 +158,7 @@ expect { } timeout { send_user "\nFAILURE: scontrol not responding\n" - kill_srun + cancel_job $job_id1 exit 1 } eof { @@ -168,11 +167,11 @@ expect { } if {[string compare $host_name ""] == 0} { send_user "\nFAILURE: did not get hostname for job $job_id1\n" - kill_srun + cancel_job $job_id1 exit 1 } # Submit another job to that same node -spawn $srun --batch -N1 -t1 --output=$file_out2 $file_prog_sh2 +set srun_pid [spawn $srun --batch -N1 -t1 --output=$file_out2 $file_prog_sh2] expect { -re "jobid ($number) submitted" { set job_id2 $expect_out(1,string) @@ -180,7 +179,7 @@ expect { } timeout { send_user "\nFAILURE: srun not responding\n" - kill_srun + slow_kill $srun_pid exit 1 } eof { @@ -209,7 +208,7 @@ if {$not_supported == 1} { if {$not_supported == 0} { if {[wait_for_job $job_id2 RUNNING] != 0} { send_user "\nFAILURE: waiting for job $job_id2 to run\n" - kill_srun + cancel_job $job_id2 exit 1 } sleep 5 diff --git a/testsuite/expect/test3.8 b/testsuite/expect/test3.8 index 5bd5f5bca80c644ffb62228fb2498998f6e2c9eb..116d540fe22539e2ea36a4423754f41b8473b5a4 100755 --- a/testsuite/expect/test3.8 +++ b/testsuite/expect/test3.8 @@ -75,7 +75,7 @@ make_bash_script $file_in " # Spawn a srun batch job that uses stdout/err and confirm their contents # set timeout $max_job_delay -spawn $srun --batch --output=$file_out --error=$file_err -t1 $file_in +set srun_pid [spawn $srun --batch --output=$file_out --error=$file_err -t1 $file_in] expect { -re "jobid ($number) submitted" { set job_id $expect_out(1,string) @@ -83,9 +83,8 @@ expect { } timeout { send_user "\nFAILURE: srun not responding\n" - kill_srun + slow_kill $srun_pid set exit_code 1 - exp_continue } eof { wait @@ -148,7 +147,7 @@ set job_id 0 exec $bin_rm -f $file_flag_1 $file_flag_2 $file_flag_3 -spawn $srun --no-requeue --batch --output=$file_out --error=$file_err -t1 $file_in +set srun_pid [spawn $srun --no-requeue --batch --output=$file_out --error=$file_err -t1 $file_in] expect { -re "jobid ($number) submitted" { set job_id $expect_out(1,string) @@ -156,9 +155,8 @@ expect { } timeout { send_user "\nFAILURE: srun not responding\n" - kill_srun + slow_kill $srun_pid set exit_code 1 - exp_continue } eof { wait diff --git a/testsuite/expect/test5.4 b/testsuite/expect/test5.4 index fcf528a6802721243e6679984f1302b9212fd383..c4cb442cf2b23aa5d97bf448a124aa5cc4aadbbc 100755 --- a/testsuite/expect/test5.4 +++ b/testsuite/expect/test5.4 @@ -48,7 +48,7 @@ make_bash_script $file_in "$srun $bin_sleep 90" # # Submit a couple of job so we have something to look at # -spawn $srun --batch --output=/dev/null --error=/dev/null -t1 $file_in +set srun_pid [spawn $srun --batch --output=/dev/null --error=/dev/null -t1 $file_in] expect { -re "jobid ($number) submitted" { set job_id1 $expect_out(1,string) @@ -56,7 +56,7 @@ expect { } timeout { send_user "\nFAILURE: srun not responding\n" - kill_srun + slow_kill $srun_pid exit 1 } eof { @@ -65,11 +65,10 @@ expect { } if {$job_id1 == 0} { send_user "\nFAILURE: srun job submit failure\n" - kill_srun exit 1 } -spawn $srun --batch --output=/dev/null --error=/dev/null --hold -t1 $file_in +set srun_pid [spawn $srun --batch --output=/dev/null --error=/dev/null --hold -t1 $file_in] expect { -re "jobid ($number) submitted" { set job_id2 $expect_out(1,string) @@ -77,7 +76,7 @@ expect { } timeout { send_user "\nFAILURE: srun not responding\n" - kill_srun + slow_kill $srun_pid exit 1 } eof { @@ -86,13 +85,13 @@ expect { } if {$job_id2 == 0} { send_user "\nFAILURE: srun job submit failure\n" - kill_srun exit 1 } if {[wait_for_job $job_id1 RUNNING] != 0} { send_user "\nFAILURE to start job $job_id1\n" - kill_srun + cancel_job $$job_id1 + cancel_job $$job_id2 exit 1 } exec $bin_rm -f $file_in diff --git a/testsuite/expect/test5.5 b/testsuite/expect/test5.5 index 23a0e18c71b69aa5b9943e8eda0d768cf3a71d5f..ed499f913e75f7fd989aac04405dd95a94c350c4 100755 --- a/testsuite/expect/test5.5 +++ b/testsuite/expect/test5.5 @@ -49,7 +49,7 @@ make_bash_script $file_in "$srun $bin_sleep 10" # # Submit a couple of jobs so we have something to look at # -spawn $srun --batch --output=/dev/null --error=/dev/null --job-name=$job_name1 -t1 $file_in +set srun_pid [spawn $srun --batch --output=/dev/null --error=/dev/null --job-name=$job_name1 -t1 $file_in] expect { -re "jobid ($number) submitted" { set job_id1 $expect_out(1,string) @@ -57,7 +57,7 @@ expect { } timeout { send_user "\nFAILURE: srun not responding\n" - kill_srun + slow_kill $srun_pid exit 1 } eof { @@ -66,11 +66,10 @@ expect { } if {$job_id1 == 0} { send_user "\nFAILURE: srun job submit failure\n" - kill_srun exit 1 } -spawn $srun --batch --output=/dev/null --error=/dev/null --job-name=$job_name2 --hold -t1 $file_in +set srun_pid [spawn $srun --batch --output=/dev/null --error=/dev/null --job-name=$job_name2 --hold -t1 $file_in] expect { -re "jobid ($number) submitted" { set job_id2 $expect_out(1,string) @@ -78,7 +77,7 @@ expect { } timeout { send_user "\nFAILURE: srun not responding\n" - kill_srun + slow_kill $srun_pid exit 1 } eof { @@ -87,7 +86,6 @@ expect { } if {$job_id2 == 0} { send_user "\nFAILURE: srun job submit failure\n" - kill_srun exit 1 } diff --git a/testsuite/expect/test5.6 b/testsuite/expect/test5.6 index 444b7aa74c8ea63b8caf06e52b7675234540554e..2d55954e451709f389a73a07c1719e98318989cf 100755 --- a/testsuite/expect/test5.6 +++ b/testsuite/expect/test5.6 @@ -48,7 +48,7 @@ make_bash_script $file_in "$srun $bin_sleep $max_job_delay" # # Submit a couple of job so we have something to look at # -spawn $srun --batch -N1-1 --output=/dev/null --error=/dev/null -t5 $file_in +set srun_pid [spawn $srun --batch -N1-1 --output=/dev/null --error=/dev/null -t5 $file_in] expect { -re "jobid ($number) submitted" { set job_id1 $expect_out(1,string) @@ -56,7 +56,7 @@ expect { } timeout { send_user "\nFAILURE: srun not responding\n" - kill_srun + slow_kill $srun_pid exit 1 } eof { @@ -65,11 +65,10 @@ expect { } if {$job_id1 == 0} { send_user "\nFAILURE: srun job submit failure\n" - kill_srun exit 1 } -spawn $srun --batch -N1-1 --output=/dev/null --error=/dev/null --hold -t5 $file_in +set srun_pid [spawn $srun --batch -N1-1 --output=/dev/null --error=/dev/null --hold -t5 $file_in] expect { -re "jobid ($number) submitted" { set job_id2 $expect_out(1,string) @@ -77,7 +76,8 @@ expect { } timeout { send_user "\nFAILURE: srun not responding\n" - kill_srun + slow_kill $srun_pid + cancel_job $job_id1 exit 1 } eof { @@ -86,7 +86,7 @@ expect { } if {$job_id2 == 0} { send_user "\nFAILURE: srun job submit failure\n" - kill_srun + cancel_job $job_id1 exit 1 }