diff options
| author | Douglas Rumbaugh <dbr4@psu.edu> | 2025-01-24 17:45:45 -0500 |
|---|---|---|
| committer | Douglas Rumbaugh <dbr4@psu.edu> | 2025-01-24 17:45:45 -0500 |
| commit | f149a2459cfc2007f755d792b3c4e567d30c132f (patch) | |
| tree | 7534bdde8332d37dd2f291334b8c59f70790d98e /include/framework/DynamicExtension.h | |
| parent | cbb19322557671a23b6643ce9079594c7eec716b (diff) | |
| download | dynamic-extension-f149a2459cfc2007f755d792b3c4e567d30c132f.tar.gz | |
some progress
Diffstat (limited to 'include/framework/DynamicExtension.h')
| -rw-r--r-- | include/framework/DynamicExtension.h | 21 |
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; |