scripts/copy-test-confs
scripts/cleanup
echo "${cwd}/tmp/largefile" >/tmp/file-list
+if test -c /dev/urandom ; then
# Create 56MB file with random data
-echo "Creating a 56MB file with random data ..."
-dd if=/dev/urandom of=${cwd}/tmp/largefile bs=1024 count=55000
+ echo "Creating a 56MB file with random data ..."
+ dd if=/dev/urandom of=${cwd}/tmp/largefile bs=1024 count=55000
+else
+ echo "Creating a 56MB file with bacula-dir data ..."
+ dd if=bin/bacula-dir of=${cwd}/tmp/1 bs=1024 count=1000
+ cat ${cwd}/tmp/1 ${cwd}/tmp/1 ${cwd}/tmp/1 ${cwd}/tmp/1 ${cwd}/tmp/1 >${cwd}/tmp/2
+ rm -f ${cwd}/tmp/1
+ cat ${cwd}/tmp/2 ${cwd}/tmp/2 ${cwd}/tmp/2 ${cwd}/tmp/2 ${cwd}/tmp/2 >>${cwd}/tmp/3
+ rm -f ${cwd}/tmp/2
+ cat ${cwd}/tmp/3 ${cwd}/tmp/3 ${cwd}/tmp/3 ${cwd}/tmp/3 ${cwd}/tmp/3 >${cwd}/tmp/largefile
+ rm -f ${cwd}/tmp/3
+fi
+
echo "largefile created"
-bin/bacula stop 2>&1 >/dev/null
-bin/drop_sqlite_tables
-bin/make_sqlite_tables
echo " "
echo " "
-echo " === Starting concurrent-jobs-test ==="
-echo " === Starting concurrent-jobs-test ===" >>working/log
+echo " === Starting concurrent-jobs-test at `date +%R:%S` ==="
+echo " === Starting concurrent-jobs-test at `date +%R:%S` ===" >>working/log
echo " "
bin/bacula start 2>&1 >/dev/null
-bin/console -c bin/console.conf <<END_OF_DATA
+bin/bconsole -c bin/bconsole.conf <<END_OF_DATA
@output /dev/null
messages
@output tmp/log1.out
-label storage=File
-TestVolume001
-run job=CompressedTest level=Full
-yes
-run job=CompressedTest level=Full
-yes
-run job=CompressedTest level=Full
-yes
-run job=CompressedTest level=Full
-yes
+label storage=File volume=TestVolume001
+run job=CompressedTest level=Full yes
+run job=CompressedTest level=Full yes
+run job=CompressedTest level=Full yes
+run job=CompressedTest level=Full yes
wait
messages
@#
@# now do a restore
@#
@output tmp/log2.out
-restore where=${cwd}/tmp/bacula-restores
-5
+restore where=${cwd}/tmp/bacula-restores select storage=File
+unmark *
+mark *
done
yes
wait
@output
quit
END_OF_DATA
+scripts/check_for_zombie_jobs storage=File
bin/bacula stop 2>&1 >/dev/null
-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 tmp/largefile tmp/bacula-restores${cwd}/tmp/largefile
+diff tmp/largefile tmp/bacula-restores${cwd}/tmp/largefile 2>&1 >/dev/null
if [ $? != 0 -o $bstat != 0 -o $rstat != 0 ] ; then
echo " "
echo " "
- echo " ===== concurrent-jobs-test Bacula source failed!!! ===== "
- echo " ===== concurrent-jobs-test failed!!! ===== " >>test.out
+ echo " !!!!! concurrent-jobs-test Bacula source failed!!! !!!!! "
+ echo " !!!!! concurrent-jobs-test failed!!! !!!!! " >>test.out
+ if [ $bstat != 0 -o $rstat != 0 ] ; then
+ echo " !!!!! Bad Job termination status !!!!! "
+ echo " !!!!! Bad Job termination status !!!!! " >>test.out
+ else
+ echo " !!!!! Restored files differ !!!!! "
+ echo " !!!!! Restored files differ !!!!! " >>test.out
+ fi
echo " "
else
echo " ===== concurrent-jobs-test Bacula source OK ===== "