]> git.sur5r.net Git - bacula/bacula/commitdiff
Update
authorKern Sibbald <kern@sibbald.com>
Sun, 26 Nov 2006 14:29:45 +0000 (14:29 +0000)
committerKern Sibbald <kern@sibbald.com>
Sun, 26 Nov 2006 14:29:45 +0000 (14:29 +0000)
git-svn-id: https://bacula.svn.sourceforge.net/svnroot/bacula/trunk@3704 91ce42f0-d328-0410-95d8-f526ca767f89

regress/tests/restore-disk-seek-test
regress/tests/restore-seek-tape [new file with mode: 0755]
regress/tests/two-volume-test

index 3dadb78a5018a1c7010bdf17880c7b8eefc6f003..c82d011b7574971a8892fbb0f15882e243cf6f2c 100755 (executable)
@@ -19,7 +19,7 @@ mkdir ${cwd}/tmp/build
 # Copy only the .c files (to be restored)
 #  set files to "*.c" for all c files
 files="ua_tree.c ua_update.c"
-# files="*.c"
+#  files="*.c"
 for i in ${files}; do
    cp -p ${cwd}/build/src/dird/${i} ${cwd}/tmp/build
 done
@@ -62,7 +62,7 @@ messages
 @#
 @$out tmp/log2.out
 setdebug level=30 fd     
-setdebug level=10 storage=File
+setdebug level=11 storage=File
 sql
 @# print the JobMedia records
 select * from JobMedia;
diff --git a/regress/tests/restore-seek-tape b/regress/tests/restore-seek-tape
new file mode 100755 (executable)
index 0000000..b86b75d
--- /dev/null
@@ -0,0 +1,93 @@
+#!/bin/sh
+#
+# Run a simple backup of the Bacula build directory 
+#   to a tape where the maximum tape file size is set to 1M
+#   then restore a few files from it.  Note, by setting the maximum 
+#   file size to 1M, it runs very slow. This tests the
+#   seeking capability
+#
+TestName="restore-seek-tape"
+JobName=restore-tape-seek
+. scripts/functions
+set_debug 1
+
+copy_tape_confs
+echo "${cwd}/tmp/build" >/tmp/file-list
+rm -rf ${cwd}/tmp/build
+mkdir ${cwd}/tmp/build
+# Copy only the .c files (to be restored)
+#  set files to "*.c" for all c files
+files="ua_tree.c ua_update.c"
+# files="*.c"
+for i in ${files}; do
+   cp -p ${cwd}/build/src/dird/${i} ${cwd}/tmp/build
+done
+cd ${cwd}/tmp/build
+ls >../1
+cd ..
+sed s%\^%${cwd}/tmp/build/% 1 >restore-list
+#
+# At this point restore-list contains the list
+#  of files we will restore
+#
+rm -f 1
+cd ${cwd}
+#
+# Now arrange to backup *everything*
+#
+rm -rf  ${cwd}/tmp/build
+mkdir ${cwd}/tmp/build
+cp -fp ${cwd}/build/src/dird/* ${cwd}/tmp/build
+#
+# Enable MaximumFileSize to ensure lots of JobMedia records and thus
+#  lots of seeking
+#
+cp ${cwd}/bin/bacula-sd.conf ${cwd}/tmp/1
+sed "s%# Maximum File Size = 1000000%  Maximum File Size = 10KB%" ${cwd}/tmp/1 >${cwd}/bin/bacula-sd.conf
+
+change_jobname NightlySave $JobName
+start_test
+
+cat <<END_OF_DATA >tmp/bconcmds
+@$out /dev/null
+messages
+@$out tmp/log1.out
+label storage=DDS-4 volume=TestVolume001 pool=Default
+run job=$JobName yes
+wait
+messages
+@#
+@# now do a restore
+@#
+@$out tmp/log2.out
+setdebug level=30 fd
+setdebug level=10 storage=DDS-4
+sql
+@# print the JobMedia records
+select * from JobMedia;
+
+restore bootstrap=${cwd}/tmp/kern.bsr where=${cwd}/tmp/bacula-restores storage=DDS-4
+7
+<${cwd}/tmp/restore-list
+
+yes
+wait
+messages
+@$out
+quit
+END_OF_DATA
+
+run_bacula
+check_for_zombie_jobs storage=DDS-4
+stop_bacula
+
+# Now setup a control directory of only what we *should* restore
+rm -rf ${cwd}/tmp/build
+mkdir  ${cwd}/tmp/build
+for i in ${files}; do
+   cp -p ${cwd}/build/src/dird/${i} ${cwd}/tmp/build
+done
+
+check_two_logs
+check_restore_tmp_build_diff
+end_test
index 7c2c51ad6722258aee614654889740d3bcea23ad..484fd958f14e861037fc647536a57d1a4e918a69 100755 (executable)
@@ -10,7 +10,7 @@
 TestName="two-volume-test"
 JobName=TwoVolume
 . scripts/functions
-set_debug 0
+set_debug 1
 . config.out
 
 cwd=`pwd`