added state based block buffers to log manager
This commit is contained in:
@ -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
|
||||
|
@ -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)
|
||||
|
||||
|
Reference in New Issue
Block a user