summaryrefslogtreecommitdiff
path: root/test
diff options
context:
space:
mode:
authorZheng Chao <[email protected]>2022-11-10 13:55:44 +0800
committerZheng Chao <[email protected]>2022-11-10 13:55:44 +0800
commiteae1f20f5ab98c3bb7e2ea39a1d554c8e3de826c (patch)
tree6fa0099a6d9280a660723e2b4695d139045544fe /test
parent1f37f8905fe6e560dcf326852133044d02e97060 (diff)
:bug: Concurrent execution and sync operations add duplicated objects to store shard.
Diffstat (limited to 'test')
-rw-r--r--test/swarmkv_perf_test.cpp6
1 files changed, 4 insertions, 2 deletions
diff --git a/test/swarmkv_perf_test.cpp b/test/swarmkv_perf_test.cpp
index 5f0597a..ab2062e 100644
--- a/test/swarmkv_perf_test.cpp
+++ b/test/swarmkv_perf_test.cpp
@@ -282,7 +282,7 @@ TEST(Migration, AddKeyOwner)
}
int g_tconsume_running_flag=0;
-size_t g_token_bucket_number=100*1000;
+size_t g_token_bucket_number=200*1000;
void *background_tconsume_thread(void *thread_arg)
{
@@ -295,9 +295,10 @@ void *background_tconsume_thread(void *thread_arg)
int ret=0;
long long tokens=1;
size_t round=0, got_token_cnt=0;
+ int start=random()%16;
while(g_tconsume_running_flag)
{
- snprintf(key, sizeof(key), "tb-%zu", round%g_token_bucket_number);
+ snprintf(key, sizeof(key), "tb-%zu", (round+start)%g_token_bucket_number);
cmd_exec_arg_expect_integer(arg, tokens);
swarmkv_tconsume(db, key, strlen(key), tokens, cmd_exec_generic_callback, arg);
ret=cmd_exec_arg_wait(arg, PERF_TEST_EXEC_TO_MS);
@@ -364,6 +365,7 @@ TEST(Performance, Sync)
}
swarmkv_reply_free(reply);
}
+ srand(171);
g_tconsume_running_flag=1;
pthread_t threads[NODE_NUMBER][CALL_THREAD_PER_NODE];
for(size_t i=0; i<NODE_NUMBER; i++)