summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDouglas Rumbaugh <dbr4@psu.edu>2025-02-17 13:17:47 -0500
committerDouglas Rumbaugh <dbr4@psu.edu>2025-02-17 13:17:47 -0500
commitf2ee7bef98a10ee52fb4e9e847df0dd173f78d73 (patch)
tree9a7fbb0dcd4efc97eab6f61f03a25d93703b9438
parentf0ac69f9d5179abd385644a520be670a8ca5e942 (diff)
downloaddynamic-extension-f2ee7bef98a10ee52fb4e9e847df0dd173f78d73.tar.gz
Fixed a few benchmark bugs
-rw-r--r--benchmarks/tail-latency/mixed_workload.cpp4
-rw-r--r--include/framework/scheduling/Version.h7
2 files changed, 10 insertions, 1 deletions
diff --git a/benchmarks/tail-latency/mixed_workload.cpp b/benchmarks/tail-latency/mixed_workload.cpp
index d8ea890..531d1fa 100644
--- a/benchmarks/tail-latency/mixed_workload.cpp
+++ b/benchmarks/tail-latency/mixed_workload.cpp
@@ -65,6 +65,10 @@ void operation_thread(Ext *extension, std::vector<QP> *queries,
} else {
for (size_t i = 0; i < 1000; i++) {
auto insert_idx = idx.fetch_add(1);
+ if (insert_idx >= reccnt) {
+ inserts_done.store(true);
+ break;
+ }
TIMER_START();
while (!extension->insert((*records)[insert_idx])) {
diff --git a/include/framework/scheduling/Version.h b/include/framework/scheduling/Version.h
index 4cd73ba..e2acc8f 100644
--- a/include/framework/scheduling/Version.h
+++ b/include/framework/scheduling/Version.h
@@ -82,7 +82,12 @@ public:
bool advance_buffer_head(size_t new_head) {
m_buffer_head = new_head;
- return m_buffer->advance_head(new_head);
+
+ while (!m_buffer->advance_head(new_head)) {
+ usleep(1);
+ }
+
+ return true;
}
void update_shard_version(size_t version) {