mirror of
https://github.com/Oxalide/vsphere-influxdb-go.git
synced 2023-10-10 13:36:51 +02:00
394 lines
8.8 KiB
Protocol Buffer
394 lines
8.8 KiB
Protocol Buffer
package meta;
|
|
|
|
//========================================================================
|
|
//
|
|
// Metadata
|
|
//
|
|
//========================================================================
|
|
|
|
message Data {
|
|
required uint64 Term = 1;
|
|
required uint64 Index = 2;
|
|
required uint64 ClusterID = 3;
|
|
|
|
repeated NodeInfo Nodes = 4;
|
|
repeated DatabaseInfo Databases = 5;
|
|
repeated UserInfo Users = 6;
|
|
|
|
required uint64 MaxNodeID = 7;
|
|
required uint64 MaxShardGroupID = 8;
|
|
required uint64 MaxShardID = 9;
|
|
|
|
// added for 0.10.0
|
|
repeated NodeInfo DataNodes = 10;
|
|
repeated NodeInfo MetaNodes = 11;
|
|
}
|
|
|
|
message NodeInfo {
|
|
required uint64 ID = 1;
|
|
required string Host = 2;
|
|
optional string TCPHost = 3;
|
|
}
|
|
|
|
message DatabaseInfo {
|
|
required string Name = 1;
|
|
required string DefaultRetentionPolicy = 2;
|
|
repeated RetentionPolicyInfo RetentionPolicies = 3;
|
|
repeated ContinuousQueryInfo ContinuousQueries = 4;
|
|
}
|
|
|
|
message RetentionPolicySpec {
|
|
optional string Name = 1;
|
|
optional int64 Duration = 2;
|
|
optional int64 ShardGroupDuration = 3;
|
|
optional uint32 ReplicaN = 4;
|
|
}
|
|
|
|
message RetentionPolicyInfo {
|
|
required string Name = 1;
|
|
required int64 Duration = 2;
|
|
required int64 ShardGroupDuration = 3;
|
|
required uint32 ReplicaN = 4;
|
|
repeated ShardGroupInfo ShardGroups = 5;
|
|
repeated SubscriptionInfo Subscriptions = 6;
|
|
}
|
|
|
|
message ShardGroupInfo {
|
|
required uint64 ID = 1;
|
|
required int64 StartTime = 2;
|
|
required int64 EndTime = 3;
|
|
required int64 DeletedAt = 4;
|
|
repeated ShardInfo Shards = 5;
|
|
optional int64 TruncatedAt = 6;
|
|
}
|
|
|
|
message ShardInfo {
|
|
required uint64 ID = 1;
|
|
repeated uint64 OwnerIDs = 2 [deprecated=true];
|
|
repeated ShardOwner Owners = 3;
|
|
}
|
|
|
|
message SubscriptionInfo{
|
|
required string Name = 1;
|
|
required string Mode = 2;
|
|
repeated string Destinations = 3;
|
|
}
|
|
|
|
message ShardOwner {
|
|
required uint64 NodeID = 1;
|
|
}
|
|
|
|
message ContinuousQueryInfo {
|
|
required string Name = 1;
|
|
required string Query = 2;
|
|
}
|
|
|
|
message UserInfo {
|
|
required string Name = 1;
|
|
required string Hash = 2;
|
|
required bool Admin = 3;
|
|
repeated UserPrivilege Privileges = 4;
|
|
}
|
|
|
|
message UserPrivilege {
|
|
required string Database = 1;
|
|
required int32 Privilege = 2;
|
|
}
|
|
|
|
|
|
//========================================================================
|
|
//
|
|
// COMMANDS
|
|
//
|
|
//========================================================================
|
|
|
|
message Command {
|
|
extensions 100 to max;
|
|
|
|
enum Type {
|
|
CreateNodeCommand = 1;
|
|
DeleteNodeCommand = 2;
|
|
CreateDatabaseCommand = 3;
|
|
DropDatabaseCommand = 4;
|
|
CreateRetentionPolicyCommand = 5;
|
|
DropRetentionPolicyCommand = 6;
|
|
SetDefaultRetentionPolicyCommand = 7;
|
|
UpdateRetentionPolicyCommand = 8;
|
|
CreateShardGroupCommand = 9;
|
|
DeleteShardGroupCommand = 10;
|
|
CreateContinuousQueryCommand = 11;
|
|
DropContinuousQueryCommand = 12;
|
|
CreateUserCommand = 13;
|
|
DropUserCommand = 14;
|
|
UpdateUserCommand = 15;
|
|
SetPrivilegeCommand = 16;
|
|
SetDataCommand = 17;
|
|
SetAdminPrivilegeCommand = 18;
|
|
UpdateNodeCommand = 19;
|
|
CreateSubscriptionCommand = 21;
|
|
DropSubscriptionCommand = 22;
|
|
RemovePeerCommand = 23;
|
|
CreateMetaNodeCommand = 24;
|
|
CreateDataNodeCommand = 25;
|
|
UpdateDataNodeCommand = 26;
|
|
DeleteMetaNodeCommand = 27;
|
|
DeleteDataNodeCommand = 28;
|
|
SetMetaNodeCommand = 29;
|
|
DropShardCommand = 30;
|
|
}
|
|
|
|
required Type type = 1;
|
|
}
|
|
|
|
// This isn't used in >= 0.10.0. Kept around for upgrade purposes. Instead
|
|
// look at CreateDataNodeCommand and CreateMetaNodeCommand
|
|
message CreateNodeCommand {
|
|
extend Command {
|
|
optional CreateNodeCommand command = 101;
|
|
}
|
|
required string Host = 1;
|
|
required uint64 Rand = 2;
|
|
}
|
|
|
|
message DeleteNodeCommand {
|
|
extend Command {
|
|
optional DeleteNodeCommand command = 102;
|
|
}
|
|
required uint64 ID = 1;
|
|
required bool Force = 2;
|
|
}
|
|
|
|
message CreateDatabaseCommand {
|
|
extend Command {
|
|
optional CreateDatabaseCommand command = 103;
|
|
}
|
|
required string Name = 1;
|
|
optional RetentionPolicyInfo RetentionPolicy = 2;
|
|
}
|
|
|
|
message DropDatabaseCommand {
|
|
extend Command {
|
|
optional DropDatabaseCommand command = 104;
|
|
}
|
|
required string Name = 1;
|
|
}
|
|
|
|
message CreateRetentionPolicyCommand {
|
|
extend Command {
|
|
optional CreateRetentionPolicyCommand command = 105;
|
|
}
|
|
required string Database = 1;
|
|
required RetentionPolicyInfo RetentionPolicy = 2;
|
|
}
|
|
|
|
message DropRetentionPolicyCommand {
|
|
extend Command {
|
|
optional DropRetentionPolicyCommand command = 106;
|
|
}
|
|
required string Database = 1;
|
|
required string Name = 2;
|
|
}
|
|
|
|
message SetDefaultRetentionPolicyCommand {
|
|
extend Command {
|
|
optional SetDefaultRetentionPolicyCommand command = 107;
|
|
}
|
|
required string Database = 1;
|
|
required string Name = 2;
|
|
}
|
|
|
|
message UpdateRetentionPolicyCommand {
|
|
extend Command {
|
|
optional UpdateRetentionPolicyCommand command = 108;
|
|
}
|
|
required string Database = 1;
|
|
required string Name = 2;
|
|
optional string NewName = 3;
|
|
optional int64 Duration = 4;
|
|
optional uint32 ReplicaN = 5;
|
|
}
|
|
|
|
message CreateShardGroupCommand {
|
|
extend Command {
|
|
optional CreateShardGroupCommand command = 109;
|
|
}
|
|
required string Database = 1;
|
|
required string Policy = 2;
|
|
required int64 Timestamp = 3;
|
|
}
|
|
|
|
message DeleteShardGroupCommand {
|
|
extend Command {
|
|
optional DeleteShardGroupCommand command = 110;
|
|
}
|
|
required string Database = 1;
|
|
required string Policy = 2;
|
|
required uint64 ShardGroupID = 3;
|
|
}
|
|
|
|
message CreateContinuousQueryCommand {
|
|
extend Command {
|
|
optional CreateContinuousQueryCommand command = 111;
|
|
}
|
|
required string Database = 1;
|
|
required string Name = 2;
|
|
required string Query = 3;
|
|
}
|
|
|
|
message DropContinuousQueryCommand {
|
|
extend Command {
|
|
optional DropContinuousQueryCommand command = 112;
|
|
}
|
|
required string Database = 1;
|
|
required string Name = 2;
|
|
}
|
|
|
|
message CreateUserCommand {
|
|
extend Command {
|
|
optional CreateUserCommand command = 113;
|
|
}
|
|
required string Name = 1;
|
|
required string Hash = 2;
|
|
required bool Admin = 3;
|
|
}
|
|
|
|
message DropUserCommand {
|
|
extend Command {
|
|
optional DropUserCommand command = 114;
|
|
}
|
|
required string Name = 1;
|
|
}
|
|
|
|
message UpdateUserCommand {
|
|
extend Command {
|
|
optional UpdateUserCommand command = 115;
|
|
}
|
|
required string Name = 1;
|
|
required string Hash = 2;
|
|
}
|
|
|
|
message SetPrivilegeCommand {
|
|
extend Command {
|
|
optional SetPrivilegeCommand command = 116;
|
|
}
|
|
required string Username = 1;
|
|
required string Database = 2;
|
|
required int32 Privilege = 3;
|
|
}
|
|
|
|
message SetDataCommand {
|
|
extend Command {
|
|
optional SetDataCommand command = 117;
|
|
}
|
|
required Data Data = 1;
|
|
}
|
|
|
|
message SetAdminPrivilegeCommand {
|
|
extend Command {
|
|
optional SetAdminPrivilegeCommand command = 118;
|
|
}
|
|
required string Username = 1;
|
|
required bool Admin = 2;
|
|
}
|
|
|
|
message UpdateNodeCommand {
|
|
extend Command {
|
|
optional UpdateNodeCommand command = 119;
|
|
}
|
|
required uint64 ID = 1;
|
|
required string Host = 2;
|
|
}
|
|
|
|
message CreateSubscriptionCommand {
|
|
extend Command {
|
|
optional CreateSubscriptionCommand command = 121;
|
|
}
|
|
required string Name = 1;
|
|
required string Database = 2;
|
|
required string RetentionPolicy = 3;
|
|
required string Mode = 4;
|
|
repeated string Destinations = 5;
|
|
|
|
}
|
|
|
|
message DropSubscriptionCommand {
|
|
extend Command {
|
|
optional DropSubscriptionCommand command = 122;
|
|
}
|
|
required string Name = 1;
|
|
required string Database = 2;
|
|
required string RetentionPolicy = 3;
|
|
}
|
|
|
|
message RemovePeerCommand {
|
|
extend Command {
|
|
optional RemovePeerCommand command = 123;
|
|
}
|
|
optional uint64 ID = 1;
|
|
required string Addr = 2;
|
|
}
|
|
|
|
message CreateMetaNodeCommand {
|
|
extend Command {
|
|
optional CreateMetaNodeCommand command = 124;
|
|
}
|
|
required string HTTPAddr = 1;
|
|
required string TCPAddr = 2;
|
|
required uint64 Rand = 3;
|
|
}
|
|
|
|
message CreateDataNodeCommand {
|
|
extend Command {
|
|
optional CreateDataNodeCommand command = 125;
|
|
}
|
|
required string HTTPAddr = 1;
|
|
required string TCPAddr = 2;
|
|
}
|
|
|
|
message UpdateDataNodeCommand {
|
|
extend Command {
|
|
optional UpdateDataNodeCommand command = 126;
|
|
}
|
|
required uint64 ID = 1;
|
|
required string Host = 2;
|
|
required string TCPHost = 3;
|
|
}
|
|
|
|
message DeleteMetaNodeCommand {
|
|
extend Command {
|
|
optional DeleteMetaNodeCommand command = 127;
|
|
}
|
|
required uint64 ID = 1;
|
|
}
|
|
|
|
message DeleteDataNodeCommand {
|
|
extend Command {
|
|
optional DeleteDataNodeCommand command = 128;
|
|
}
|
|
required uint64 ID = 1;
|
|
}
|
|
|
|
message Response {
|
|
required bool OK = 1;
|
|
optional string Error = 2;
|
|
optional uint64 Index = 3;
|
|
}
|
|
|
|
// SetMetaNodeCommand is for the initial metanode in a cluster or
|
|
// if the single host restarts and its hostname changes, this will update it
|
|
message SetMetaNodeCommand {
|
|
extend Command {
|
|
optional SetMetaNodeCommand command = 129;
|
|
}
|
|
required string HTTPAddr = 1;
|
|
required string TCPAddr = 2;
|
|
required uint64 Rand = 3;
|
|
}
|
|
|
|
message DropShardCommand {
|
|
extend Command {
|
|
optional DropShardCommand command = 130;
|
|
}
|
|
required uint64 ID = 1;
|
|
}
|