summaryrefslogtreecommitdiffstats
path: root/include/framework/DynamicExtension.h
diff options
context:
space:
mode:
authorDouglas Rumbaugh <dbr4@psu.edu>2025-01-24 17:45:45 -0500
committerDouglas Rumbaugh <dbr4@psu.edu>2025-01-24 17:45:45 -0500
commitf149a2459cfc2007f755d792b3c4e567d30c132f (patch)
tree7534bdde8332d37dd2f291334b8c59f70790d98e /include/framework/DynamicExtension.h
parentcbb19322557671a23b6643ce9079594c7eec716b (diff)
downloaddynamic-extension-f149a2459cfc2007f755d792b3c4e567d30c132f.tar.gz
some progress
Diffstat (limited to 'include/framework/DynamicExtension.h')
-rw-r--r--include/framework/DynamicExtension.h21
1 files changed, 20 insertions, 1 deletions
diff --git a/include/framework/DynamicExtension.h b/include/framework/DynamicExtension.h
index 62aaf88..0331353 100644
--- a/include/framework/DynamicExtension.h
+++ b/include/framework/DynamicExtension.h
@@ -413,8 +413,27 @@ private:
static void reconstruction(void *arguments) {
auto args = (ReconstructionArgs<ShardType, QueryType> *)arguments;
+ auto extension = (DynamicExtension *) args->extension;
+ extension->SetThreadAffinity();
+
+ if (args->priority == ReconstructionPriority::FLUSH) {
+ /* we first construct a shard from the buffer */
+ auto buffview = args->version->get_buffer();
+ auto new_head = buffview.get_tail();
+ auto new_shard = Shard(std::move(buffview));
+
+ /* copy the currently active version's structure */
+ auto structure = extension->get_active_version()->get_structure()->clone();
+
+
+ }
+
- ((DynamicExtension *)args->extension)->SetThreadAffinity();
+ else {
+
+ }
+
+
Structure *vers = args->version->get_mutable_structure();
ReconstructionTask flush_task;