mirror of
https://github.com/seaweedfs/seaweedfs.git
synced 2025-11-24 16:53:14 +08:00
Add message queue agent (#6463)
* scaffold message queue agent * adjust proto, add mq_agent * add agent client implementation * remove unused function * agent publish server implementation * adding agent
This commit is contained in:
99
weed/pb/mq_schema.proto
Normal file
99
weed/pb/mq_schema.proto
Normal file
@@ -0,0 +1,99 @@
|
||||
syntax = "proto3";
|
||||
|
||||
package schema_pb;
|
||||
|
||||
option go_package = "github.com/seaweedfs/seaweedfs/weed/pb/schema_pb";
|
||||
|
||||
///////////////////////////
|
||||
// Topic definition
|
||||
///////////////////////////
|
||||
|
||||
message Topic {
|
||||
string namespace = 1;
|
||||
string name = 2;
|
||||
}
|
||||
message Partition {
|
||||
int32 ring_size = 1;
|
||||
int32 range_start = 2;
|
||||
int32 range_stop = 3;
|
||||
int64 unix_time_ns = 4;
|
||||
}
|
||||
|
||||
message Offset {
|
||||
Topic topic = 1;
|
||||
repeated PartitionOffset partition_offsets = 2;
|
||||
}
|
||||
|
||||
enum PartitionOffsetStartType {
|
||||
EARLIEST = 0;
|
||||
EARLIEST_IN_MEMORY = 1;
|
||||
LATEST = 2;
|
||||
}
|
||||
|
||||
message PartitionOffset {
|
||||
Partition partition = 1;
|
||||
int64 start_ts_ns = 2;
|
||||
int64 stop_ts_ns = 3;
|
||||
PartitionOffsetStartType start_type = 4;
|
||||
}
|
||||
|
||||
///////////////////////////
|
||||
// schema definition
|
||||
///////////////////////////
|
||||
|
||||
message RecordType {
|
||||
repeated Field fields = 1;
|
||||
}
|
||||
|
||||
message Field {
|
||||
string name = 1;
|
||||
int32 field_index = 2;
|
||||
Type type = 3;
|
||||
bool is_repeated = 4;
|
||||
bool is_required = 5;
|
||||
}
|
||||
|
||||
message Type {
|
||||
oneof kind {
|
||||
ScalarType scalar_type = 1;
|
||||
RecordType record_type = 2;
|
||||
ListType list_type = 3;
|
||||
}
|
||||
}
|
||||
|
||||
enum ScalarType {
|
||||
BOOL = 0;
|
||||
INT32 = 1;
|
||||
INT64 = 3;
|
||||
FLOAT = 4;
|
||||
DOUBLE = 5;
|
||||
BYTES = 6;
|
||||
STRING = 7;
|
||||
}
|
||||
|
||||
message ListType {
|
||||
Type element_type = 1;
|
||||
}
|
||||
|
||||
///////////////////////////
|
||||
// value definition
|
||||
///////////////////////////
|
||||
message RecordValue {
|
||||
map<string, Value> fields = 1;
|
||||
}
|
||||
message Value {
|
||||
oneof kind {
|
||||
bool bool_value = 1;
|
||||
int32 int32_value = 2;
|
||||
int64 int64_value = 3;
|
||||
float float_value = 4;
|
||||
double double_value = 5;
|
||||
bytes bytes_value = 6;
|
||||
string string_value = 7;
|
||||
ListValue list_value = 14;
|
||||
RecordValue record_value = 15;
|
||||
}
|
||||
}
|
||||
message ListValue {
|
||||
repeated Value values = 1;
|
||||
}
|
||||
Reference in New Issue
Block a user