X-Git-Url: https://git.sur5r.net/?a=blobdiff_plain;f=regress%2Ftests%2Ffour-concurrent-jobs-test;h=8d93599352d1b0b4aae27da397af6bf238ceb44d;hb=d47b681717803cdb66c36002f698926b347839bb;hp=b9c4dc374ee1786ed1849803df986667d17b5794;hpb=a11c5d95137a82a90b2f86980bbbb34cf233ff66;p=bacula%2Fbacula diff --git a/regress/tests/four-concurrent-jobs-test b/regress/tests/four-concurrent-jobs-test index b9c4dc374e..8d93599352 100755 --- a/regress/tests/four-concurrent-jobs-test +++ b/regress/tests/four-concurrent-jobs-test @@ -1,80 +1,111 @@ #!/bin/sh # -# Run two jobs at the same time +# Run four jobs at the same time, with two Volumes. +# Set max Vol bytes of first volume +# to less than total backup to force Bacula to use the second +# Volume. # -cwd=`pwd` -scripts/copy-test-confs +TestName="four-concurrent-jobs-test" +JobName=Four-concurrent-jobs +. scripts/functions + scripts/cleanup -echo "${cwd}/build" >/tmp/file-list -bin/bacula stop 2>&1 >/dev/null -bin/drop_sqlite_tables -bin/make_sqlite_tables +scripts/copy-test-confs +echo "${cwd}/build" >${cwd}/tmp/file-list -echo " " -echo " " -echo " === Starting four-concurrent-jobs-test ===" -echo " === Starting four-concurrent-jobs-test ===" >>working/log -echo " " +change_jobname NightlySave $JobName +start_test -#bin/bacula start 2>&1 >/dev/null -bin/bacula start -bin/console -c bin/console.conf <${cwd}/tmp/bconcmds +@$out /dev/null messages -@output tmp/log1.out +@$out ${cwd}/tmp/log1.out label storage=File1 TestVolume001 label storage=File1 TestVolume002 -update Volume=TestVolume001 -6 -100000000 +update Volume=TestVolume001 MaxVolBytes=100000000 @#50000000 -10 -run job=NightlySave level=Full Storage=File1 +@#12 +setdebug level=51 Storage=File1 +status storage=File1 +llist volume=TestVolume001 +llist volume=TestVolume002 +list nextvol +1 +run job=$JobName level=Full Storage=File1 yes -run job=NightlySave level=Full Storage=File1 +@#reload +llist volume=TestVolume001 +llist volume=TestVolume002 +list nextvol +1 +run job=$JobName level=Full Storage=File1 yes -run job=NightlySave level=Full Storage=File1 +@#reload +llist volume=TestVolume001 +llist volume=TestVolume002 +list nextvol +1 +run job=$JobName level=Full Storage=File1 yes -run job=NightlySave level=Full Storage=File1 +@#reload +llist volume=TestVolume001 +llist volume=TestVolume002 +list nextvol +1 +status storage=File1 +run job=$JobName level=Full Storage=File1 yes +status storage=File1 +@#reload +@#reload +list nextvol +1 @sleep 2 status dir +status storage=File1 +llist volume=TestVolume001 +llist volume=TestVolume002 +@#reload @sleep 5 messages +@#reload wait +status storage=File1 +@#reload +list nextvol +1 messages @# @# now do a restore @# -@output tmp/log2.out -restore where=${cwd}/tmp/bacula-restores -5 +@$out ${cwd}/tmp/jobmedia.out +list volumes +sql +select JobId,MediaId,StartFile,StartBlock,EndFile,EndBlock from JobMedia; + + +@$out ${cwd}/tmp/log2.out +status storage=File1 +setdebug level=100 Storage=File1 +restore where=${cwd}/tmp/bacula-restores select storage=File1 +unmark * +mark * done yes wait +run job=$JobName level=Full Storage=File1 yes +wait +@#reload messages -@output quit END_OF_DATA -bin/bacula stop 2>&1 >/dev/null -grep "^Termination: *Backup OK" tmp/log1.out 2>&1 >/dev/null -bstat=$? -grep "^Termination: *Restore OK" tmp/log2.out 2>&1 >/dev/null -rstat=$? -diff -r build tmp/bacula-restores${cwd}/build -if [ $? != 0 -o $bstat != 0 -o $rstat != 0 ] ; then - echo " " - echo " " - echo " !!!!! four-concurrent-jobs-test Bacula source failed!!! !!!!! " - echo " !!!!! four-concurrent-jobs-test failed!!! !!!!! " >>test.out - echo " " - exit 1 -else - echo " ===== four-concurrent-jobs-test Bacula source OK ===== " - echo " ===== four-concurrent-jobs-test OK ===== " >>test.out - scripts/cleanup - exit 0 -fi +run_bacula +check_for_zombie_jobs storage=File1 +stop_bacula + +check_two_logs +check_restore_diff +end_test