提交 27b0f848 编写于 作者: L Lai Yingchun 提交者: QinZuoyan

bench test: move pegasus bench test from rocksdb to pegasus (#123)

上级 ca0eacc6
......@@ -21,6 +21,7 @@ before_install:
install:
- sudo apt-get -f install
- sudo apt-get -y install libsnappy-dev
- sudo apt-get -y install libgflags-dev
before_script:
- cd rdsn/thirdparty
......
Subproject commit 017fccad8433f176488269844ef4d4e2b99501e9
Subproject commit 411a3da930445f20204f891cd1d23902ebb1504f
......@@ -1388,24 +1388,21 @@ function usage_bench()
{
echo "Options for subcommand 'bench':"
echo " -h|--help print the help info"
echo " -c|--config <path> config file path, default './config-bench.ini'"
echo " -t|--type benchmark type, supporting:"
echo " fillseq_pegasus, fillrandom_pegasus, filluniquerandom_pegasus,"
echo " readrandom_pegasus, deleteseq_pegasus, deleterandom_pegasus"
echo " default is 'fillseq_pegasus,readrandom_pegasus'"
echo " fillseq_pegasus, fillrandom_pegasus, readrandom_pegasus, filluniquerandom_pegasus,"
echo " deleteseq_pegasus,deleterandom_pegasus,multi_set_pegasus,scan_pegasus"
echo " default is fillseq_pegasus,readrandom_pegasus"
echo " -n <num> number of key/value pairs, default 100000"
echo " --cluster <str> cluster meta lists, default '127.0.0.1:34601,127.0.0.1:34602,127.0.0.1:34603'"
echo " --app_name <str> app name, default 'temp'"
echo " --thread_num <num> number of threads, default 1"
echo " --key_size <num> key size, default 16"
echo " --value_size <num> value size, default 100"
echo " --timeout <num> timeout in milliseconds, default 10000"
echo " --timeout <num> timeout in milliseconds, default 1000"
}
function run_bench()
{
CONFIG=${ROOT}/config-bench.ini
CONFIG_SPECIFIED=0
TYPE=fillseq_pegasus,readrandom_pegasus
NUM=100000
CLUSTER=127.0.0.1:34601,127.0.0.1:34602,127.0.0.1:34603
......@@ -1413,7 +1410,7 @@ function run_bench()
THREAD=1
KEY_SIZE=16
VALUE_SIZE=100
TIMEOUT_MS=10000
TIMEOUT_MS=1000
while [[ $# > 0 ]]; do
key="$1"
case $key in
......@@ -1421,11 +1418,6 @@ function run_bench()
usage_bench
exit 0
;;
-c|--config)
CONFIG="$2"
CONFIG_SPECIFIED=1
shift
;;
-t|--type)
TYPE="$2"
shift
......@@ -1468,16 +1460,13 @@ function run_bench()
shift
done
if [ ${CONFIG_SPECIFIED} -eq 0 ]; then
sed "s/@CLUSTER@/$CLUSTER/g" ${ROOT}/src/config-bench.ini >${CONFIG}
fi
cd ${ROOT}
sed -i "s/@CLUSTER@/$CLUSTER/g" ${DSN_ROOT}/bin/pegasus_bench/config.ini
ln -s -f ${DSN_ROOT}/bin/pegasus_bench/pegasus_bench
./pegasus_bench --pegasus_config=${CONFIG} --benchmarks=${TYPE} --pegasus_timeout_ms=${TIMEOUT_MS} \
./pegasus_bench --pegasus_config=${DSN_ROOT}/bin/pegasus_bench/config.ini --benchmarks=${TYPE} --pegasus_timeout_ms=${TIMEOUT_MS} \
--key_size=${KEY_SIZE} --value_size=${VALUE_SIZE} --threads=${THREAD} --num=${NUM} \
--pegasus_cluster_name=mycluster --pegasus_app_name=${APP} --stats_interval=1000 --histogram=1 \
--compression_type=none --compression_ratio=1.0
--compression_ratio=1.0
}
#####################
......
......@@ -31,3 +31,4 @@ add_subdirectory(test/function_test)
add_subdirectory(test/kill_test)
add_subdirectory(test/upgrade_test)
add_subdirectory(test/pressure_test)
add_subdirectory(test/bench_test)
......@@ -125,7 +125,6 @@ if [ "$CLEAR" == "YES" -o "$PART_CLEAR" == "YES" ]
then
echo "Clear $BUILD_DIR ..."
rm -rf $BUILD_DIR
rm -f ../rocksdb/pegasus_bench
fi
# use ccache if possible
......@@ -186,15 +185,3 @@ else
fi
cd ..
rm -f ../rocksdb/pegasus_bench &>/dev/null
make -C ../rocksdb pegasus_bench_$BUILD_TYPE $MAKE_OPTIONS
if [ $? -ne 0 ]
then
echo "ERROR: build pegasus_bench failed"
exit 1
else
mkdir -p $DSN_ROOT/bin/pegasus_bench
mv ../rocksdb/pegasus_bench $DSN_ROOT/bin/pegasus_bench/pegasus_bench
cp ./config-bench.ini $DSN_ROOT/bin/pegasus_bench/config.ini
echo "Build pegasus_bench succeed"
fi
set(MY_PROJ_NAME "pegasus_bench")
project(${MY_PROJ_NAME} C CXX)
# Source files under CURRENT project directory will be automatically included.
# You can manually set MY_PROJ_SRC to include source files under other directories.
set(MY_PROJ_SRC "")
# Search mode for source files under CURRENT project directory?
# "GLOB_RECURSE" for recursive search
# "GLOB" for non-recursive search
set(MY_SRC_SEARCH_MODE "GLOB")
set(MY_PROJ_INC_PATH "../../include" "../../../rocksdb")
set(MY_PROJ_LIB_PATH "../../../rocksdb")
set(MY_PROJ_LIBS
pegasus_client_static
rocksdb
z
bz2
snappy
gflags)
set(MY_BOOST_PACKAGES system filesystem)
set(MY_BINPLACES "config.ini")
dsn_add_executable()
......@@ -66,4 +66,3 @@ worker_count = 10
[uri-resolver.dsn://mycluster]
factory = partition_resolver_simple
arguments = @CLUSTER@
此差异已折叠。
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册