mirror of
https://github.com/etcd-io/etcd.git
synced 2024-09-27 06:25:44 +00:00
41 lines
1.1 KiB
Protocol Buffer
41 lines
1.1 KiB
Protocol Buffer
syntax = "proto3";
|
|
package storagepb;
|
|
|
|
import "gogoproto/gogo.proto";
|
|
|
|
option (gogoproto.marshaler_all) = true;
|
|
option (gogoproto.sizer_all) = true;
|
|
option (gogoproto.unmarshaler_all) = true;
|
|
option (gogoproto.goproto_getters_all) = false;
|
|
option (gogoproto.goproto_enum_prefix_all) = false;
|
|
|
|
message KeyValue {
|
|
bytes key = 1;
|
|
int64 create_revision = 2;
|
|
// mod_revision is the last modified revision of the key.
|
|
int64 mod_revision = 3;
|
|
// version is the version of the key. A deletion resets
|
|
// the version to zero and any modification of the key
|
|
// increases its version.
|
|
int64 version = 4;
|
|
bytes value = 5;
|
|
// lease is the ID of the lease that attached to key.
|
|
// When the attached lease expires, the key will be deleted.
|
|
int64 lease = 6;
|
|
}
|
|
|
|
message Event {
|
|
enum EventType {
|
|
PUT = 0;
|
|
DELETE = 1;
|
|
EXPIRE = 2;
|
|
}
|
|
EventType type = 1;
|
|
// a put event contains the current key-value
|
|
// a delete/expire event contains the previous
|
|
// key-value
|
|
KeyValue kv = 2;
|
|
// watchID is the ID of watching this event is sent to.
|
|
int64 watchID = 3;
|
|
}
|