25
25
if [ -z " ${TRANSACTIONS_PER_REQUEST_MAX} " ]; then
26
26
TRANSACTIONS_PER_REQUEST_MAX=100
27
27
fi
28
- TRANSACTIONS=$( cat $TRANSACTIONS_FILE | tr " \n" " " )
29
- TRANSACTIONS_AVAILABLE=$( echo $TRANSACTIONS | wc -w)
28
+ TRANSACTIONS=$( tr " \n" " " < " $TRANSACTIONS_FILE " )
29
+ TRANSACTIONS_AVAILABLE=$( echo " $TRANSACTIONS " | wc -w | xargs )
30
30
TRANSACTIONS_PER_REQUEST_MAX=$(( TRANSACTIONS_AVAILABLE < TRANSACTIONS_PER_REQUEST_MAX ? TRANSACTIONS_AVAILABLE : TRANSACTIONS_PER_REQUEST_MAX ))
31
31
32
32
if [ -z " ${TRANSACTIONS_PER_REQUEST_STEP} " ]; then
@@ -58,7 +58,7 @@ if [ -z "${OUT_FILE}" ]; then
58
58
rm -f $OUT_FILE
59
59
echo " Using the default OUT_FILE: $OUT_FILE "
60
60
fi
61
- mkdir -p $( dirname " $OUT_FILE " )
61
+ mkdir -p " $( dirname " $OUT_FILE " ) "
62
62
63
63
# Run stress test
64
64
RUN_STRESS_TEST () {
@@ -75,14 +75,14 @@ RUN_STRESS_TEST() {
75
75
TRANSACTIONS_FILE=$8
76
76
TMP_FILE=" test.tmp"
77
77
echo " >> [#$INDEX_RUN /$TOTAL_RUN ] Running stress test with $AB_TOTAL_REQUESTS requests with $TRANSACTIONS_PER_REQUEST transactions per request and $AB_CONCURRENCY concurrency"
78
- TRANSACTIONS_LIST=$( head -n $TRANSACTIONS_PER_REQUEST $TRANSACTIONS_FILE | tr " \n" " ," )
78
+ TRANSACTIONS_LIST=$( head -n $TRANSACTIONS_PER_REQUEST " $TRANSACTIONS_FILE " | tr " \n" " ," )
79
79
AGGREGATOR_PROVER_URL=" $AGGREGATOR_ENDPOINT /proof/cardano-transaction?transaction_hashes=$TRANSACTIONS_LIST "
80
- if $( ab -n $AB_TOTAL_REQUESTS -c $AB_CONCURRENCY -s $AB_TIMEOUT $AGGREGATOR_PROVER_URL > $TMP_FILE ) ; then
80
+ if ab -n $AB_TOTAL_REQUESTS -c $AB_CONCURRENCY -s " $AB_TIMEOUT " " $AGGREGATOR_PROVER_URL " > $TMP_FILE ; then
81
81
REQUESTS_PER_SECOND=$( cat $TMP_FILE | awk ' /Requests per second:/ {print $4}' )
82
82
if [[ $INDEX_RUN -eq 1 ]] ; then
83
- echo " total_requests,concurrency,transactions/request,requests/s" >> $OUT_FILE
83
+ echo " total_requests,concurrency,transactions/request,requests/s" >> " $OUT_FILE "
84
84
fi
85
- echo " $AB_TOTAL_REQUESTS ,$AB_CONCURRENCY ,$TRANSACTIONS_PER_REQUEST ,$REQUESTS_PER_SECOND " >> $OUT_FILE
85
+ echo " $AB_TOTAL_REQUESTS ,$AB_CONCURRENCY ,$TRANSACTIONS_PER_REQUEST ,$REQUESTS_PER_SECOND " >> " $OUT_FILE "
86
86
echo " >>>> Success ($REQUESTS_PER_SECOND requests/s)"
87
87
else
88
88
echo " >>>> Failure"
@@ -93,11 +93,11 @@ RUN_STRESS_TEST() {
93
93
}
94
94
95
95
# Run aggregator benchmark over a range of transactions and concurrency levels
96
- TRANSACTIONS_PER_REQUEST_RANGE=$( seq -s ' ' $TRANSACTIONS_PER_REQUEST_MIN $TRANSACTIONS_PER_REQUEST_STEP $TRANSACTIONS_PER_REQUEST_MAX )
97
- AB_CONCURRENCY_RANGE=$( seq -s ' ' $AB_CONCURRENCY_MIN $AB_CONCURRENCY_STEP $AB_CONCURRENCY_MAX )
98
- TRANSACTIONS_PER_REQUEST_RANGE_LENGTH=$(( $(echo $TRANSACTIONS_PER_REQUEST_RANGE | grep - o " " | wc - l) + 1 ))
99
- AB_CONCURRENCY_RANGE_LENGTH=$(( $(echo $AB_CONCURRENCY_RANGE | grep - o " " | wc - l) + 1 ))
100
- TOTAL_RUN=$(( $ TRANSACTIONS_PER_REQUEST_RANGE_LENGTH * $ AB_CONCURRENCY_RANGE_LENGTH ))
96
+ TRANSACTIONS_PER_REQUEST_RANGE=$( seq -s ' ' " $TRANSACTIONS_PER_REQUEST_MIN " " $TRANSACTIONS_PER_REQUEST_STEP " $TRANSACTIONS_PER_REQUEST_MAX )
97
+ AB_CONCURRENCY_RANGE=$( seq -s ' ' " $AB_CONCURRENCY_MIN " " $AB_CONCURRENCY_STEP " " $AB_CONCURRENCY_MAX " )
98
+ TRANSACTIONS_PER_REQUEST_RANGE_LENGTH=$(( $(echo " $TRANSACTIONS_PER_REQUEST_RANGE " | grep - o " " | wc - l) + 1 ))
99
+ AB_CONCURRENCY_RANGE_LENGTH=$(( $(echo " $AB_CONCURRENCY_RANGE " | grep - o " " | wc - l) + 1 ))
100
+ TOTAL_RUN=$(( TRANSACTIONS_PER_REQUEST_RANGE_LENGTH * AB_CONCURRENCY_RANGE_LENGTH ))
101
101
echo " "
102
102
echo " Run aggregator prover benchmark with:"
103
103
echo " >> Aggregator endpoint: [$AGGREGATOR_ENDPOINT ]"
@@ -113,13 +113,13 @@ echo ""
113
113
INDEX_RUN=1
114
114
for TRANSACTIONS_PER_REQUEST in $TRANSACTIONS_PER_REQUEST_RANGE ; do
115
115
for AB_CONCURRENCY in $AB_CONCURRENCY_RANGE ; do
116
- RUN_STRESS_TEST $AGGREGATOR_ENDPOINT $TRANSACTIONS_PER_REQUEST $AB_TOTAL_REQUESTS $AB_CONCURRENCY $OUT_FILE $INDEX_RUN $TOTAL_RUN $TRANSACTIONS_FILE
117
- INDEX_RUN=$(( ${ INDEX_RUN} + 1 ))
116
+ RUN_STRESS_TEST " $AGGREGATOR_ENDPOINT " " $TRANSACTIONS_PER_REQUEST " " $AB_TOTAL_REQUESTS " " $AB_CONCURRENCY " " $OUT_FILE " $INDEX_RUN " $TOTAL_RUN " " $TRANSACTIONS_FILE "
117
+ INDEX_RUN=$(( INDEX_RUN + 1 ))
118
118
done
119
119
done
120
120
121
121
echo " >> Benchmark completed:"
122
122
echo " "
123
- cat $OUT_FILE
123
+ cat " $OUT_FILE "
124
124
125
125
0 commit comments