99 lines
1.1 KiB
Plaintext
99 lines
1.1 KiB
Plaintext
namespace wal;
|
|
|
|
table Entry {
|
|
entry_type: EntryType;
|
|
}
|
|
|
|
table EntryType {
|
|
write: Write;
|
|
delete: Delete;
|
|
}
|
|
|
|
table Write {
|
|
points: [Point];
|
|
}
|
|
|
|
table I64Value {
|
|
value: int64;
|
|
}
|
|
|
|
table U64Value {
|
|
value: uint64;
|
|
}
|
|
|
|
table F64Value {
|
|
value: float64;
|
|
}
|
|
|
|
table BoolValue {
|
|
value: bool;
|
|
}
|
|
|
|
table StringValue {
|
|
value: string;
|
|
}
|
|
|
|
union PointValue {
|
|
I64Value,
|
|
U64Value,
|
|
F64Value,
|
|
BoolValue,
|
|
StringValue
|
|
}
|
|
|
|
table Point {
|
|
key: string;
|
|
time: int64;
|
|
value: PointValue;
|
|
}
|
|
|
|
table Delete {
|
|
predicate: string;
|
|
start_time: int64;
|
|
stop_time: int64;
|
|
}
|
|
|
|
table WriteBufferBatch {
|
|
entries: [WriteBufferEntry];
|
|
}
|
|
|
|
table WriteBufferEntry {
|
|
partition_key: string;
|
|
table_batches: [TableWriteBatch];
|
|
delete: WriteBufferDelete;
|
|
}
|
|
|
|
enum ColumnType : byte { I64, U64, F64, Tag, String, Bool }
|
|
|
|
table TableWriteBatch {
|
|
name: string;
|
|
rows: [Row];
|
|
}
|
|
|
|
table Row {
|
|
values: [Value];
|
|
}
|
|
|
|
table TagValue {
|
|
value: string;
|
|
}
|
|
|
|
union ColumnValue {
|
|
TagValue,
|
|
I64Value,
|
|
U64Value,
|
|
F64Value,
|
|
BoolValue,
|
|
StringValue
|
|
}
|
|
|
|
table Value {
|
|
column: string;
|
|
value: ColumnValue;
|
|
}
|
|
|
|
table WriteBufferDelete {
|
|
table_name: string;
|
|
predicate: string;
|
|
}
|