8ee501168e50280720ac596ffd2b508504bb7a2f
[tsan11-tsan11rec-docker.git] / scripts / assertion_test.sh
1 #!/bin/bash
2   
3 MABAINLIB="../src"
4 MABAINDIR="mabain/examples"
5
6 TESTS="silo"
7
8 TOTAL_RUN=$1
9
10 if [ -z "$1" ]; then
11         TOTAL_RUN=10
12 fi
13
14 function run_silo_test {
15         echo "Silo assertion test"
16         COUNT_ASSERT=0
17         EXE='./dbtest --verbose -t 5'
18
19         cd 'silo/out-perf.debug.check.masstree/benchmarks/'
20         for i in `seq 1 1 $TOTAL_RUN`
21         do
22                 OUTPUT="$($EXE 2>&1)"
23                 ASSERT="$(echo "$OUTPUT" | grep "Assert")"
24                 if [ -n "$ASSERT" ] ; then
25                         ((++COUNT_ASSERT))
26                 fi
27         done
28
29         cd ../../..
30
31         AVG_ASSERT=$(echo "${COUNT_ASSERT} * 100 / ${TOTAL_RUN}" | bc -l | xargs printf "%.1f")
32         echo "Runs: ${TOTAL_RUN} | Assertion rate: ${AVG_ASSERT}%"
33 }
34
35 function run_mabain_test {
36         export LD_LIBRARY_PATH="$${MABAINLIB}"
37
38         echo "Mabain assertion test"
39         COUNT_ASSERT=0
40         EXE='./mb_multi_thread_insert_test_assert'
41
42         cd ${MABAINDIR}
43         for i in `seq 1 1 $TOTAL_RUN`
44         do
45                 OUTPUT="$(/usr/bin/time -f "time: %E" $EXE 2>&1)"
46                 ASSERT="$(echo "$OUTPUT" | grep "Assert")"
47                 if [ -n "$ASSERT" ] ; then
48                         ((++COUNT_ASSERT))
49                 fi
50
51                 rm ./multi_test/* 2> /dev/null
52         done
53
54         cd ../..
55
56         AVG_ASSERT=$(echo "${COUNT_ASSERT} * 100 / ${TOTAL_RUN}" | bc -l | xargs printf "%.1f")
57         echo "Runs: ${TOTAL_RUN} | Assertion rate: ${AVG_ASSERT}%"
58 }
59
60 #function run_all_tests {
61 #       for t in ${TESTS}
62 #       do
63 #               echo "running ${t}"
64 #               (run_${t}_test 2>&1) > "${t}.log"
65 #               run_${t}_test &> "${t}.log"
66 #       done
67 #}
68
69 run_silo_test
70 run_mabain_test