diff --git a/go/proto/system_message.proto b/go/proto/system_message.proto index 548360b27..703b1f4a0 100644 --- a/go/proto/system_message.proto +++ b/go/proto/system_message.proto @@ -1,27 +1,46 @@ package operation; message VolumeInformationMessage { - required uint32 id = 1; - required uint64 size = 2; - optional string collection = 3; - required uint64 file_count = 4; - required uint64 delete_count = 5; - required uint64 deleted_byte_count = 6; - optional bool read_only = 7; - required uint32 replica_placement = 8; - optional uint32 version = 9 [default=2]; - optional uint32 ttl = 10; + required uint32 id = 1; + required uint64 size = 2; + optional string collection = 3; + required uint64 file_count = 4; + required uint64 delete_count = 5; + required uint64 deleted_byte_count = 6; + optional bool read_only = 7; + required uint32 replica_placement = 8; + optional uint32 version = 9 [default=2]; + optional uint32 ttl = 10; +} + +enum VolumeTask { + Vacuum = 0; + Replicate = 1; +} + +enum VolumeTaskStatus { + Working = 0; + Completed = 1; + Failed = 2; +} + +message BusyVolume { + required uint32 id = 1; + required VolumeTask task = 2; + required VolumeTaskStatus status = 3; + required int64 start_time = 4; } message JoinMessage { - optional bool is_init = 1; - required string ip = 2; - required uint32 port = 3; - optional string public_url = 4; - required uint32 max_volume_count = 5; - required uint64 max_file_key = 6; - optional string data_center = 7; - optional string rack = 8; - repeated VolumeInformationMessage volumes = 9; - optional uint32 admin_port = 10; + optional bool is_init = 1; + required string ip = 2; + required uint32 port = 3; + optional string public_url = 4; + required uint32 max_volume_count = 5; + required uint64 max_file_key = 6; + optional string data_center = 7; + optional string rack = 8; + repeated VolumeInformationMessage volumes = 9; + optional uint32 admin_port = 10; + repeated BusyVolume busy_volumes = 11; }