12345678910111213141516171819202122232425262728293031323334353637383940 |
- 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;
- // create_revision is the revision of last creation on this key.
- int64 create_revision = 2;
- // mod_revision is the revision of last modification on this 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 current kv pair.
- // A PUT event with kv.Version=1 indicates the creation of a key.
- // A DELETE/EXPIRE event contains the deleted key with
- // its modification revision set to the revision of deletion.
- KeyValue kv = 2;
- }
|