Files
rustfs/crates/protos/src/node.proto
T

1103 lines
29 KiB
Protocol Buffer

// Copyright 2024 RustFS 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 node_service;
/* -------------------------------------------------------------------- */
message Error {
uint32 code = 1;
string error_info = 2;
}
message PingRequest {
uint64 version = 1;
bytes body = 2;
}
message PingResponse {
uint64 version = 1;
bytes body = 2;
}
message HealBucketRequest {
string bucket = 1;
string options = 2;
}
message HealBucketResponse {
bool success = 1;
optional Error error = 2;
}
message ListBucketRequest {
string options = 1;
}
message ListBucketResponse {
bool success = 1;
repeated string bucket_infos = 2;
optional Error error = 3;
}
message MakeBucketRequest {
string name = 1;
string options = 2;
}
message MakeBucketResponse {
bool success = 1;
optional Error error = 2;
}
message GetBucketInfoRequest {
string bucket = 1;
string options = 2;
}
message GetBucketInfoResponse {
bool success = 1;
string bucket_info = 2;
optional Error error = 3;
}
message DeleteBucketRequest {
string bucket = 1;
string options = 2;
}
message DeleteBucketResponse {
bool success = 1;
optional Error error = 2;
}
message ReadAllRequest {
string disk = 1; // indicate which one in the disks
string volume = 2;
string path = 3;
}
message ReadAllResponse {
bool success = 1;
bytes data = 2;
optional Error error = 3;
}
message WriteAllRequest {
string disk = 1; // indicate which one in the disks
string volume = 2;
string path = 3;
bytes data = 4;
}
message WriteAllResponse {
bool success = 1;
optional Error error = 2;
}
message DeleteRequest {
string disk = 1; // indicate which one in the disks
string volume = 2;
string path = 3;
string options = 4;
}
message DeleteResponse {
bool success = 1;
optional Error error = 2;
}
message VerifyFileRequest {
string disk = 1; // indicate which one in the disks
string volume = 2;
string path = 3;
string file_info = 4;
}
message VerifyFileResponse {
bool success = 1;
string check_parts_resp = 2;
optional Error error = 3;
}
message ReadPartsRequest {
string disk = 1;
string bucket = 2;
repeated string paths = 3;
}
message ReadPartsResponse {
bool success = 1;
bytes object_part_infos = 2;
optional Error error = 3;
}
message CheckPartsRequest {
string disk = 1; // indicate which one in the disks
string volume = 2;
string path = 3;
string file_info = 4;
}
message CheckPartsResponse {
bool success = 1;
string check_parts_resp = 2;
optional Error error = 3;
}
message RenamePartRequest {
string disk = 1;
string src_volume = 2;
string src_path = 3;
string dst_volume = 4;
string dst_path = 5;
bytes meta = 6;
}
message RenamePartResponse {
bool success = 1;
optional Error error = 2;
}
message PreparePartTransactionRequest {
string disk = 1;
string src_volume = 2;
string src_path = 3;
string dst_volume = 4;
string dst_path = 5;
bytes meta = 6;
}
message PreparePartTransactionResponse {
bool success = 1;
optional Error error = 2;
}
message SettlePartTransactionRequest {
string disk = 1;
string volume = 2;
string path = 3;
bool rollback = 4;
}
message SettlePartTransactionResponse {
bool success = 1;
optional Error error = 2;
}
message RenameFileRequest {
string disk = 1;
string src_volume = 2;
string src_path = 3;
string dst_volume = 4;
string dst_path = 5;
}
message RenameFileResponse {
bool success = 1;
optional Error error = 2;
}
message WriteRequest {
string disk = 1; // indicate which one in the disks
string volume = 2;
string path = 3;
bool is_append = 4;
bytes data = 5;
}
message WriteResponse {
bool success = 1;
optional Error error = 2;
}
// message AppendRequest {
// string disk = 1; // indicate which one in the disks
// string volume = 2;
// string path = 3;
// bytes data = 4;
// }
//
// message AppendResponse {
// bool success = 1;
// optional Error error = 2;
// }
message ReadAtRequest {
string disk = 1; // indicate which one in the disks
string volume = 2;
string path = 3;
int64 offset = 4;
int64 length = 5;
}
message ReadAtResponse {
bool success = 1;
bytes data = 2;
int64 read_size = 3;
optional Error error = 4;
}
message ListDirRequest {
string disk = 1; // indicate which one in the disks
string volume = 2;
string dir_path = 3;
int32 count = 4;
}
message ListDirResponse {
bool success = 1;
repeated string volumes = 2;
optional Error error = 3;
}
message WalkDirRequest {
string disk = 1; // indicate which one in the disks
bytes walk_dir_options = 2;
}
message WalkDirResponse {
bool success = 1;
string meta_cache_entry = 2;
optional string error_info = 3;
}
message RenameDataRequest {
string disk = 1; // indicate which one in the disks
string src_volume = 2;
string src_path = 3;
string file_info = 4;
string dst_volume = 5;
string dst_path = 6;
bytes file_info_bin = 7;
}
message RenameDataResponse {
bool success = 1;
string rename_data_resp = 2;
optional Error error = 3;
bytes rename_data_resp_bin = 4;
}
message MakeVolumesRequest {
string disk = 1; // indicate which one in the disks
repeated string volumes = 2;
}
message MakeVolumesResponse {
bool success = 1;
optional Error error = 2;
}
message MakeVolumeRequest {
string disk = 1; // indicate which one in the disks
string volume = 2;
}
message MakeVolumeResponse {
bool success = 1;
optional Error error = 2;
}
message ListVolumesRequest {
string disk = 1; // indicate which one in the disks
}
message ListVolumesResponse {
bool success = 1;
repeated string volume_infos = 2;
optional Error error = 3;
}
message StatVolumeRequest {
string disk = 1; // indicate which one in the disks
string volume = 2;
}
message StatVolumeResponse {
bool success = 1;
string volume_info = 2;
optional Error error = 3;
}
message DeletePathsRequest {
string disk = 1;
string volume = 2;
repeated string paths = 3;
}
message DeletePathsResponse {
bool success = 1;
optional Error error = 2;
}
message SnapshotLeaseRequest {
string disk = 1;
string volume = 2;
string path = 3;
uint64 ttl_ms = 4;
}
message SnapshotLeaseRenewRequest {
string disk = 1;
string volume = 2;
string path = 3;
bytes token = 4;
uint64 ttl_ms = 5;
}
message SnapshotLeaseReleaseRequest {
string disk = 1;
string volume = 2;
string path = 3;
bytes token = 4;
}
message SnapshotLeaseResponse {
bool success = 1;
bytes token = 2;
uint32 protocol_version = 3;
optional Error error = 4;
}
message SnapshotLeaseMutationResponse {
bool success = 1;
optional Error error = 2;
}
message ReadMetadataRequest {
string disk = 1;
string volume = 2;
string path = 3;
}
message ReadMetadataResponse {
bool success = 1;
optional Error error = 2;
bytes data = 3;
}
message UpdateMetadataRequest {
string disk = 1;
string volume = 2;
string path = 3;
string file_info = 4;
string opts = 5;
bytes file_info_bin = 6;
bytes opts_bin = 7;
}
message UpdateMetadataResponse {
bool success = 1;
optional Error error = 2;
}
message WriteMetadataRequest {
string disk = 1; // indicate which one in the disks
string volume = 2;
string path = 3;
string file_info = 4;
bytes file_info_bin = 5;
}
message WriteMetadataResponse {
bool success = 1;
optional Error error = 2;
}
message ReadVersionRequest {
string disk = 1;
string volume = 2;
string path = 3;
string version_id = 4;
string opts = 5;
bytes opts_bin = 6;
}
message ReadVersionResponse {
bool success = 1;
string file_info = 2;
optional Error error = 3;
bytes file_info_bin = 4;
}
message BatchReadVersionRequest {
string disk = 1;
string batch_read_version_req = 2;
bytes batch_read_version_req_bin = 3;
}
message BatchReadVersionResponse {
bool success = 1;
repeated string batch_read_version_resps = 2;
optional Error error = 3;
repeated bytes batch_read_version_resps_bin = 4;
}
message ReadXLRequest {
string disk = 1;
string volume = 2;
string path = 3;
bool read_data = 4;
}
message ReadXLResponse {
bool success = 1;
string raw_file_info = 2;
optional Error error = 3;
bytes raw_file_info_bin = 4;
}
message DeleteVersionRequest {
string disk = 1;
string volume = 2;
string path = 3;
string file_info = 4;
bool force_del_marker = 5;
string opts = 6;
// msgpack payloads mirroring the JSON fields above (grpc-optimization P2). Senders dual-write
// both; receivers prefer the *_bin form and fall back to the JSON string when it is empty.
bytes file_info_bin = 7;
bytes opts_bin = 8;
}
message DeleteVersionResponse {
bool success = 1;
string raw_file_info = 2;
optional Error error = 3;
}
message DeleteVersionsRequest {
string disk = 1;
string volume = 2;
repeated string versions = 3;
string opts = 4;
// msgpack payloads mirroring the JSON fields above (grpc-optimization P2). Senders dual-write
// both; receivers prefer the *_bin form and fall back to the JSON string when it is empty.
repeated bytes versions_bin = 5;
bytes opts_bin = 6;
}
message DeleteVersionsResponse {
bool success = 1;
repeated string errors = 2;
optional Error error = 3;
}
message ReadMultipleRequest {
string disk = 1;
string read_multiple_req = 2;
bytes read_multiple_req_bin = 3;
}
message ReadMultipleResponse {
bool success = 1;
repeated string read_multiple_resps = 2;
optional Error error = 3;
repeated bytes read_multiple_resps_bin = 4;
}
message DeleteVolumeRequest {
string disk = 1;
string volume = 2;
// When false (default), a non-empty volume is refused (VolumeNotEmpty); when
// true, the volume is deleted recursively. Old peers omit this field, which
// decodes to false — the safe, non-recursive behavior (backlog#799 B1).
bool force = 3;
}
message DeleteVolumeResponse {
bool success = 1;
optional Error error = 2;
}
message DiskInfoRequest {
string disk = 1;
string opts = 2;
}
message DiskInfoResponse {
bool success = 1;
string disk_info = 2;
optional Error error = 3;
}
// lock api have same argument type
message GenerallyLockRequest {
string args = 1;
}
message GenerallyLockResponse {
bool success = 1;
optional string error_info = 2;
optional string lock_info = 3; // JSON serialized LockInfo
}
message BatchGenerallyLockRequest {
repeated string args = 1;
}
message GenerallyLockResult {
bool success = 1;
optional string error_info = 2;
optional string lock_info = 3; // JSON serialized LockInfo
}
message BatchGenerallyLockResponse {
repeated GenerallyLockResult results = 1;
}
message Mss {
map<string, string> value = 1;
}
message LocalStorageInfoRequest {
bool metrics = 1;
}
message LocalStorageInfoResponse {
bool success = 1;
bytes storage_info = 2;
optional string error_info = 3;
}
message ServerInfoRequest {
bool metrics = 1;
}
message ServerInfoResponse {
bool success = 1;
bytes server_properties = 2;
optional string error_info = 3;
}
message GetCpusRequest {}
message GetCpusResponse {
bool success = 1;
bytes cpus = 2;
optional string error_info = 3;
}
message GetNetInfoRequest {}
message GetNetInfoResponse {
bool success = 1;
bytes net_info = 2;
optional string error_info = 3;
}
message GetPartitionsRequest {}
message GetPartitionsResponse {
bool success = 1;
bytes partitions = 2;
optional string error_info = 3;
}
message GetOsInfoRequest {}
message GetOsInfoResponse {
bool success = 1;
bytes os_info = 2;
optional string error_info = 3;
}
message GetSELinuxInfoRequest {}
message GetSELinuxInfoResponse {
bool success = 1;
bytes sys_services = 2;
optional string error_info = 3;
}
message GetSysConfigRequest {}
message GetSysConfigResponse {
bool success = 1;
bytes sys_config = 2;
optional string error_info = 3;
}
message GetSysErrorsRequest {}
message GetSysErrorsResponse {
bool success = 1;
bytes sys_errors = 2;
optional string error_info = 3;
}
message GetMemInfoRequest {}
message GetMemInfoResponse {
bool success = 1;
bytes mem_info = 2;
optional string error_info = 3;
}
message GetMetricsRequest {
bytes metric_type = 1;
bytes opts = 2;
}
message GetMetricsResponse {
bool success = 1;
bytes realtime_metrics = 2;
optional string error_info = 3;
}
message GetProcInfoRequest {}
message GetProcInfoResponse {
bool success = 1;
bytes proc_info = 2;
optional string error_info = 3;
}
message StartProfilingRequest {
string profiler = 1;
}
message StartProfilingResponse {
bool success = 1;
optional string error_info = 2;
}
message DownloadProfileDataRequest {}
message DownloadProfileDataResponse {
bool success = 1;
map<string, bytes> data = 2;
optional string error_info = 3;
}
message GetBucketStatsDataRequest {
string bucket = 1;
}
message GetBucketStatsDataResponse {
bool success = 1;
bytes bucket_stats = 2;
optional string error_info = 3;
}
message GetSRMetricsDataRequest {}
message GetSRMetricsDataResponse {
bool success = 1;
bytes sr_metrics_summary = 2;
optional string error_info = 3;
}
message GetAllBucketStatsRequest {}
message GetAllBucketStatsResponse {
bool success = 1;
bytes bucket_stats_map = 2;
optional string error_info = 3;
}
message LoadBucketMetadataRequest {
string bucket = 1;
bool scanner_maintenance_change = 2;
}
message LoadBucketMetadataResponse {
bool success = 1;
optional string error_info = 2;
}
message DeleteBucketMetadataRequest {
string bucket = 1;
}
message DeleteBucketMetadataResponse {
bool success = 1;
optional string error_info = 2;
}
message DeletePolicyRequest {
string policy_name = 1;
}
message DeletePolicyResponse {
bool success = 1;
optional string error_info = 2;
}
message LoadPolicyRequest {
string policy_name = 1;
}
message LoadPolicyResponse {
bool success = 1;
optional string error_info = 2;
}
message LoadPolicyMappingRequest {
string user_or_group = 1;
uint64 user_type = 2;
bool is_group = 3;
}
message LoadPolicyMappingResponse {
bool success = 1;
optional string error_info = 2;
}
message DeleteUserRequest {
string access_key = 1;
}
message DeleteUserResponse {
bool success = 1;
optional string error_info = 2;
}
message DeleteServiceAccountRequest {
string access_key = 1;
}
message DeleteServiceAccountResponse {
bool success = 1;
optional string error_info = 2;
}
message LoadUserRequest {
string access_key = 1;
bool temp = 2;
}
message LoadUserResponse {
bool success = 1;
optional string error_info = 2;
}
message LoadServiceAccountRequest {
string access_key = 1;
}
message LoadServiceAccountResponse {
bool success = 1;
optional string error_info = 2;
}
message LoadGroupRequest {
string group = 1;
}
message LoadGroupResponse {
bool success = 1;
optional string error_info = 2;
}
message ReloadSiteReplicationConfigRequest {}
message ReloadSiteReplicationConfigResponse {
bool success = 1;
optional string error_info = 2;
}
message SignalServiceRequest {
Mss vars = 1;
}
message SignalServiceResponse {
bool success = 1;
optional string error_info = 2;
uint32 protocol_version = 3;
}
message ScannerActivityRequest {
bytes challenge = 1;
uint32 protocol_version = 2;
string acknowledge_instance_id = 3;
uint64 acknowledge_dirty_usage_generation = 4;
}
message ScannerActivityResponse {
string instance_id = 1;
uint64 namespace_generation = 2;
uint64 maintenance_generation = 3;
uint32 protocol_version = 4;
bytes topology_digest = 5;
bool data_movement_active = 6;
bytes response_proof = 7;
uint64 dirty_usage_generation = 8;
bool dirty_usage_pending = 9;
}
message BackgroundHealStatusRequest {}
message BackgroundHealStatusResponse {
bool success = 1;
bytes bg_heal_state = 2;
optional string error_info = 3;
}
message HealControlRequest {
uint32 version = 1;
string topology_fingerprint = 2;
bytes command = 3;
}
message HealControlResponse {
bool success = 1;
bytes result = 2;
optional string error_info = 3;
bytes response_proof = 4;
}
message GetMetacacheListingRequest {
bytes opts = 1;
}
message GetMetacacheListingResponse {
bool success = 1;
bytes metacache = 2;
optional string error_info = 3;
}
message UpdateMetacacheListingRequest {
bytes metacache = 1;
}
message UpdateMetacacheListingResponse {
bool success = 1;
bytes metacache = 2;
optional string error_info = 3;
}
message ReloadPoolMetaRequest {}
message ReloadPoolMetaResponse {
bool success = 1;
optional string error_info = 2;
}
message StopRebalanceRequest {
string expected_rebalance_id = 1;
}
message StopRebalanceResponse {
bool success = 1;
optional string error_info = 2;
}
message LoadRebalanceMetaRequest {
bool start_rebalance = 1;
}
message LoadRebalanceMetaResponse {
bool success = 1;
optional string error_info = 2;
}
message StartDecommissionRequest {
repeated uint32 pool_indices = 1;
}
message StartDecommissionResponse {
bool success = 1;
optional string error_info = 2;
}
message CancelDecommissionRequest {
uint32 pool_index = 1;
}
message CancelDecommissionResponse {
bool success = 1;
optional string error_info = 2;
}
message ClearDecommissionRequest {
uint32 pool_index = 1;
}
message ClearDecommissionResponse {
bool success = 1;
optional string error_info = 2;
}
message LoadTransitionTierConfigRequest {}
message LoadTransitionTierConfigResponse {
bool success = 1;
optional string error_info = 2;
}
message TierMutationPrepareRequest {
uint32 version = 1;
string mutation_id = 2;
bytes canonical_payload = 3;
}
message TierMutationCommitRequest {
uint32 version = 1;
string mutation_id = 2;
bytes canonical_payload = 3;
}
message TierMutationAbortRequest {
uint32 version = 1;
string mutation_id = 2;
bytes canonical_payload = 3;
}
enum TierMutationPeerState {
TIER_MUTATION_PEER_STATE_UNSPECIFIED = 0;
TIER_MUTATION_PEER_STATE_PREPARED = 1;
TIER_MUTATION_PEER_STATE_COMMITTED = 2;
TIER_MUTATION_PEER_STATE_ABORTED = 3;
}
message TierMutationControlResponse {
bool success = 1;
TierMutationPeerState state = 2;
bool applied = 3;
optional string error_info = 4;
bytes response_proof = 5;
}
message GetLiveEventsRequest {
uint64 after_sequence = 1;
uint32 limit = 2;
}
message GetLiveEventsResponse {
bool success = 1;
bytes events = 2;
uint64 next_sequence = 3;
bool truncated = 4;
optional string error_info = 5;
}
/* -------------------------------------------------------------------- */
service NodeService {
/* -------------------------------meta service-------------------------- */
rpc Ping(PingRequest) returns (PingResponse) {}; // auth-policy: read-only
rpc HealBucket(HealBucketRequest) returns (HealBucketResponse) {}; // auth-policy: body-bound
rpc ListBucket(ListBucketRequest) returns (ListBucketResponse) {}; // auth-policy: read-only
rpc MakeBucket(MakeBucketRequest) returns (MakeBucketResponse) {}; // auth-policy: body-bound
rpc GetBucketInfo(GetBucketInfoRequest) returns (GetBucketInfoResponse) {}; // auth-policy: read-only
rpc DeleteBucket(DeleteBucketRequest) returns (DeleteBucketResponse) {}; // auth-policy: body-bound
/* -------------------------------disk service-------------------------- */
rpc ReadAll(ReadAllRequest) returns (ReadAllResponse) {}; // auth-policy: read-only
rpc WriteAll(WriteAllRequest) returns (WriteAllResponse) {}; // auth-policy: body-bound
rpc Delete(DeleteRequest) returns (DeleteResponse) {}; // auth-policy: body-bound
rpc AcquireSnapshotLease(SnapshotLeaseRequest) returns (SnapshotLeaseResponse) {}; // auth-policy: body-bound
rpc RenewSnapshotLease(SnapshotLeaseRenewRequest) returns (SnapshotLeaseResponse) {}; // auth-policy: body-bound
rpc ReleaseSnapshotLease(SnapshotLeaseReleaseRequest) returns (SnapshotLeaseMutationResponse) {}; // auth-policy: body-bound
rpc VerifyFile(VerifyFileRequest) returns (VerifyFileResponse) {}; // auth-policy: read-only
rpc ReadParts(ReadPartsRequest) returns (ReadPartsResponse) {}; // auth-policy: read-only
rpc CheckParts(CheckPartsRequest) returns (CheckPartsResponse) {}; // auth-policy: read-only
rpc PreparePartTransaction(PreparePartTransactionRequest) returns (PreparePartTransactionResponse) {}; // auth-policy: body-bound
rpc RenamePart(RenamePartRequest) returns (RenamePartResponse) {}; // auth-policy: body-bound
rpc SettlePartTransaction(SettlePartTransactionRequest) returns (SettlePartTransactionResponse) {}; // auth-policy: body-bound
rpc RenameFile(RenameFileRequest) returns (RenameFileResponse) {}; // auth-policy: body-bound
rpc Write(WriteRequest) returns (WriteResponse) {}; // auth-policy: unimplemented
rpc WriteStream(stream WriteRequest) returns (stream WriteResponse) {}; // auth-policy: streaming
// rpc Append(AppendRequest) returns (AppendResponse) {};
rpc ReadAt(stream ReadAtRequest) returns (stream ReadAtResponse) {}; // auth-policy: streaming
rpc ListDir(ListDirRequest) returns (ListDirResponse) {}; // auth-policy: read-only
rpc WalkDir(WalkDirRequest) returns (stream WalkDirResponse) {}; // auth-policy: streaming
rpc RenameData(RenameDataRequest) returns (RenameDataResponse) {}; // auth-policy: body-bound
rpc MakeVolumes(MakeVolumesRequest) returns (MakeVolumesResponse) {}; // auth-policy: body-bound
rpc MakeVolume(MakeVolumeRequest) returns (MakeVolumeResponse) {}; // auth-policy: body-bound
rpc ListVolumes(ListVolumesRequest) returns (ListVolumesResponse) {}; // auth-policy: read-only
rpc StatVolume(StatVolumeRequest) returns (StatVolumeResponse) {}; // auth-policy: read-only
rpc DeletePaths(DeletePathsRequest) returns (DeletePathsResponse) {}; // auth-policy: body-bound
rpc UpdateMetadata(UpdateMetadataRequest) returns (UpdateMetadataResponse) {}; // auth-policy: body-bound
rpc ReadMetadata(ReadMetadataRequest) returns (ReadMetadataResponse) {}; // auth-policy: read-only
rpc WriteMetadata(WriteMetadataRequest) returns (WriteMetadataResponse) {}; // auth-policy: body-bound
rpc ReadVersion(ReadVersionRequest) returns (ReadVersionResponse) {}; // auth-policy: read-only
rpc BatchReadVersion(BatchReadVersionRequest) returns (BatchReadVersionResponse) {}; // auth-policy: read-only
rpc ReadXL(ReadXLRequest) returns (ReadXLResponse) {}; // auth-policy: read-only
rpc DeleteVersion(DeleteVersionRequest) returns (DeleteVersionResponse) {}; // auth-policy: body-bound
rpc DeleteVersions(DeleteVersionsRequest) returns (DeleteVersionsResponse) {}; // auth-policy: body-bound
rpc ReadMultiple(ReadMultipleRequest) returns (ReadMultipleResponse) {}; // auth-policy: read-only
rpc DeleteVolume(DeleteVolumeRequest) returns (DeleteVolumeResponse) {}; // auth-policy: body-bound
rpc DiskInfo(DiskInfoRequest) returns (DiskInfoResponse) {}; // auth-policy: read-only
/* -------------------------------lock service-------------------------- */
rpc Lock(GenerallyLockRequest) returns (GenerallyLockResponse) {}; // auth-policy: body-bound
rpc UnLock(GenerallyLockRequest) returns (GenerallyLockResponse) {}; // auth-policy: body-bound
rpc ForceUnLock(GenerallyLockRequest) returns (GenerallyLockResponse) {}; // auth-policy: body-bound
rpc Refresh(GenerallyLockRequest) returns (GenerallyLockResponse) {}; // auth-policy: body-bound
rpc LockBatch(BatchGenerallyLockRequest) returns (BatchGenerallyLockResponse) {}; // auth-policy: body-bound
rpc UnLockBatch(BatchGenerallyLockRequest) returns (BatchGenerallyLockResponse) {}; // auth-policy: body-bound
/* -------------------------------peer rest service-------------------------- */
rpc LocalStorageInfo(LocalStorageInfoRequest) returns (LocalStorageInfoResponse) {}; // auth-policy: read-only
rpc ServerInfo(ServerInfoRequest) returns (ServerInfoResponse) {}; // auth-policy: read-only
rpc GetCpus(GetCpusRequest) returns (GetCpusResponse) {}; // auth-policy: read-only
rpc GetNetInfo(GetNetInfoRequest) returns (GetNetInfoResponse) {}; // auth-policy: read-only
rpc GetPartitions(GetPartitionsRequest) returns (GetPartitionsResponse) {}; // auth-policy: read-only
rpc GetOsInfo(GetOsInfoRequest) returns (GetOsInfoResponse) {}; // auth-policy: read-only
rpc GetSELinuxInfo(GetSELinuxInfoRequest) returns (GetSELinuxInfoResponse) {}; // auth-policy: read-only
rpc GetSysConfig(GetSysConfigRequest) returns (GetSysConfigResponse) {}; // auth-policy: read-only
rpc GetSysErrors(GetSysErrorsRequest) returns (GetSysErrorsResponse) {}; // auth-policy: read-only
rpc GetMemInfo(GetMemInfoRequest) returns (GetMemInfoResponse) {}; // auth-policy: read-only
rpc GetMetrics(GetMetricsRequest) returns (GetMetricsResponse) {}; // auth-policy: read-only
rpc GetProcInfo(GetProcInfoRequest) returns (GetProcInfoResponse) {}; // auth-policy: read-only
rpc StartProfiling(StartProfilingRequest) returns (StartProfilingResponse) {}; // auth-policy: unimplemented
rpc DownloadProfileData(DownloadProfileDataRequest) returns (DownloadProfileDataResponse) {}; // auth-policy: unimplemented
rpc GetBucketStats(GetBucketStatsDataRequest) returns (GetBucketStatsDataResponse) {}; // auth-policy: read-only
rpc GetSRMetrics(GetSRMetricsDataRequest) returns (GetSRMetricsDataResponse) {}; // auth-policy: unimplemented
rpc GetAllBucketStats(GetAllBucketStatsRequest) returns (GetAllBucketStatsResponse) {}; // auth-policy: unimplemented
rpc LoadBucketMetadata(LoadBucketMetadataRequest) returns (LoadBucketMetadataResponse) {}; // auth-policy: body-bound
rpc DeleteBucketMetadata(DeleteBucketMetadataRequest) returns (DeleteBucketMetadataResponse) {}; // auth-policy: body-bound
rpc DeletePolicy(DeletePolicyRequest) returns (DeletePolicyResponse) {}; // auth-policy: body-bound
rpc LoadPolicy(LoadPolicyRequest) returns (LoadPolicyResponse) {}; // auth-policy: body-bound
rpc LoadPolicyMapping(LoadPolicyMappingRequest) returns (LoadPolicyMappingResponse) {}; // auth-policy: body-bound
rpc DeleteUser(DeleteUserRequest) returns (DeleteUserResponse) {}; // auth-policy: body-bound
rpc DeleteServiceAccount(DeleteServiceAccountRequest) returns (DeleteServiceAccountResponse) {}; // auth-policy: body-bound
rpc LoadUser(LoadUserRequest) returns (LoadUserResponse) {}; // auth-policy: body-bound
rpc LoadServiceAccount(LoadServiceAccountRequest) returns (LoadServiceAccountResponse) {}; // auth-policy: body-bound
rpc LoadGroup(LoadGroupRequest) returns (LoadGroupResponse) {}; // auth-policy: body-bound
rpc ReloadSiteReplicationConfig(ReloadSiteReplicationConfigRequest) returns (ReloadSiteReplicationConfigResponse) {}; // auth-policy: body-bound
// rpc VerifyBinary() returns () {};
// rpc CommitBinary() returns () {};
rpc SignalService(SignalServiceRequest) returns (SignalServiceResponse) {}; // auth-policy: body-bound
rpc ScannerActivity(ScannerActivityRequest) returns (ScannerActivityResponse) {}; // auth-policy: body-bound
rpc BackgroundHealStatus(BackgroundHealStatusRequest) returns (BackgroundHealStatusResponse) {}; // auth-policy: read-only
rpc GetMetacacheListing(GetMetacacheListingRequest) returns (GetMetacacheListingResponse) {}; // auth-policy: unimplemented
rpc UpdateMetacacheListing(UpdateMetacacheListingRequest) returns (UpdateMetacacheListingResponse) {}; // auth-policy: unimplemented
rpc ReloadPoolMeta(ReloadPoolMetaRequest) returns (ReloadPoolMetaResponse) {}; // auth-policy: body-bound
rpc StopRebalance(StopRebalanceRequest) returns (StopRebalanceResponse) {}; // auth-policy: body-bound
rpc LoadRebalanceMeta(LoadRebalanceMetaRequest) returns (LoadRebalanceMetaResponse) {}; // auth-policy: body-bound
rpc StartDecommission(StartDecommissionRequest) returns (StartDecommissionResponse) {}; // auth-policy: body-bound
rpc CancelDecommission(CancelDecommissionRequest) returns (CancelDecommissionResponse) {}; // auth-policy: body-bound
rpc ClearDecommission(ClearDecommissionRequest) returns (ClearDecommissionResponse) {}; // auth-policy: body-bound
rpc LoadTransitionTierConfig(LoadTransitionTierConfigRequest) returns (LoadTransitionTierConfigResponse) {}; // auth-policy: body-bound
rpc GetLiveEvents(GetLiveEventsRequest) returns (GetLiveEventsResponse) {}; // auth-policy: read-only
}
service HealControlService {
rpc HealControl(HealControlRequest) returns (HealControlResponse) {};
}
service TierMutationControlService {
rpc PrepareTierMutation(TierMutationPrepareRequest) returns (TierMutationControlResponse) {};
rpc CommitTierMutation(TierMutationCommitRequest) returns (TierMutationControlResponse) {};
rpc AbortTierMutation(TierMutationAbortRequest) returns (TierMutationControlResponse) {};
}