Files
orion_greptime_proto/proto/greptime/v1/meta/cluster.proto
T
fys 855dff1b87 chore: format proto file (#254)
* chore: proto file format using buf

* generate go file
2025-07-16 11:25:57 +08:00

54 lines
1.6 KiB
Protocol Buffer

// Copyright 2023 Greptime Team
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
syntax = "proto3";
package greptime.v1.meta;
import "greptime/v1/meta/common.proto";
import "greptime/v1/meta/store.proto";
option go_package = "github.com/GreptimeTeam/greptime-proto/go/greptime/v1/meta";
// Cluster service is used for communication between meta nodes.
service Cluster {
// Batch get kvs by input keys from leader's in_memory kv store.
rpc BatchGet(BatchGetRequest) returns (BatchGetResponse);
// Range get the kvs from leader's in_memory kv store.
rpc Range(RangeRequest) returns (RangeResponse);
// Returns all the peers of metasrv.
rpc MetasrvPeers(MetasrvPeersRequest) returns (MetasrvPeersResponse);
}
message MetasrvPeersRequest {
RequestHeader header = 1;
}
message MetasrvPeersResponse {
ResponseHeader header = 1;
MetasrvNodeInfo leader = 2;
repeated MetasrvNodeInfo followers = 3;
}
message MetasrvNodeInfo {
Peer peer = 1;
string version = 2;
string git_commit = 3;
// The node start timestamp in milliseconds.
uint64 start_time_ms = 4;
}