mirror of
https://github.com/featurebasedb/featurebase.git
synced 2026-09-05 08:10:50 +00:00
This allows a BSI field to have an option indicating that it is a foreign key to another index. If the foreign index has column keys, then this field handles string values by using the foreign index's translate store.
197 lines
2.9 KiB
Protocol Buffer
197 lines
2.9 KiB
Protocol Buffer
syntax = "proto3";
|
|
|
|
package internal;
|
|
|
|
message IndexMeta {
|
|
bool Keys = 3;
|
|
bool TrackExistence = 4;
|
|
}
|
|
|
|
message FieldOptions {
|
|
string Type = 8;
|
|
string CacheType = 3;
|
|
uint32 CacheSize = 4;
|
|
string TimeQuantum = 5;
|
|
int64 Min = 9;
|
|
int64 Max = 10;
|
|
bool Keys = 11;
|
|
bool NoStandardView = 12;
|
|
int64 Base = 13;
|
|
uint64 BitDepth = 14;
|
|
int64 Scale = 15;
|
|
string ForeignIndex = 16;
|
|
}
|
|
|
|
message ImportResponse {
|
|
string Err = 1;
|
|
}
|
|
|
|
message BlockDataRequest {
|
|
string Index = 1;
|
|
string Field = 2;
|
|
string View = 5;
|
|
uint64 Shard = 4;
|
|
uint64 Block = 3;
|
|
}
|
|
|
|
message BlockDataResponse {
|
|
repeated uint64 RowIDs = 1;
|
|
repeated uint64 ColumnIDs = 2;
|
|
}
|
|
|
|
message Cache {
|
|
repeated uint64 IDs = 1;
|
|
}
|
|
|
|
message MaxShards {
|
|
map<string, uint64> Standard = 1;
|
|
}
|
|
|
|
message CreateShardMessage {
|
|
string Index = 1;
|
|
string Field = 3;
|
|
uint64 Shard = 2;
|
|
}
|
|
|
|
message DeleteIndexMessage {
|
|
string Index = 1;
|
|
}
|
|
|
|
message CreateIndexMessage {
|
|
string Index = 1;
|
|
IndexMeta Meta = 2;
|
|
}
|
|
|
|
message CreateFieldMessage {
|
|
string Index = 1;
|
|
string Field = 2;
|
|
FieldOptions Meta = 3;
|
|
}
|
|
|
|
message DeleteFieldMessage {
|
|
string Index = 1;
|
|
string Field = 2;
|
|
}
|
|
|
|
message DeleteAvailableShardMessage {
|
|
string Index = 1;
|
|
string Field = 2;
|
|
uint64 ShardID = 3;
|
|
}
|
|
|
|
message Field {
|
|
string Name = 1;
|
|
FieldOptions Meta = 2;
|
|
repeated string Views = 3;
|
|
}
|
|
|
|
message Schema {
|
|
repeated Index Indexes = 1;
|
|
}
|
|
|
|
message Index {
|
|
string Name = 1;
|
|
repeated Field Fields = 4;
|
|
}
|
|
|
|
message URI {
|
|
string Scheme = 1;
|
|
string Host = 2;
|
|
uint32 Port = 3;
|
|
}
|
|
|
|
message Node {
|
|
string ID = 1;
|
|
URI URI = 2;
|
|
bool IsCoordinator = 3;
|
|
string State = 4;
|
|
}
|
|
|
|
message NodeStateMessage {
|
|
string NodeID = 1;
|
|
string State = 2;
|
|
}
|
|
|
|
message NodeEventMessage {
|
|
uint32 Event = 1;
|
|
Node Node = 2;
|
|
}
|
|
|
|
message NodeStatus {
|
|
Node Node = 1;
|
|
Schema Schema = 3;
|
|
repeated IndexStatus Indexes = 4;
|
|
}
|
|
|
|
message IndexStatus {
|
|
string Name = 1;
|
|
repeated FieldStatus Fields = 2;
|
|
}
|
|
|
|
message FieldStatus {
|
|
string Name = 1;
|
|
repeated uint64 AvailableShards = 2;
|
|
}
|
|
|
|
message ClusterStatus {
|
|
string ClusterID = 1;
|
|
string State = 2;
|
|
repeated Node Nodes = 3;
|
|
}
|
|
|
|
message BSIGroup {
|
|
string Name = 1;
|
|
string Type = 2;
|
|
int64 Min = 3;
|
|
int64 Max = 4;
|
|
}
|
|
|
|
message CreateViewMessage {
|
|
string Index = 1;
|
|
string Field = 2;
|
|
string View = 3;
|
|
}
|
|
|
|
message DeleteViewMessage {
|
|
string Index = 1;
|
|
string Field = 2;
|
|
string View = 3;
|
|
}
|
|
|
|
message ResizeInstruction {
|
|
int64 JobID = 1;
|
|
Node Node = 2;
|
|
Node Coordinator = 3;
|
|
repeated ResizeSource Sources = 4;
|
|
NodeStatus NodeStatus = 7;
|
|
ClusterStatus ClusterStatus = 6;
|
|
}
|
|
|
|
message ResizeSource {
|
|
Node Node = 1;
|
|
string Index = 2;
|
|
string Field = 3;
|
|
string View = 4;
|
|
uint64 Shard = 5;
|
|
}
|
|
|
|
message ResizeInstructionComplete {
|
|
int64 JobID = 1;
|
|
Node Node = 2;
|
|
string Error = 3;
|
|
}
|
|
|
|
message SetCoordinatorMessage {
|
|
Node New = 1;
|
|
}
|
|
|
|
message UpdateCoordinatorMessage {
|
|
Node New = 1;
|
|
}
|
|
|
|
message Topology {
|
|
string ClusterID = 1;
|
|
repeated string NodeIDs = 2;
|
|
}
|
|
|
|
message RecalculateCaches {}
|