diff --git a/cpp/src/db/DBImpl.cpp b/cpp/src/db/DBImpl.cpp index 0c35c355d5927d214a605525115c209134f2f329..e8deac90916a6f4725c968258d41c14445eb7c26 100644 --- a/cpp/src/db/DBImpl.cpp +++ b/cpp/src/db/DBImpl.cpp @@ -19,7 +19,7 @@ DBImpl::DBImpl(const Options& options_, const std::string& name_) _options(options_), _bg_compaction_scheduled(false), _shutting_down(false), - _pMeta(new meta::DBMetaImpl(*(_options.pMetaOptions))), + _pMeta(new meta::DBMetaImpl(_options.meta)), _pMemMgr(new MemManager(_pMeta)) { start_timer_task(options_.memory_sync_interval); } diff --git a/cpp/src/db/DBMetaImpl.h b/cpp/src/db/DBMetaImpl.h index cd84d86db5e090941bb9a01cc216a36ab1284090..4bf159cfd4b29c329396534297c20ead25df2a6c 100644 --- a/cpp/src/db/DBMetaImpl.h +++ b/cpp/src/db/DBMetaImpl.h @@ -45,7 +45,7 @@ private: Status initialize(); - const DBMetaOptions& _options; + const DBMetaOptions _options; }; // DBMetaImpl diff --git a/cpp/src/db/Options.cpp b/cpp/src/db/Options.cpp index 024f2aba5d7ef9b4555dc1882776bff581f6d27b..2757db1c640ea0e4f7fb9c7700465e3f4daad4da 100644 --- a/cpp/src/db/Options.cpp +++ b/cpp/src/db/Options.cpp @@ -1,5 +1,6 @@ #include "Options.h" #include "Env.h" +#include "DBMetaImpl.h" namespace zilliz { namespace vecwise { diff --git a/cpp/src/db/Options.h b/cpp/src/db/Options.h index 807bae38b256830a1f8a8e9cb132b849d76a562d..cd26f058509f8395a439c8753947618c6cc3401b 100644 --- a/cpp/src/db/Options.h +++ b/cpp/src/db/Options.h @@ -7,16 +7,25 @@ namespace zilliz { namespace vecwise { namespace engine { -class MetaOptions; class Env; +struct MetaOptions { +}; // MetaOptions + + +struct DBMetaOptions : public MetaOptions { + std::string backend_uri; + std::string dbname; +}; // DBMetaOptions + + struct Options { Options(); uint16_t memory_sync_interval = 10; uint16_t raw_file_merge_trigger_number = 100; size_t raw_to_index_trigger_size = 100000; - std::shared_ptr pMetaOptions; Env* env; + DBMetaOptions meta; }; // Options @@ -26,16 +35,6 @@ struct GroupOptions { }; // GroupOptions -struct MetaOptions { -}; // MetaOptions - - -struct DBMetaOptions : public MetaOptions { - std::string backend_uri; - std::string dbname; -}; // DBMetaOptions - - } // namespace engine } // namespace vecwise } // namespace zilliz