summaryrefslogtreecommitdiffstats
path: root/include/framework/DynamicExtension.h
diff options
context:
space:
mode:
authorDouglas Rumbaugh <dbr4@psu.edu>2023-09-18 16:37:30 -0400
committerDouglas Rumbaugh <dbr4@psu.edu>2023-09-18 16:37:30 -0400
commit6e30f576ca9d11d1901f4877315e97f84d15b1e1 (patch)
treeaec980d3e8b0c655a1c38c7c06b314cf10db4f94 /include/framework/DynamicExtension.h
parentabc8605a51537fc7b35bb0d9b1da6c724c5c6973 (diff)
downloaddynamic-extension-6e30f576ca9d11d1901f4877315e97f84d15b1e1.tar.gz
The scheduler now spawns a seperate merge thread
Merges are now executed from a seperate thread within the scheduler that wakes up via condition variables when new merge tasks are scheduled. In addition, tombstone limits are now enforced by the scheduler, with new merges being scheduled as needed. There are still a few tests failing, notably the zero tombstones in the last run invarient is not holding under tiering with tombstones. Need to look into that yet.
Diffstat (limited to 'include/framework/DynamicExtension.h')
-rw-r--r--include/framework/DynamicExtension.h5
1 files changed, 5 insertions, 0 deletions
diff --git a/include/framework/DynamicExtension.h b/include/framework/DynamicExtension.h
index 08e2243..6965965 100644
--- a/include/framework/DynamicExtension.h
+++ b/include/framework/DynamicExtension.h
@@ -301,5 +301,10 @@ private:
return processed_records;
}
};
+
+template <RecordInterface R, ShardInterface S, QueryInterface Q, LayoutPolicy L=LayoutPolicy::TEIRING, DeletePolicy D=DeletePolicy::TAGGING>
+static void de_merge_callback(DynamicExtension<R, S, Q, L, D> extension, ExtensionStructure<R, S, Q> new_version) {
+
+}
}