-
Notifications
You must be signed in to change notification settings - Fork 1.2k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
MetaServer support general kv storage #243
MetaServer support general kv storage #243
Conversation
Conflicts: src/interface/meta.thrift
Unit testing passed. |
src/meta/processors/GetProcessor.cpp
Outdated
namespace meta { | ||
|
||
void GetProcessor::process(const cpp2::GetReq& req) { | ||
guard_ = std::make_unique<std::lock_guard<std::mutex>>( |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I notice that you and @dangleptr used to use lock_guard
like this, i.e. allocate on heap instead of on stack. Could you explain on this?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
some async processor would get value after the method return.
when lock_guard
allocated on stack, it's a local variable and the scope is in the method.
so we think it should allocated on the heap :)
src/interface/meta.thrift
Outdated
} | ||
|
||
struct MultiPutReq { | ||
1: list<Pair> pairs |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
For put/get, we should indicate the tableName in request.
The tableName should be kept inside key, and it should has no conflicts with system-level tables(space, hosts, edges, tags etc.)
Unit testing failed. |
Unit testing failed. |
Unit testing passed. |
Unit testing failed. |
Conflicts: src/meta/CMakeLists.txt src/meta/MetaServiceHandler.cpp src/meta/MetaServiceHandler.h src/meta/test/ProcessorTest.cpp
Unit testing passed. |
Unit testing failed. |
1 similar comment
Unit testing failed. |
Unit testing passed. |
1 similar comment
Unit testing passed. |
Conflicts: src/kvstore/NebulaStore.cpp src/kvstore/RocksEngine.cpp src/meta/MetaUtils.cpp
Unit testing passed. |
1 similar comment
Unit testing passed. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM
Unit testing failed. |
1 similar comment
Unit testing failed. |
Unit testing passed. |
Unit testing passed. |
5 similar comments
Unit testing passed. |
Unit testing passed. |
Unit testing passed. |
Unit testing passed. |
Unit testing passed. |
Unit testing passed. |
1 similar comment
Unit testing passed. |
@@ -24,12 +24,12 @@ void RemoveTagProcessor::process(const cpp2::RemoveTagReq& req) { | |||
} | |||
resp_.set_code(cpp2::ErrorCode::SUCCEEDED); | |||
LOG(INFO) << "Remove Tag " << req.get_tag_name(); | |||
doRemove(std::move(ret.value())); | |||
doRemoves(std::move(ret.value())); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
doMultiRemove
Unit testing passed. |
Conflicts: src/meta/MetaServiceHandler.cpp src/meta/client/MetaClient.cpp src/meta/processors/BaseProcessor.h src/meta/processors/BaseProcessor.inl src/meta/processors/CreateSpaceProcessor.cpp src/meta/test/MetaClientTest.cpp
Unit testing passed. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Well done
Unit testing passed. |
* meta server general KV storage * enhance meta kv storage * address dangleptr's comment
* meta server general KV storage * enhance meta kv storage * address dangleptr's comment
Co-authored-by: Yichen Wang <[email protected]>
No description provided.