/
voldemort-admin.proto
168 lines (135 loc) · 3.92 KB
/
voldemort-admin.proto
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
package voldemort;
option java_package = "voldemort.client.protocol.pb";
option java_outer_classname = "VAdminProto";
option optimize_for = SPEED;
import "voldemort-client.proto";
message GetMetadataRequest {
required bytes key = 1;
}
message GetMetadataResponse {
optional Versioned version = 1;
optional Error error = 2;
}
message UpdateMetadataRequest {
required bytes key = 1;
required Versioned versioned = 2;
}
message UpdateMetadataResponse {
optional Error error = 1;
}
message PartitionEntry {
required bytes key = 1;
required Versioned versioned = 2;
}
message UpdatePartitionEntriesRequest {
required string store = 1;
required PartitionEntry partition_entry = 2;
optional VoldemortFilter filter = 3;
}
message UpdatePartitionEntriesResponse {
optional Error error = 1;
}
message VoldemortFilter {
required string name = 1;
required bytes data = 2;
}
message FetchPartitionEntriesRequest {
repeated int32 partitions = 1;
required string store = 2;
optional VoldemortFilter filter = 3;
optional bool fetch_values = 4;
optional bool fetch_master_entries = 5;
}
message FetchPartitionEntriesResponse {
optional PartitionEntry partition_entry = 1;
optional bytes key = 2;
optional Error error = 3;
}
message DeletePartitionEntriesRequest {
required string store = 1;
repeated int32 partitions = 2;
optional VoldemortFilter filter = 3;
}
message DeletePartitionEntriesResponse {
optional int32 count = 1;
optional Error error = 2;
}
message InitiateFetchAndUpdateRequest {
required int32 node_id = 1;
repeated int32 partitions = 2;
required string store = 3;
optional VoldemortFilter filter = 4;
}
message AsyncOperationStatusRequest {
required int32 request_id = 1;
}
message AsyncOperationStopRequest {
required int32 request_id = 1;
}
message AsyncOperationStopResponse {
optional Error error = 1;
}
message AsyncOperationListRequest {
required int32 request_id = 1;
required bool show_complete = 2 [default = false];
}
message AsyncOperationListResponse {
repeated int32 request_ids = 1;
optional Error error = 2;
}
message InitiateRebalanceNodeRequest {
required int32 stealer_id =2;
required int32 donor_id = 3;
repeated int32 partitions = 4;
required int32 attempt = 5;
repeated int32 deletePartitions = 6;
repeated string unbalanced_store = 7;
}
message AsyncOperationStatusResponse {
optional int32 request_id = 1;
optional string description = 2;
optional string status = 3;
optional bool complete = 4;
optional Error error = 5;
}
message TruncateEntriesRequest {
required string store = 1;
}
message TruncateEntriesResponse {
optional Error error = 1;
}
message AddStoreRequest {
required string storeDefinition = 1;
}
message AddStoreResponse {
optional Error error = 1;
}
enum AdminRequestType {
GET_METADATA = 0;
UPDATE_METADATA = 1;
UPDATE_PARTITION_ENTRIES = 2;
FETCH_PARTITION_ENTRIES = 3;
DELETE_PARTITION_ENTRIES = 4;
INITIATE_FETCH_AND_UPDATE = 5;
ASYNC_OPERATION_STATUS = 6;
INITIATE_REBALANCE_NODE = 7;
ASYNC_OPERATION_STOP = 8;
ASYNC_OPERATION_LIST = 9;
TRUNCATE_ENTRIES = 10;
ADD_STORE = 11;
}
message VoldemortAdminRequest {
required AdminRequestType type = 1;
optional GetMetadataRequest get_metadata = 2;
optional UpdateMetadataRequest update_metadata = 3;
optional UpdatePartitionEntriesRequest update_partition_entries = 4;
optional FetchPartitionEntriesRequest fetch_partition_entries = 5;
optional DeletePartitionEntriesRequest delete_partition_entries = 6;
optional InitiateFetchAndUpdateRequest initiate_fetch_and_update = 7;
optional AsyncOperationStatusRequest async_operation_status = 8;
optional InitiateRebalanceNodeRequest initiate_rebalance_node = 9;
optional AsyncOperationStopRequest async_operation_stop = 10;
optional AsyncOperationListRequest async_operation_list = 11;
optional TruncateEntriesRequest truncate_entries = 12;
optional AddStoreRequest add_store = 13;
}