#!/bin/bash

# This workload uses a customized stress client, which runs and measures canonical queries and rgets seperately.

if [ $DATABASE == "rethinkdb" ]; then
    ./dbench                                                                                      \
        -d "$BENCH_DIR/bench_output/Canonical_plus_small_rgets" -H $SERVER_HOSTS    \
        {server}rethinkdb:"--active-data-extents 1 -m 32768 $SSD_DRIVES --unsaved-data-limit 32768"                                            \
        {client}stress[$RGET_STRESS_CLIENT]:"-w special_rget_workload"\
        iostat:1 vmstat:1 rdbstat:1
        
    mkdir -p "$BENCH_DIR/bench_output/Canonical_plus_small_rgets_canonical_only/1/client"
    cp "$BENCH_DIR/bench_output/Canonical_plus_small_rgets/1/client/qps.txt.canonical" "$BENCH_DIR/bench_output/Canonical_plus_small_rgets_canonical_only/1/client/qps.txt"
    mkdir -p "$BENCH_DIR/bench_output/Canonical_plus_small_rgets_rgets_only/1/client"
    cp "$BENCH_DIR/bench_output/Canonical_plus_small_rgets/1/client/qps.txt.rget" "$BENCH_DIR/bench_output/Canonical_plus_small_rgets_rgets_only/1/client/qps.txt"
elif [ $DATABASE == "mysql" ]; then
    ./dbench                                                                                   \
        -d "$BENCH_DIR/bench_output/Canonical_plus_small_rgets" -H $SERVER_HOSTS             \
        {server}mysql:"$MYSQL_COMMON_FLAGS $MYSQL_BUFFER_FLAGS $MYSQL_DURABILITY_FLAGS $MYSQL_SSD_FLAGS"              \
        {client}mysqlstress[$RGET_STRESS_CLIENT]:"-w special_rget_workload" \
        iostat:1 vmstat:1
        
    mkdir -p "$BENCH_DIR/bench_output/Canonical_plus_small_rgets_canonical_only/1/client"
    cp "$BENCH_DIR/bench_output/Canonical_plus_small_rgets/1/client/qps.txt.canonical" "$BENCH_DIR/bench_output/Canonical_plus_small_rgets_canonical_only/1/client/qps.txt"
    mkdir -p "$BENCH_DIR/bench_output/Canonical_plus_small_rgets_rgets_only/1/client"
    cp "$BENCH_DIR/bench_output/Canonical_plus_small_rgets/1/client/qps.txt.rget" "$BENCH_DIR/bench_output/Canonical_plus_small_rgets_rgets_only/1/client/qps.txt"
else
    echo "No workload configuration for $DATABASE"
fi

