diff --git a/cpp/src/db/DBMetaImpl.cpp b/cpp/src/db/DBMetaImpl.cpp index 7a0bef88a3fda5847c5dd3af3c0034282ae6c75c..126a64c8af0a7643cf828ee4414a9b7aeddb74d3 100644 --- a/cpp/src/db/DBMetaImpl.cpp +++ b/cpp/src/db/DBMetaImpl.cpp @@ -76,6 +76,7 @@ Status DBMetaImpl::initialize() { ConnectorPtr = std::make_unique(StoragePrototype(_options.path+"/meta.sqlite")); ConnectorPtr->sync_schema(); + ConnectorPtr->open_forever(); // thread safe option cleanup(); @@ -93,8 +94,6 @@ Status DBMetaImpl::add_group(GroupSchema& group_info) { group_info.id = -1; { - std::unique_lock lk(mutex_); - try { auto id = ConnectorPtr->insert(group_info); group_info.id = id; @@ -114,7 +113,6 @@ Status DBMetaImpl::add_group(GroupSchema& group_info) { } Status DBMetaImpl::get_group(GroupSchema& group_info) { - std::unique_lock lk(mutex_); return get_group_no_lock(group_info); } @@ -139,7 +137,6 @@ Status DBMetaImpl::get_group_no_lock(GroupSchema& group_info) { } Status DBMetaImpl::has_group(const std::string& group_id, bool& has_or_not) { - std::unique_lock lk(mutex_); auto groups = ConnectorPtr->select(columns(&GroupSchema::id), where(c(&GroupSchema::group_id) == group_id)); assert(groups.size() <= 1); @@ -171,8 +168,6 @@ Status DBMetaImpl::add_group_file(GroupFileSchema& group_file) { GetGroupFilePath(group_file); { - std::unique_lock lk(mutex_); - try { auto id = ConnectorPtr->insert(group_file); group_file.id = id; @@ -194,7 +189,6 @@ Status DBMetaImpl::add_group_file(GroupFileSchema& group_file) { Status DBMetaImpl::files_to_index(GroupFilesSchema& files) { files.clear(); - std::unique_lock lk(mutex_); auto selected = ConnectorPtr->select(columns(&GroupFileSchema::id, &GroupFileSchema::group_id, &GroupFileSchema::file_id, @@ -235,7 +229,6 @@ Status DBMetaImpl::files_to_merge(const std::string& group_id, DatePartionedGroupFilesSchema& files) { files.clear(); - std::unique_lock lk(mutex_); auto selected = ConnectorPtr->select(columns(&GroupFileSchema::id, &GroupFileSchema::group_id, &GroupFileSchema::file_id, @@ -294,7 +287,6 @@ Status DBMetaImpl::get_group_files(const std::string& group_id_, } Status DBMetaImpl::update_group_file(const GroupFileSchema& group_file) { - std::unique_lock lk(mutex_); auto commited = ConnectorPtr->transaction([&] () mutable { ConnectorPtr->update(group_file); return true; @@ -306,7 +298,6 @@ Status DBMetaImpl::update_group_file(const GroupFileSchema& group_file) { } Status DBMetaImpl::update_files(const GroupFilesSchema& files) { - std::unique_lock lk(mutex_); auto commited = ConnectorPtr->transaction([&] () mutable { for (auto& file : files) { ConnectorPtr->update(file); @@ -320,7 +311,6 @@ Status DBMetaImpl::update_files(const GroupFilesSchema& files) { } Status DBMetaImpl::cleanup() { - std::unique_lock lk(mutex_); auto selected = ConnectorPtr->select(columns(&GroupFileSchema::id, &GroupFileSchema::group_id, &GroupFileSchema::file_id, diff --git a/cpp/src/db/DBMetaImpl.h b/cpp/src/db/DBMetaImpl.h index 5fa10e986e8c94d68766b77acfff4a449cd792a0..86d1cd56bac12fa8839fe52984d7d1dca2479f7f 100644 --- a/cpp/src/db/DBMetaImpl.h +++ b/cpp/src/db/DBMetaImpl.h @@ -1,8 +1,6 @@ #ifndef VECENGINE_DB_META_IMPL_H_ #define VECENGINE_DB_META_IMPL_H_ -#include -#include #include "Meta.h" #include "Options.h" @@ -55,8 +53,6 @@ private: Status initialize(); const DBMetaOptions _options; - std::mutex mutex_; - }; // DBMetaImpl } // namespace meta