Checking master going backward, create iprop-stats.

git-svn-id: svn://svn.h5l.se/heimdal/trunk/heimdal@21836 ec53bebd-3082-4978-b11e-865c3cabbd6b
This commit is contained in:
Love Hörnquist Åstrand
2007-08-08 06:39:26 +00:00
parent fd18c8539e
commit da9d982415

View File

@@ -100,6 +100,7 @@ if [ "$?" != 0 ] ; then
exit 1
fi
> iprop-stats
echo "starting master"
${ipropdmaster} --hostname=localhost -k ${keytab} \
--database=${objdir}/current-db &
@@ -115,6 +116,8 @@ sleep 4
echo "checking slave is up"
${EGREP} 'iprop/slave@TEST.H5L.SE.*Up' iprop-stats >/dev/null || exit 1
# ----------------- checking: pushing lives changes
echo "Add host"
${kadmin} -l add --random-key --use-defaults host/foo@${R} || exit 1
sleep 2
@@ -141,6 +144,17 @@ sleep 2
${EGREP} 'iprop/slave@TEST.H5L.SE.*Down' iprop-stats >/dev/null || exit 1
# ----------------- checking: slave is missing changes while down
echo "doing changes while slave is down"
${kadmin} -l cpw --random-password user@${R} > /dev/null || exit 1
${kadmin} -l cpw --random-password user@${R} > /dev/null || exit 1
echo "Makeing a copy of the master log file"
cp ${objdir}/current.log ${objdir}/current.log.tmp
# ----------------- checking: checking that master and slaves resyncs
echo "starting slave again"
> iprop-stats
KRB5_CONFIG="${objdir}/krb5-slave.conf" \
@@ -168,6 +182,8 @@ ${EGREP} 'iprop/slave@TEST.H5L.SE.*Up' iprop-stats >/dev/null || exit 1
echo "checking for replay problems"
${EGREP} 'Entry already exists in database' messages.log && exit 1
# ----------------- checking: checking live truncation of master log
${kadmin} -l cpw --random-password user@${R} > /dev/null || exit 1
sleep 2
@@ -175,9 +191,8 @@ echo "live truncate on master log"
${iproplog} truncate || exit 1
sleep 2
trap "" EXIT
kill ${ipdm} ${ipds} ${kdcpid}
echo "Killing master and slave"
kill ${ipdm} ${ipds}
sleep 2
${EGREP} "^master down at " iprop-stats > /dev/null || exit 1
@@ -188,4 +203,39 @@ ${iproplog} last-version > slave-last.tmp
${iproplog} last-version > master-last.tmp
cmp master-last.tmp slave-last.tmp || exit 1
# ----------------- checking: master going backward
echo "Going back to old version of the master log file"
cp ${objdir}/current.log.tmp ${objdir}/current.log
echo "starting master"
${ipropdmaster} --hostname=localhost -k ${keytab} \
--database=${objdir}/current-db &
ipdm=$!
sleep 4
echo "starting slave"
> iprop-stats
KRB5_CONFIG="${objdir}/krb5-slave.conf" \
${ipropdslave} --hostname=slave -k ${keytab} localhost &
ipds=$!
sleep 2
echo "checking slave is up again"
${EGREP} 'iprop/slave@TEST.H5L.SE.*Up' iprop-stats >/dev/null || exit 1
echo "checking for replay problems"
${EGREP} 'Entry already exists in database' messages.log && exit 1
echo "pushing one change"
${kadmin} -l cpw --random-password user@${R} > /dev/null || exit 1
sleep 2
trap "" EXIT
kill ${ipdm} ${ipds} ${kdcpid}
echo "compare versions on master and slave logs"
KRB5_CONFIG=${objdir}/krb5-slave.conf \
${iproplog} last-version > slave-last.tmp
${iproplog} last-version > master-last.tmp
cmp master-last.tmp slave-last.tmp || exit 1
exit $ec