X-Git-Url: https://git.sur5r.net/?a=blobdiff_plain;f=regress%2Ftests%2Fbsr-opt-test;h=e2bf556beefc4c97e30f32c07db12eb883d8cbab;hb=a752597b2a79ba0f2dfb0ec6b6da8403464e092b;hp=dab543e4615d66c277c659fd046ce9f282ea2f79;hpb=c190154e1eb5bff56ce7fff0232669d961f89fdd;p=bacula%2Fbacula diff --git a/regress/tests/bsr-opt-test b/regress/tests/bsr-opt-test index dab543e461..e2bf556bee 100755 --- a/regress/tests/bsr-opt-test +++ b/regress/tests/bsr-opt-test @@ -6,42 +6,39 @@ # the other volume is not used. I.e. bsr optimization # works. # +debug=0 +if test "$debug" -eq 1 ; then + out="tee" +else + out="output" +fi + cwd=`pwd` scripts/copy-test-confs scripts/cleanup echo "${cwd}/build" >/tmp/file-list -bin/bacula stop 2>&1 >/dev/null -bin/drop_sqlite_tables -bin/make_sqlite_tables echo " " echo " " -echo " === Starting bsr-opt-test ===" -echo " === Starting bsr-opt-test ===" >working/log +echo " === Starting bsr-opt-test at `date +%R:%S` ===" +echo " === Starting bsr-opt-test at `date +%R:%S` ===" >working/log echo " " -bin/bacula start 2>&1 >/dev/null -bin/console -c bin/console.conf <tmp/bconcmds +@$out /dev/null messages -@output tmp/log1.out -label storage=File1 -TestVolume001 -label storage=File1 -TestVolume002 -update Volume=TestVolume001 -6 -3000000 -10 -run job=NightlySave storage=File1 -yes +@$out tmp/log1.out +label storage=File1 volume=TestVolume001 +label storage=File1 volume=TestVolume002 +update Volume=TestVolume001 MaxVolBytes=3000000 +run job=NightlySave storage=File1 yes wait messages @# @# now do a restore @# -@output tmp/log2.out -restore where=${cwd}/tmp/bacula-restores current +@$out tmp/log2.out +restore bootstrap=${cwd}/working/restore.bsr where=${cwd}/tmp/bacula-restores select storage=File1 unmark * cd ${cwd}/build/src/cats mark * @@ -50,22 +47,47 @@ done yes wait messages -@output +@$out quit END_OF_DATA + +if test "$debug" -eq 1 ; then + bin/bacula start + cat tmp/bconcmds | bin/bconsole -c bin/bconsole.conf +else + bin/bacula start 2>&1 >/dev/null + cat tmp/bconcmds | bin/bconsole -c bin/bconsole.conf 2>&1 >/dev/null +fi + +scripts/check_for_zombie_jobs storage=File1 bin/bacula stop 2>&1 >/dev/null -grep TestVolume001 working/restore.bsr +# +# This test is not really reliable. What we want to do is +# to select files on only one Volume, then insure here +# that only one Volume is chosen. +# +grep TestVolume002 working/restore.bsr 2>&1 >/dev/null bsrstat=$? -grep "^Termination: *Backup OK" tmp/log1.out 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 +grep "^ Termination: *Restore OK" tmp/log2.out 2>&1 >/dev/null rstat=$? -diff -r build/src/cats tmp/bacula-restores${cwd}/build/src/cats -if [ $? != 0 -o $bsrstat != 1 -o $bstat != 0 -o $rstat != 0 ] ; then +diff -r build/src/cats tmp/bacula-restores${cwd}/build/src/cats 2>&1 >/dev/null +if [ $? != 0 -o $bsrstat != 0 -o $bstat != 0 -o $rstat != 0 ] ; then echo " " echo " " echo " !!!!! bsr-opt-test Bacula source failed!!! !!!!! " echo " !!!!! bsr-opt-test failed!!! !!!!! " >>test.out + if [ $bstat != 0 -o $rstat != 0 ] ; then + echo " !!!!! Bad Job termination status !!!!! " + echo " !!!!! Bad Job termination status !!!!! " >>test.out + elif [ $bsrstat != 0 ] ; then + echo " !!!!! Volume selection error !!!!! " + echo " !!!!! Volume selection error !!!!! " >>test.out + else + echo " !!!!! Restored files differ !!!!! " + echo " !!!!! Restored files differ !!!!! " >>test.out + fi echo " " else echo " ===== bsr-opt-test Bacula source OK ===== "