added state based block buffers to log manager

This commit is contained in:
Markus Makela
2014-09-10 12:09:00 +03:00
parent ae9d38025e
commit 4028c50fea
5 changed files with 68 additions and 71 deletions

View File

@ -1,6 +1,6 @@
#! /bin/bash
if [[ $# -lt 3 ]]
if [[ $# -lt 4 ]]
then
echo "Usage: logorder.sh <iterations> <frequency of flushes> <message size>"
echo "To disable log flushing, use 0 for flush frequency"
@ -12,31 +12,31 @@ rm *.log
#Create large messages
$PWD/testorder $1 $2 $3
TESTLOG=$4
MCOUNT=$1
STARTS=`cat skygw_err1.log |tr -s ' '|grep -o 'start:[[:digit:]]\+'|cut -d ':' -f 2`
BLOCKS=`cat skygw_err1.log |tr -s ' '|grep -o 'block:[[:digit:]]\+'|cut -d ':' -f 2`
MESSAGES=`cat skygw_err1.log |tr -s ' '|grep -o 'message|[[:digit:]]\+'|cut -d '|' -f 2`
ENDS=`cat skygw_err1.log |tr -s ' '|grep -o 'end:[[:digit:]]\+'|cut -d ':' -f 2`
prev=0
error=0
for i in $STARTS
for i in $BLOCKS
do
if [[ $i -le $prev ]]
then
error=1
echo "start mismatch: $i was after $prev."
echo "block mismatch: $i was after $prev." >> $TESTLOG
fi
prev=$i
done
if [[ error -eq 0 ]]
then
echo "Block buffer starts were in ascending order"
echo "Block buffers were in order" >> $TESTLOG
else
echo "Error: block buffers were written in the wrong order"
echo "Error: block buffers were written in the wrong order" >> $TESTLOG
fi
prev=0
@ -48,34 +48,14 @@ do
if [[ $i -ne $(( prev + 1 )) ]]
then
error=1
echo "message mismatch: $i was after $prev."
echo "message mismatch: $i was after $prev." >> $TESTLOG
fi
prev=$i
done
if [[ error -eq 0 ]]
then
echo "Block buffer messages were in ascending order"
echo "Block buffer messages were in order" >> $TESTLOG
else
echo "Error: block buffer messages were written in the wrong order"
fi
prev=0
error=0
for i in $ENDS
do
if [[ $i -le $prev ]]
then
error=1
echo "end mismatch: $i was after $prev."
fi
prev=$i
done
if [[ error -eq 0 ]]
then
echo "Block buffer ends were in ascending order"
else
echo "Error: block buffers were written in the wrong order"
echo "Error: block buffer messages were written in the wrong order" >> $TESTLOG
fi

View File

@ -28,6 +28,7 @@ testall:
cleantests:
- $(DEL) *.o
- $(DEL) *.log
- $(DEL) testlog
- $(DEL) testorder
- $(DEL) *~
@ -73,6 +74,9 @@ runtests:
@echo "Use 16 threads" >> $(TESTLOG)
@echo "" >> $(TESTLOG)
@-$(LAUNCH_DEBUGGER) $(TESTAPP) "-t 16" 2>>$(TESTLOG)
@echo "Test Log Manager Message Order" >> $(TESTLOG)
@echo "" >> $(TESTLOG)
./logorder.sh 500 0 500 $(TESTLOG)
@echo "Log Manager PASSED" >> $(TESTLOG)
@echo "" >> $(TESTLOG)