@@ -780,8 +780,8 @@ Status MetaClient::handleResponse(const RESP& resp) {
780
780
return Status::Error (" Part not existed!" );
781
781
case nebula::cpp2::ErrorCode::E_USER_NOT_FOUND:
782
782
return Status::Error (" User not existed!" );
783
- case nebula::cpp2::ErrorCode::E_GROUP_NOT_FOUND :
784
- return Status::Error (" Group not existed!" );
783
+ case nebula::cpp2::ErrorCode::E_MACHINE_NOT_FOUND :
784
+ return Status::Error (" Machine not existed!" );
785
785
case nebula::cpp2::ErrorCode::E_ZONE_NOT_FOUND:
786
786
return Status::Error (" Zone not existed!" );
787
787
case nebula::cpp2::ErrorCode::E_KEY_NOT_FOUND:
@@ -3036,17 +3036,65 @@ void MetaClient::loadLeader(const std::vector<cpp2::HostItem>& hostItems,
3036
3036
}
3037
3037
}
3038
3038
3039
- folly::Future<StatusOr<bool >> MetaClient::addZone (std::string zoneName,
3040
- std::vector<HostAddr> nodes) {
3041
- cpp2::AddZoneReq req;
3042
- req.set_zone_name (std::move (zoneName));
3043
- req.set_nodes (std::move (nodes));
3039
+ folly::Future<StatusOr<bool >> MetaClient::addHosts (std::vector<HostAddr> hosts) {
3040
+ cpp2::AddHostsReq req;
3041
+ req.set_hosts (std::move (hosts));
3042
+
3043
+ folly::Promise<StatusOr<bool >> promise;
3044
+ auto future = promise.getFuture ();
3045
+ getResponse (
3046
+ std::move (req),
3047
+ [](auto client, auto request) { return client->future_addHosts (request); },
3048
+ [](cpp2::ExecResp&& resp) -> bool {
3049
+ return resp.get_code () == nebula::cpp2::ErrorCode::SUCCEEDED;
3050
+ },
3051
+ std::move (promise));
3052
+ return future;
3053
+ }
3054
+
3055
+ folly::Future<StatusOr<bool >> MetaClient::dropHosts (std::vector<HostAddr> hosts) {
3056
+ cpp2::DropHostsReq req;
3057
+ req.set_hosts (std::move (hosts));
3058
+
3059
+ folly::Promise<StatusOr<bool >> promise;
3060
+ auto future = promise.getFuture ();
3061
+ getResponse (
3062
+ std::move (req),
3063
+ [](auto client, auto request) { return client->future_dropHosts (request); },
3064
+ [](cpp2::ExecResp&& resp) -> bool {
3065
+ return resp.get_code () == nebula::cpp2::ErrorCode::SUCCEEDED;
3066
+ },
3067
+ std::move (promise));
3068
+ return future;
3069
+ }
3070
+
3071
+ folly::Future<StatusOr<bool >> MetaClient::mergeZone (std::vector<std::string> zones,
3072
+ std::string zoneName) {
3073
+ cpp2::MergeZoneReq req;
3074
+ req.set_zone_name (zoneName);
3075
+ req.set_zones (zones);
3076
+ folly::Promise<StatusOr<bool >> promise;
3077
+ auto future = promise.getFuture ();
3078
+ getResponse (
3079
+ std::move (req),
3080
+ [](auto client, auto request) { return client->future_mergeZone (request); },
3081
+ [](cpp2::ExecResp&& resp) -> bool {
3082
+ return resp.get_code () == nebula::cpp2::ErrorCode::SUCCEEDED;
3083
+ },
3084
+ std::move (promise));
3085
+ return future;
3086
+ }
3044
3087
3088
+ folly::Future<StatusOr<bool >> MetaClient::renameZone (std::string originalZoneName,
3089
+ std::string zoneName) {
3090
+ cpp2::RenameZoneReq req;
3091
+ req.set_original_zone_name (originalZoneName);
3092
+ req.set_zone_name (zoneName);
3045
3093
folly::Promise<StatusOr<bool >> promise;
3046
3094
auto future = promise.getFuture ();
3047
3095
getResponse (
3048
3096
std::move (req),
3049
- [](auto client, auto request) { return client->future_addZone (request); },
3097
+ [](auto client, auto request) { return client->future_renameZone (request); },
3050
3098
[](cpp2::ExecResp&& resp) -> bool {
3051
3099
return resp.get_code () == nebula::cpp2::ErrorCode::SUCCEEDED;
3052
3100
},
@@ -3070,33 +3118,35 @@ folly::Future<StatusOr<bool>> MetaClient::dropZone(std::string zoneName) {
3070
3118
return future;
3071
3119
}
3072
3120
3073
- folly::Future<StatusOr<bool >> MetaClient::addHostIntoZone (HostAddr node, std::string zoneName) {
3074
- cpp2::AddHostIntoZoneReq req;
3075
- req. set_node (node) ;
3121
+ folly::Future<StatusOr<bool >> MetaClient::splitZone (
3122
+ std::string zoneName, std::unordered_map<std::string, std::vector<HostAddr>>) {
3123
+ cpp2::SplitZoneReq req;
3076
3124
req.set_zone_name (zoneName);
3077
-
3078
3125
folly::Promise<StatusOr<bool >> promise;
3079
3126
auto future = promise.getFuture ();
3080
3127
getResponse (
3081
3128
std::move (req),
3082
- [](auto client, auto request) { return client->future_addHostIntoZone (request); },
3129
+ [](auto client, auto request) { return client->future_splitZone (request); },
3083
3130
[](cpp2::ExecResp&& resp) -> bool {
3084
3131
return resp.get_code () == nebula::cpp2::ErrorCode::SUCCEEDED;
3085
3132
},
3086
3133
std::move (promise));
3087
3134
return future;
3088
3135
}
3089
3136
3090
- folly::Future<StatusOr<bool >> MetaClient::dropHostFromZone (HostAddr node, std::string zoneName) {
3091
- cpp2::DropHostFromZoneReq req;
3092
- req.set_node (node);
3137
+ folly::Future<StatusOr<bool >> MetaClient::addHostsIntoZone (std::vector<HostAddr> hosts,
3138
+ std::string zoneName,
3139
+ bool isNew) {
3140
+ cpp2::AddHostsIntoZoneReq req;
3141
+ req.set_hosts (hosts);
3093
3142
req.set_zone_name (zoneName);
3143
+ req.set_is_new (isNew);
3094
3144
3095
3145
folly::Promise<StatusOr<bool >> promise;
3096
3146
auto future = promise.getFuture ();
3097
3147
getResponse (
3098
3148
std::move (req),
3099
- [](auto client, auto request) { return client->future_dropHostFromZone (request); },
3149
+ [](auto client, auto request) { return client->future_addHostsIntoZone (request); },
3100
3150
[](cpp2::ExecResp&& resp) -> bool {
3101
3151
return resp.get_code () == nebula::cpp2::ErrorCode::SUCCEEDED;
3102
3152
},
0 commit comments