ldb: Release ldb 1.3.0
[Samba.git] / ctdb / tests / eventscripts / 00.ctdb.init.009.sh
blobf546a7fdf27d63cf279a76a80f2547e7c56148cd
1 #!/bin/sh
3 . "${TEST_SCRIPTS_DIR}/unit.sh"
5 define_test "TDB check, bad TDB multiple times"
7 setup_ctdb
9 db="${CTDB_DBDIR}/foo.tdb.0"
10 FAKE_TDB_IS_OK="no"
12 result_filter ()
14 _date="[0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9]"
15 _time="[0-9][0-9][0-9][0-9][0-9][0-9]"
16 _nanos="[0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9]"
17 _date_time="${_date}\.${_time}\.${_nanos}"
18 sed -e "s|\.${_date_time}\.|.DATE.TIME.|"
21 required_result_tdbcheck ()
23 ok <<EOF
24 WARNING: database ${db} is corrupted.
25 Moving to backup ${db}.DATE.TIME.corrupt for later analysis.
26 EOF
29 # List the corrupt databases
30 test_num_corrupt ()
32 (cd "$CTDB_DBDIR" && ls foo.tdb.0.*.corrupt)
35 # Required result is a list of up to 10 corrupt databases
36 required_result_num_corrupt ()
38 _num="$1"
40 if [ "$_num" -gt 10 ] ; then
41 _num=10
44 _t=""
45 for _x in $(seq 1 $_num) ; do
46 _t="${_t:+${_t}
47 }foo.tdb.0.DATE.TIME.corrupt"
48 done
50 ok "$_t"
53 for i in $(seq 1 15) ; do
54 touch "$db"
55 required_result_tdbcheck
56 simple_test
57 required_result_num_corrupt "$i"
58 simple_test_command test_num_corrupt
59 done