未验证 提交 7a759709 编写于 作者: J Jin Hai 提交者: GitHub

Merge pull request #196 from yhmo/0.5.2

#194 Search faild: Table file doesnt exist
......@@ -5,6 +5,7 @@ Please mark all change in change log and use the ticket from JIRA.
# Milvus 0.5.2 (TODO)
## Bug
- \#194 - Search faild: message="Table file doesn't exist"
## Feature
......
......@@ -173,6 +173,7 @@ MySQLMetaImpl::~MySQLMetaImpl() {
Status
MySQLMetaImpl::NextTableId(std::string& table_id) {
std::lock_guard<std::mutex> lock(genid_mutex_); // avoid duplicated id
std::stringstream ss;
SimpleIDGenerator g;
ss << g.GetNextIDNumber();
......@@ -182,6 +183,7 @@ MySQLMetaImpl::NextTableId(std::string& table_id) {
Status
MySQLMetaImpl::NextFileId(std::string& file_id) {
std::lock_guard<std::mutex> lock(genid_mutex_); // avoid duplicated id
std::stringstream ss;
SimpleIDGenerator g;
ss << g.GetNextIDNumber();
......
......@@ -136,6 +136,7 @@ class MySQLMetaImpl : public Meta {
std::shared_ptr<MySQLConnectionPool> mysql_connection_pool_;
bool safe_grab_ = false;
std::mutex genid_mutex_;
// std::mutex connectionMutex_;
}; // DBMetaImpl
......
......@@ -97,6 +97,7 @@ SqliteMetaImpl::~SqliteMetaImpl() {
Status
SqliteMetaImpl::NextTableId(std::string &table_id) {
std::lock_guard<std::mutex> lock(genid_mutex_); // avoid duplicated id
std::stringstream ss;
SimpleIDGenerator g;
ss << g.GetNextIDNumber();
......@@ -106,6 +107,7 @@ SqliteMetaImpl::NextTableId(std::string &table_id) {
Status
SqliteMetaImpl::NextFileId(std::string &file_id) {
std::lock_guard<std::mutex> lock(genid_mutex_); // avoid duplicated id
std::stringstream ss;
SimpleIDGenerator g;
ss << g.GetNextIDNumber();
......
......@@ -132,6 +132,7 @@ class SqliteMetaImpl : public Meta {
private:
const DBMetaOptions options_;
std::mutex meta_mutex_;
std::mutex genid_mutex_;
}; // DBMetaImpl
} // namespace meta
......
......@@ -185,7 +185,7 @@ TEST_F(MySqlMetaTest, ARCHIVE_TEST_DISK) {
options.archive_conf_ = milvus::engine::ArchiveConf("delete", "disk:11");
int mode = milvus::engine::DBOptions::MODE::SINGLE;
auto impl = milvus::engine::meta::MySQLMetaImpl(options, mode);
milvus::engine::meta::MySQLMetaImpl impl(options, mode);
auto table_id = "meta_test_group";
milvus::engine::meta::TableSchema table;
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册