#! /bin/bash

cmd1="./rowdump1 -f"
cmd2="./rowdump2 -f"
cmd3="./rowdump1 -s"
cmd4="./rowdump2 -s"
cmd5="./rowdump1 -z"

time="/usr/bin/time -f %U -o time.tmp"

query1="select 10000,200,300000,rpad('x',30,'z') from generate_series(1,5000000)"
query2="select rpad('x',10,'z'),rpad('x',20,'z'),rpad('x',30,'z'),rpad('x',40,'z'),rpad('x',50,'z'),rpad('x',60,'z') from generate_series(1,3000000)"
query3="select `seq -s, 1 100` from generate_series(1,800000)"
query4="select 1000,rpad('x', 400, 'z'),rpad('x', 4000, 'z') from generate_series(1,100000)"

for qn in 1 2 3 4; do
  qvar=query${qn}
  query="${!qvar}"
  printf "QUERY: ${query}\n"
  for n in 1 2 3 4 5; do
    cvar=cmd${n}
    cmd="${!cvar}"
    printf "${cmd}:  "
    ${time} ${cmd} -c "${query}" > /dev/null
    t1=`cat time.tmp`
    printf "%5s  " "$t1"
    ${time} ${cmd} -c "${query}" > /dev/null
    t2=`cat time.tmp`
    printf "%5s  " "$t2"
    ${time} ${cmd} -c "${query}" > /dev/null
    t3=`cat time.tmp`
    printf "%5s  " "$t3"
    avg=`awk "BEGIN { print ($t1 + $t2 + $t3) / 3 } "`
    printf "avg: %5.2f\n" "$avg"
  done
done

