-
Notifications
You must be signed in to change notification settings - Fork 0
/
fossildbapi.proto
189 lines (156 loc) · 4.76 KB
/
fossildbapi.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
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
syntax = "proto2";
package com.scalableminds.fossildb.proto;
message HealthRequest {}
message HealthReply {
required bool success = 1;
optional string errorMessage = 2;
}
message GetRequest {
required string collection = 1;
required string key = 2;
optional uint64 version = 3;
optional bool mayBeEmpty = 4;
}
message GetReply {
required bool success = 1;
optional string errorMessage = 2;
required bytes value = 3;
required uint64 actualVersion = 4;
}
message PutRequest {
required string collection = 1;
required string key = 2;
optional uint64 version = 3;
required bytes value = 4;
}
message PutReply {
required bool success = 1;
optional string errorMessage = 2;
}
message PutMultipleVersionsRequest {
required string collection = 1;
required string key = 2;
repeated uint64 versions = 3;
repeated bytes values = 4;
}
message PutMultipleVersionsReply {
required bool success = 1;
optional string errorMessage = 2;
}
message DeleteRequest {
required string collection = 1;
required string key = 2;
required uint64 version = 3;
}
message DeleteReply {
required bool success = 1;
optional string errorMessage = 2;
}
message DeleteAllByPrefixRequest {
required string collection = 1;
required string prefix = 2;
}
message DeleteAllByPrefixReply {
required bool success = 1;
optional string errorMessage = 2;
}
message GetMultipleVersionsRequest {
required string collection = 1;
required string key = 2;
optional uint64 newestVersion = 4;
optional uint64 oldestVersion = 3;
}
message GetMultipleVersionsReply {
required bool success = 1;
optional string errorMessage = 2;
repeated bytes values = 3;
repeated uint64 versions = 4;
}
message GetMultipleKeysRequest {
required string collection = 1;
optional string startAfterKey = 2;
optional string prefix = 3;
optional uint64 version = 4;
optional uint32 limit = 5;
}
message GetMultipleKeysReply {
required bool success = 1;
optional string errorMessage = 2;
repeated string keys = 3;
repeated bytes values = 4;
repeated uint64 actualVersions = 5;
}
message DeleteMultipleVersionsRequest {
required string collection = 1;
required string key = 2;
optional uint64 newestVersion = 4;
optional uint64 oldestVersion = 3;
}
message DeleteMultipleVersionsReply {
required bool success = 1;
optional string errorMessage = 2;
}
message ListKeysRequest {
required string collection = 1;
optional uint32 limit = 2;
optional string startAfterKey = 3;
}
message ListKeysReply {
required bool success = 1;
optional string errorMessage = 2;
repeated string keys = 3;
}
message ListVersionsRequest {
required string collection = 1;
required string key = 2;
optional uint32 limit = 3;
optional uint32 offset = 4;
}
message ListVersionsReply {
required bool success = 1;
optional string errorMessage = 2;
repeated uint64 versions = 3;
}
message BackupRequest {}
message BackupReply {
required bool success = 1;
optional string errorMessage = 2;
required uint32 id = 3;
required uint64 timestamp = 4;
required uint64 size = 5;
}
message RestoreFromBackupRequest {}
message RestoreFromBackupReply {
required bool success = 1;
optional string errorMessage = 2;
}
message CompactAllDataRequest {}
message CompactAllDataReply {
required bool success = 1;
optional string errorMessage = 2;
}
message ExportDBRequest {
required string newDataDir = 1;
optional string optionsFile = 2;
}
message ExportDBReply {
required bool success = 1;
optional string errorMessage = 2;
}
service FossilDB {
rpc Health (HealthRequest) returns (HealthReply) {}
rpc Get (GetRequest) returns (GetReply) {}
rpc GetMultipleVersions (GetMultipleVersionsRequest) returns (GetMultipleVersionsReply) {}
rpc GetMultipleKeys (GetMultipleKeysRequest) returns (GetMultipleKeysReply) {}
rpc Put (PutRequest) returns (PutReply) {}
rpc PutMultipleVersions (PutMultipleVersionsRequest) returns (PutMultipleVersionsReply) {}
rpc Delete (DeleteRequest) returns (DeleteReply) {}
rpc DeleteMultipleVersions (DeleteMultipleVersionsRequest) returns (DeleteMultipleVersionsReply) {}
rpc DeleteAllByPrefix (DeleteAllByPrefixRequest) returns (DeleteAllByPrefixReply) {}
rpc ListKeys (ListKeysRequest) returns (ListKeysReply) {}
rpc ListVersions (ListVersionsRequest) returns (ListVersionsReply) {}
rpc Backup (BackupRequest) returns (BackupReply) {}
rpc RestoreFromBackup (RestoreFromBackupRequest) returns (RestoreFromBackupReply) {}
rpc CompactAllData (CompactAllDataRequest) returns (CompactAllDataReply) {}
rpc ExportDB (ExportDBRequest) returns (ExportDBReply) {}
}