diff --git a/meta/src/meta/grammar.y b/meta/src/meta/grammar.y index 72732151..9b96f68d 100644 --- a/meta/src/meta/grammar.y +++ b/meta/src/meta/grammar.y @@ -1314,6 +1314,7 @@ def default_configure() -> transactions.Configure: return transactions.Configure( semantics_version=0, ivm_config=ivm_config, + optimization_level=transactions.OptimizationLevel.OPTIMIZATION_LEVEL_DEFAULT, ) def construct_configure(config_dict: Sequence[Tuple[String, logic.Value]]) -> transactions.Configure: @@ -1332,9 +1333,24 @@ def construct_configure(config_dict: Sequence[Tuple[String, logic.Value]]) -> tr maintenance_level = transactions.MaintenanceLevel.MAINTENANCE_LEVEL_OFF ivm_config: transactions.IVMConfig = transactions.IVMConfig(level=maintenance_level) semantics_version: int = _extract_value_int64(builtin.dict_get(config, "semantics_version"), 0) + + optimization_level_val: Optional[logic.Value] = builtin.dict_get(config, "optimization_level") + optimization_level: transactions.OptimizationLevel = transactions.OptimizationLevel.OPTIMIZATION_LEVEL_DEFAULT + if (optimization_level_val is not None + and builtin.has_proto_field(optimization_level_val, 'string_value')): + if optimization_level_val.string_value == "default": + optimization_level = transactions.OptimizationLevel.OPTIMIZATION_LEVEL_DEFAULT + elif optimization_level_val.string_value == "conservative": + optimization_level = transactions.OptimizationLevel.OPTIMIZATION_LEVEL_CONSERVATIVE + elif optimization_level_val.string_value == "aggressive": + optimization_level = transactions.OptimizationLevel.OPTIMIZATION_LEVEL_AGGRESSIVE + else: + optimization_level = transactions.OptimizationLevel.OPTIMIZATION_LEVEL_DEFAULT + return transactions.Configure( semantics_version=semantics_version, ivm_config=ivm_config, + optimization_level=optimization_level, ) def construct_export_csv_config( @@ -1414,6 +1430,12 @@ def deconstruct_configure(msg: transactions.Configure) -> List[Tuple[String, log builtin.list_push(result, builtin.tuple("ivm.maintenance_level", _make_value_string("all"))) elif msg.ivm_config.level == transactions.MaintenanceLevel.MAINTENANCE_LEVEL_OFF: builtin.list_push(result, builtin.tuple("ivm.maintenance_level", _make_value_string("off"))) + if msg.optimization_level == transactions.OptimizationLevel.OPTIMIZATION_LEVEL_DEFAULT: + builtin.list_push(result, builtin.tuple("optimization_level", _make_value_string("default"))) + elif msg.optimization_level == transactions.OptimizationLevel.OPTIMIZATION_LEVEL_CONSERVATIVE: + builtin.list_push(result, builtin.tuple("optimization_level", _make_value_string("conservative"))) + elif msg.optimization_level == transactions.OptimizationLevel.OPTIMIZATION_LEVEL_AGGRESSIVE: + builtin.list_push(result, builtin.tuple("optimization_level", _make_value_string("aggressive"))) builtin.list_push(result, builtin.tuple("semantics_version", _make_value_int64(msg.semantics_version))) return builtin.list_sort(result) diff --git a/proto/relationalai/lqp/v1/transactions.proto b/proto/relationalai/lqp/v1/transactions.proto index 6e77b12c..50ac7b07 100644 --- a/proto/relationalai/lqp/v1/transactions.proto +++ b/proto/relationalai/lqp/v1/transactions.proto @@ -16,6 +16,7 @@ message Transaction { message Configure { int64 semantics_version = 1; IVMConfig ivm_config = 2; + OptimizationLevel optimization_level = 3; } message IVMConfig { @@ -29,6 +30,13 @@ enum MaintenanceLevel { MAINTENANCE_LEVEL_ALL = 3; } +enum OptimizationLevel { + OPTIMIZATION_LEVEL_UNSPECIFIED = 0; + OPTIMIZATION_LEVEL_DEFAULT = 1; + OPTIMIZATION_LEVEL_CONSERVATIVE = 2; + OPTIMIZATION_LEVEL_AGGRESSIVE = 3; +} + message Sync { repeated FragmentId fragments = 1; } diff --git a/sdks/go/src/lqp/v1/transactions.pb.go b/sdks/go/src/lqp/v1/transactions.pb.go index ee34b3c6..eb11a05b 100644 --- a/sdks/go/src/lqp/v1/transactions.pb.go +++ b/sdks/go/src/lqp/v1/transactions.pb.go @@ -73,6 +73,58 @@ func (MaintenanceLevel) EnumDescriptor() ([]byte, []int) { return file_relationalai_lqp_v1_transactions_proto_rawDescGZIP(), []int{0} } +type OptimizationLevel int32 + +const ( + OptimizationLevel_OPTIMIZATION_LEVEL_UNSPECIFIED OptimizationLevel = 0 + OptimizationLevel_OPTIMIZATION_LEVEL_DEFAULT OptimizationLevel = 1 + OptimizationLevel_OPTIMIZATION_LEVEL_CONSERVATIVE OptimizationLevel = 2 + OptimizationLevel_OPTIMIZATION_LEVEL_AGGRESSIVE OptimizationLevel = 3 +) + +// Enum value maps for OptimizationLevel. +var ( + OptimizationLevel_name = map[int32]string{ + 0: "OPTIMIZATION_LEVEL_UNSPECIFIED", + 1: "OPTIMIZATION_LEVEL_DEFAULT", + 2: "OPTIMIZATION_LEVEL_CONSERVATIVE", + 3: "OPTIMIZATION_LEVEL_AGGRESSIVE", + } + OptimizationLevel_value = map[string]int32{ + "OPTIMIZATION_LEVEL_UNSPECIFIED": 0, + "OPTIMIZATION_LEVEL_DEFAULT": 1, + "OPTIMIZATION_LEVEL_CONSERVATIVE": 2, + "OPTIMIZATION_LEVEL_AGGRESSIVE": 3, + } +) + +func (x OptimizationLevel) Enum() *OptimizationLevel { + p := new(OptimizationLevel) + *p = x + return p +} + +func (x OptimizationLevel) String() string { + return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) +} + +func (OptimizationLevel) Descriptor() protoreflect.EnumDescriptor { + return file_relationalai_lqp_v1_transactions_proto_enumTypes[1].Descriptor() +} + +func (OptimizationLevel) Type() protoreflect.EnumType { + return &file_relationalai_lqp_v1_transactions_proto_enumTypes[1] +} + +func (x OptimizationLevel) Number() protoreflect.EnumNumber { + return protoreflect.EnumNumber(x) +} + +// Deprecated: Use OptimizationLevel.Descriptor instead. +func (OptimizationLevel) EnumDescriptor() ([]byte, []int) { + return file_relationalai_lqp_v1_transactions_proto_rawDescGZIP(), []int{1} +} + type Transaction struct { state protoimpl.MessageState `protogen:"open.v1"` Epochs []*Epoch `protobuf:"bytes,1,rep,name=epochs,proto3" json:"epochs,omitempty"` @@ -134,11 +186,12 @@ func (x *Transaction) GetSync() *Sync { } type Configure struct { - state protoimpl.MessageState `protogen:"open.v1"` - SemanticsVersion int64 `protobuf:"varint,1,opt,name=semantics_version,json=semanticsVersion,proto3" json:"semantics_version,omitempty"` - IvmConfig *IVMConfig `protobuf:"bytes,2,opt,name=ivm_config,json=ivmConfig,proto3" json:"ivm_config,omitempty"` - unknownFields protoimpl.UnknownFields - sizeCache protoimpl.SizeCache + state protoimpl.MessageState `protogen:"open.v1"` + SemanticsVersion int64 `protobuf:"varint,1,opt,name=semantics_version,json=semanticsVersion,proto3" json:"semantics_version,omitempty"` + IvmConfig *IVMConfig `protobuf:"bytes,2,opt,name=ivm_config,json=ivmConfig,proto3" json:"ivm_config,omitempty"` + OptimizationLevel OptimizationLevel `protobuf:"varint,3,opt,name=optimization_level,json=optimizationLevel,proto3,enum=relationalai.lqp.v1.OptimizationLevel" json:"optimization_level,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } func (x *Configure) Reset() { @@ -185,6 +238,13 @@ func (x *Configure) GetIvmConfig() *IVMConfig { return nil } +func (x *Configure) GetOptimizationLevel() OptimizationLevel { + if x != nil { + return x.OptimizationLevel + } + return OptimizationLevel_OPTIMIZATION_LEVEL_UNSPECIFIED +} + type IVMConfig struct { state protoimpl.MessageState `protogen:"open.v1"` Level MaintenanceLevel `protobuf:"varint,1,opt,name=level,proto3,enum=relationalai.lqp.v1.MaintenanceLevel" json:"level,omitempty"` @@ -1392,202 +1452,218 @@ var file_relationalai_lqp_v1_transactions_proto_rawDesc = string([]byte{ 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x61, 0x69, 0x2e, 0x6c, 0x71, 0x70, 0x2e, 0x76, 0x31, 0x2e, 0x53, 0x79, 0x6e, 0x63, 0x48, 0x00, 0x52, 0x04, 0x73, 0x79, 0x6e, 0x63, 0x88, 0x01, 0x01, 0x42, 0x07, 0x0a, 0x05, 0x5f, 0x73, 0x79, - 0x6e, 0x63, 0x22, 0x77, 0x0a, 0x09, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x65, 0x12, - 0x2b, 0x0a, 0x11, 0x73, 0x65, 0x6d, 0x61, 0x6e, 0x74, 0x69, 0x63, 0x73, 0x5f, 0x76, 0x65, 0x72, - 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x10, 0x73, 0x65, 0x6d, 0x61, - 0x6e, 0x74, 0x69, 0x63, 0x73, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x3d, 0x0a, 0x0a, - 0x69, 0x76, 0x6d, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, - 0x32, 0x1e, 0x2e, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x61, 0x69, 0x2e, - 0x6c, 0x71, 0x70, 0x2e, 0x76, 0x31, 0x2e, 0x49, 0x56, 0x4d, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, - 0x52, 0x09, 0x69, 0x76, 0x6d, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x22, 0x48, 0x0a, 0x09, 0x49, - 0x56, 0x4d, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x3b, 0x0a, 0x05, 0x6c, 0x65, 0x76, 0x65, - 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x25, 0x2e, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69, - 0x6f, 0x6e, 0x61, 0x6c, 0x61, 0x69, 0x2e, 0x6c, 0x71, 0x70, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x61, - 0x69, 0x6e, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x63, 0x65, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x52, 0x05, - 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x22, 0x45, 0x0a, 0x04, 0x53, 0x79, 0x6e, 0x63, 0x12, 0x3d, 0x0a, - 0x09, 0x66, 0x72, 0x61, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, - 0x32, 0x1f, 0x2e, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x61, 0x69, 0x2e, - 0x6c, 0x71, 0x70, 0x2e, 0x76, 0x31, 0x2e, 0x46, 0x72, 0x61, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x49, - 0x64, 0x52, 0x09, 0x66, 0x72, 0x61, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x22, 0x6c, 0x0a, 0x05, - 0x45, 0x70, 0x6f, 0x63, 0x68, 0x12, 0x32, 0x0a, 0x06, 0x77, 0x72, 0x69, 0x74, 0x65, 0x73, 0x18, - 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, - 0x61, 0x6c, 0x61, 0x69, 0x2e, 0x6c, 0x71, 0x70, 0x2e, 0x76, 0x31, 0x2e, 0x57, 0x72, 0x69, 0x74, - 0x65, 0x52, 0x06, 0x77, 0x72, 0x69, 0x74, 0x65, 0x73, 0x12, 0x2f, 0x0a, 0x05, 0x72, 0x65, 0x61, - 0x64, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x72, 0x65, 0x6c, 0x61, 0x74, - 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x61, 0x69, 0x2e, 0x6c, 0x71, 0x70, 0x2e, 0x76, 0x31, 0x2e, 0x52, - 0x65, 0x61, 0x64, 0x52, 0x05, 0x72, 0x65, 0x61, 0x64, 0x73, 0x22, 0x86, 0x02, 0x0a, 0x05, 0x57, - 0x72, 0x69, 0x74, 0x65, 0x12, 0x35, 0x0a, 0x06, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x61, - 0x6c, 0x61, 0x69, 0x2e, 0x6c, 0x71, 0x70, 0x2e, 0x76, 0x31, 0x2e, 0x44, 0x65, 0x66, 0x69, 0x6e, - 0x65, 0x48, 0x00, 0x52, 0x06, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x12, 0x3b, 0x0a, 0x08, 0x75, - 0x6e, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1d, 0x2e, + 0x6e, 0x63, 0x22, 0xce, 0x01, 0x0a, 0x09, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x65, + 0x12, 0x2b, 0x0a, 0x11, 0x73, 0x65, 0x6d, 0x61, 0x6e, 0x74, 0x69, 0x63, 0x73, 0x5f, 0x76, 0x65, + 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x10, 0x73, 0x65, 0x6d, + 0x61, 0x6e, 0x74, 0x69, 0x63, 0x73, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x3d, 0x0a, + 0x0a, 0x69, 0x76, 0x6d, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x0b, 0x32, 0x1e, 0x2e, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x61, 0x69, + 0x2e, 0x6c, 0x71, 0x70, 0x2e, 0x76, 0x31, 0x2e, 0x49, 0x56, 0x4d, 0x43, 0x6f, 0x6e, 0x66, 0x69, + 0x67, 0x52, 0x09, 0x69, 0x76, 0x6d, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x55, 0x0a, 0x12, + 0x6f, 0x70, 0x74, 0x69, 0x6d, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x6c, 0x65, 0x76, + 0x65, 0x6c, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x26, 0x2e, 0x72, 0x65, 0x6c, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x61, 0x69, 0x2e, 0x6c, 0x71, 0x70, 0x2e, 0x76, 0x31, 0x2e, 0x4f, + 0x70, 0x74, 0x69, 0x6d, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4c, 0x65, 0x76, 0x65, 0x6c, + 0x52, 0x11, 0x6f, 0x70, 0x74, 0x69, 0x6d, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4c, 0x65, + 0x76, 0x65, 0x6c, 0x22, 0x48, 0x0a, 0x09, 0x49, 0x56, 0x4d, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, + 0x12, 0x3b, 0x0a, 0x05, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, + 0x25, 0x2e, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x61, 0x69, 0x2e, 0x6c, + 0x71, 0x70, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x61, 0x69, 0x6e, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x63, + 0x65, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x52, 0x05, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x22, 0x45, 0x0a, + 0x04, 0x53, 0x79, 0x6e, 0x63, 0x12, 0x3d, 0x0a, 0x09, 0x66, 0x72, 0x61, 0x67, 0x6d, 0x65, 0x6e, + 0x74, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x72, 0x65, 0x6c, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x61, 0x69, 0x2e, 0x6c, 0x71, 0x70, 0x2e, 0x76, 0x31, 0x2e, 0x46, + 0x72, 0x61, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x52, 0x09, 0x66, 0x72, 0x61, 0x67, 0x6d, + 0x65, 0x6e, 0x74, 0x73, 0x22, 0x6c, 0x0a, 0x05, 0x45, 0x70, 0x6f, 0x63, 0x68, 0x12, 0x32, 0x0a, + 0x06, 0x77, 0x72, 0x69, 0x74, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x61, 0x69, 0x2e, 0x6c, 0x71, 0x70, - 0x2e, 0x76, 0x31, 0x2e, 0x55, 0x6e, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x48, 0x00, 0x52, 0x08, - 0x75, 0x6e, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x12, 0x38, 0x0a, 0x07, 0x63, 0x6f, 0x6e, 0x74, - 0x65, 0x78, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x72, 0x65, 0x6c, 0x61, - 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x61, 0x69, 0x2e, 0x6c, 0x71, 0x70, 0x2e, 0x76, 0x31, 0x2e, - 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x48, 0x00, 0x52, 0x07, 0x63, 0x6f, 0x6e, 0x74, 0x65, - 0x78, 0x74, 0x12, 0x3b, 0x0a, 0x08, 0x73, 0x6e, 0x61, 0x70, 0x73, 0x68, 0x6f, 0x74, 0x18, 0x05, - 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x61, - 0x6c, 0x61, 0x69, 0x2e, 0x6c, 0x71, 0x70, 0x2e, 0x76, 0x31, 0x2e, 0x53, 0x6e, 0x61, 0x70, 0x73, - 0x68, 0x6f, 0x74, 0x48, 0x00, 0x52, 0x08, 0x73, 0x6e, 0x61, 0x70, 0x73, 0x68, 0x6f, 0x74, 0x42, - 0x0c, 0x0a, 0x0a, 0x77, 0x72, 0x69, 0x74, 0x65, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x4a, 0x04, 0x08, - 0x04, 0x10, 0x05, 0x22, 0x43, 0x0a, 0x06, 0x44, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x12, 0x39, 0x0a, - 0x08, 0x66, 0x72, 0x61, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, - 0x1d, 0x2e, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x61, 0x69, 0x2e, 0x6c, - 0x71, 0x70, 0x2e, 0x76, 0x31, 0x2e, 0x46, 0x72, 0x61, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x08, - 0x66, 0x72, 0x61, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x22, 0x4c, 0x0a, 0x08, 0x55, 0x6e, 0x64, 0x65, - 0x66, 0x69, 0x6e, 0x65, 0x12, 0x40, 0x0a, 0x0b, 0x66, 0x72, 0x61, 0x67, 0x6d, 0x65, 0x6e, 0x74, - 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x72, 0x65, 0x6c, 0x61, - 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x61, 0x69, 0x2e, 0x6c, 0x71, 0x70, 0x2e, 0x76, 0x31, 0x2e, - 0x46, 0x72, 0x61, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x52, 0x0a, 0x66, 0x72, 0x61, 0x67, - 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x22, 0x48, 0x0a, 0x07, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78, - 0x74, 0x12, 0x3d, 0x0a, 0x09, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x01, - 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x61, - 0x6c, 0x61, 0x69, 0x2e, 0x6c, 0x71, 0x70, 0x2e, 0x76, 0x31, 0x2e, 0x52, 0x65, 0x6c, 0x61, 0x74, - 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x52, 0x09, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, - 0x22, 0x86, 0x01, 0x0a, 0x0f, 0x53, 0x6e, 0x61, 0x70, 0x73, 0x68, 0x6f, 0x74, 0x4d, 0x61, 0x70, - 0x70, 0x69, 0x6e, 0x67, 0x12, 0x29, 0x0a, 0x10, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, - 0x69, 0x6f, 0x6e, 0x5f, 0x70, 0x61, 0x74, 0x68, 0x18, 0x01, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0f, - 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x61, 0x74, 0x68, 0x12, - 0x48, 0x0a, 0x0f, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69, - 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x72, 0x65, 0x6c, 0x61, 0x74, - 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x61, 0x69, 0x2e, 0x6c, 0x71, 0x70, 0x2e, 0x76, 0x31, 0x2e, 0x52, - 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x52, 0x0e, 0x73, 0x6f, 0x75, 0x72, 0x63, - 0x65, 0x52, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x4c, 0x0a, 0x08, 0x53, 0x6e, 0x61, - 0x70, 0x73, 0x68, 0x6f, 0x74, 0x12, 0x40, 0x0a, 0x08, 0x6d, 0x61, 0x70, 0x70, 0x69, 0x6e, 0x67, - 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69, - 0x6f, 0x6e, 0x61, 0x6c, 0x61, 0x69, 0x2e, 0x6c, 0x71, 0x70, 0x2e, 0x76, 0x31, 0x2e, 0x53, 0x6e, - 0x61, 0x70, 0x73, 0x68, 0x6f, 0x74, 0x4d, 0x61, 0x70, 0x70, 0x69, 0x6e, 0x67, 0x52, 0x08, 0x6d, - 0x61, 0x70, 0x70, 0x69, 0x6e, 0x67, 0x73, 0x22, 0xc8, 0x05, 0x0a, 0x0f, 0x45, 0x78, 0x70, 0x6f, - 0x72, 0x74, 0x43, 0x53, 0x56, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x12, 0x0a, 0x04, 0x70, - 0x61, 0x74, 0x68, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x70, 0x61, 0x74, 0x68, 0x12, - 0x43, 0x0a, 0x0a, 0x63, 0x73, 0x76, 0x5f, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x18, 0x0a, 0x20, - 0x01, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, - 0x61, 0x69, 0x2e, 0x6c, 0x71, 0x70, 0x2e, 0x76, 0x31, 0x2e, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, - 0x43, 0x53, 0x56, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x52, 0x09, 0x63, 0x73, 0x76, 0x53, 0x6f, - 0x75, 0x72, 0x63, 0x65, 0x12, 0x3d, 0x0a, 0x0a, 0x63, 0x73, 0x76, 0x5f, 0x63, 0x6f, 0x6e, 0x66, - 0x69, 0x67, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x72, 0x65, 0x6c, 0x61, 0x74, - 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x61, 0x69, 0x2e, 0x6c, 0x71, 0x70, 0x2e, 0x76, 0x31, 0x2e, 0x43, - 0x53, 0x56, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x09, 0x63, 0x73, 0x76, 0x43, 0x6f, 0x6e, - 0x66, 0x69, 0x67, 0x12, 0x47, 0x0a, 0x0c, 0x64, 0x61, 0x74, 0x61, 0x5f, 0x63, 0x6f, 0x6c, 0x75, - 0x6d, 0x6e, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x72, 0x65, 0x6c, 0x61, - 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x61, 0x69, 0x2e, 0x6c, 0x71, 0x70, 0x2e, 0x76, 0x31, 0x2e, - 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x43, 0x53, 0x56, 0x43, 0x6f, 0x6c, 0x75, 0x6d, 0x6e, 0x52, - 0x0b, 0x64, 0x61, 0x74, 0x61, 0x43, 0x6f, 0x6c, 0x75, 0x6d, 0x6e, 0x73, 0x12, 0x2a, 0x0a, 0x0e, - 0x70, 0x61, 0x72, 0x74, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x03, - 0x20, 0x01, 0x28, 0x03, 0x48, 0x00, 0x52, 0x0d, 0x70, 0x61, 0x72, 0x74, 0x69, 0x74, 0x69, 0x6f, - 0x6e, 0x53, 0x69, 0x7a, 0x65, 0x88, 0x01, 0x01, 0x12, 0x25, 0x0a, 0x0b, 0x63, 0x6f, 0x6d, 0x70, - 0x72, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x48, 0x01, 0x52, - 0x0b, 0x63, 0x6f, 0x6d, 0x70, 0x72, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x88, 0x01, 0x01, 0x12, - 0x2f, 0x0a, 0x11, 0x73, 0x79, 0x6e, 0x74, 0x61, 0x78, 0x5f, 0x68, 0x65, 0x61, 0x64, 0x65, 0x72, - 0x5f, 0x72, 0x6f, 0x77, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x48, 0x02, 0x52, 0x0f, 0x73, 0x79, - 0x6e, 0x74, 0x61, 0x78, 0x48, 0x65, 0x61, 0x64, 0x65, 0x72, 0x52, 0x6f, 0x77, 0x88, 0x01, 0x01, - 0x12, 0x37, 0x0a, 0x15, 0x73, 0x79, 0x6e, 0x74, 0x61, 0x78, 0x5f, 0x6d, 0x69, 0x73, 0x73, 0x69, - 0x6e, 0x67, 0x5f, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x48, - 0x03, 0x52, 0x13, 0x73, 0x79, 0x6e, 0x74, 0x61, 0x78, 0x4d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, - 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x88, 0x01, 0x01, 0x12, 0x26, 0x0a, 0x0c, 0x73, 0x79, 0x6e, - 0x74, 0x61, 0x78, 0x5f, 0x64, 0x65, 0x6c, 0x69, 0x6d, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x48, - 0x04, 0x52, 0x0b, 0x73, 0x79, 0x6e, 0x74, 0x61, 0x78, 0x44, 0x65, 0x6c, 0x69, 0x6d, 0x88, 0x01, - 0x01, 0x12, 0x2e, 0x0a, 0x10, 0x73, 0x79, 0x6e, 0x74, 0x61, 0x78, 0x5f, 0x71, 0x75, 0x6f, 0x74, - 0x65, 0x63, 0x68, 0x61, 0x72, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x48, 0x05, 0x52, 0x0f, 0x73, - 0x79, 0x6e, 0x74, 0x61, 0x78, 0x51, 0x75, 0x6f, 0x74, 0x65, 0x63, 0x68, 0x61, 0x72, 0x88, 0x01, - 0x01, 0x12, 0x30, 0x0a, 0x11, 0x73, 0x79, 0x6e, 0x74, 0x61, 0x78, 0x5f, 0x65, 0x73, 0x63, 0x61, - 0x70, 0x65, 0x63, 0x68, 0x61, 0x72, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x48, 0x06, 0x52, 0x10, - 0x73, 0x79, 0x6e, 0x74, 0x61, 0x78, 0x45, 0x73, 0x63, 0x61, 0x70, 0x65, 0x63, 0x68, 0x61, 0x72, - 0x88, 0x01, 0x01, 0x42, 0x11, 0x0a, 0x0f, 0x5f, 0x70, 0x61, 0x72, 0x74, 0x69, 0x74, 0x69, 0x6f, - 0x6e, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x42, 0x0e, 0x0a, 0x0c, 0x5f, 0x63, 0x6f, 0x6d, 0x70, 0x72, - 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x42, 0x14, 0x0a, 0x12, 0x5f, 0x73, 0x79, 0x6e, 0x74, 0x61, - 0x78, 0x5f, 0x68, 0x65, 0x61, 0x64, 0x65, 0x72, 0x5f, 0x72, 0x6f, 0x77, 0x42, 0x18, 0x0a, 0x16, - 0x5f, 0x73, 0x79, 0x6e, 0x74, 0x61, 0x78, 0x5f, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x5f, - 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x42, 0x0f, 0x0a, 0x0d, 0x5f, 0x73, 0x79, 0x6e, 0x74, 0x61, - 0x78, 0x5f, 0x64, 0x65, 0x6c, 0x69, 0x6d, 0x42, 0x13, 0x0a, 0x11, 0x5f, 0x73, 0x79, 0x6e, 0x74, - 0x61, 0x78, 0x5f, 0x71, 0x75, 0x6f, 0x74, 0x65, 0x63, 0x68, 0x61, 0x72, 0x42, 0x14, 0x0a, 0x12, - 0x5f, 0x73, 0x79, 0x6e, 0x74, 0x61, 0x78, 0x5f, 0x65, 0x73, 0x63, 0x61, 0x70, 0x65, 0x63, 0x68, - 0x61, 0x72, 0x22, 0x74, 0x0a, 0x0f, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x43, 0x53, 0x56, 0x43, - 0x6f, 0x6c, 0x75, 0x6d, 0x6e, 0x12, 0x1f, 0x0a, 0x0b, 0x63, 0x6f, 0x6c, 0x75, 0x6d, 0x6e, 0x5f, - 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x63, 0x6f, 0x6c, 0x75, - 0x6d, 0x6e, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x40, 0x0a, 0x0b, 0x63, 0x6f, 0x6c, 0x75, 0x6d, 0x6e, - 0x5f, 0x64, 0x61, 0x74, 0x61, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x72, 0x65, + 0x2e, 0x76, 0x31, 0x2e, 0x57, 0x72, 0x69, 0x74, 0x65, 0x52, 0x06, 0x77, 0x72, 0x69, 0x74, 0x65, + 0x73, 0x12, 0x2f, 0x0a, 0x05, 0x72, 0x65, 0x61, 0x64, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, + 0x32, 0x19, 0x2e, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x61, 0x69, 0x2e, + 0x6c, 0x71, 0x70, 0x2e, 0x76, 0x31, 0x2e, 0x52, 0x65, 0x61, 0x64, 0x52, 0x05, 0x72, 0x65, 0x61, + 0x64, 0x73, 0x22, 0x86, 0x02, 0x0a, 0x05, 0x57, 0x72, 0x69, 0x74, 0x65, 0x12, 0x35, 0x0a, 0x06, + 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x72, + 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x61, 0x69, 0x2e, 0x6c, 0x71, 0x70, 0x2e, + 0x76, 0x31, 0x2e, 0x44, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x48, 0x00, 0x52, 0x06, 0x64, 0x65, 0x66, + 0x69, 0x6e, 0x65, 0x12, 0x3b, 0x0a, 0x08, 0x75, 0x6e, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x61, 0x6c, 0x61, 0x69, 0x2e, 0x6c, 0x71, 0x70, 0x2e, 0x76, 0x31, 0x2e, 0x55, 0x6e, 0x64, 0x65, + 0x66, 0x69, 0x6e, 0x65, 0x48, 0x00, 0x52, 0x08, 0x75, 0x6e, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, + 0x12, 0x38, 0x0a, 0x07, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, + 0x0b, 0x32, 0x1c, 0x2e, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x61, 0x69, + 0x2e, 0x6c, 0x71, 0x70, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x48, + 0x00, 0x52, 0x07, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x12, 0x3b, 0x0a, 0x08, 0x73, 0x6e, + 0x61, 0x70, 0x73, 0x68, 0x6f, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x72, + 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x61, 0x69, 0x2e, 0x6c, 0x71, 0x70, 0x2e, + 0x76, 0x31, 0x2e, 0x53, 0x6e, 0x61, 0x70, 0x73, 0x68, 0x6f, 0x74, 0x48, 0x00, 0x52, 0x08, 0x73, + 0x6e, 0x61, 0x70, 0x73, 0x68, 0x6f, 0x74, 0x42, 0x0c, 0x0a, 0x0a, 0x77, 0x72, 0x69, 0x74, 0x65, + 0x5f, 0x74, 0x79, 0x70, 0x65, 0x4a, 0x04, 0x08, 0x04, 0x10, 0x05, 0x22, 0x43, 0x0a, 0x06, 0x44, + 0x65, 0x66, 0x69, 0x6e, 0x65, 0x12, 0x39, 0x0a, 0x08, 0x66, 0x72, 0x61, 0x67, 0x6d, 0x65, 0x6e, + 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x61, 0x6c, 0x61, 0x69, 0x2e, 0x6c, 0x71, 0x70, 0x2e, 0x76, 0x31, 0x2e, 0x46, 0x72, + 0x61, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x08, 0x66, 0x72, 0x61, 0x67, 0x6d, 0x65, 0x6e, 0x74, + 0x22, 0x4c, 0x0a, 0x08, 0x55, 0x6e, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x12, 0x40, 0x0a, 0x0b, + 0x66, 0x72, 0x61, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x0b, 0x32, 0x1f, 0x2e, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x61, 0x69, + 0x2e, 0x6c, 0x71, 0x70, 0x2e, 0x76, 0x31, 0x2e, 0x46, 0x72, 0x61, 0x67, 0x6d, 0x65, 0x6e, 0x74, + 0x49, 0x64, 0x52, 0x0a, 0x66, 0x72, 0x61, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x22, 0x48, + 0x0a, 0x07, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x12, 0x3d, 0x0a, 0x09, 0x72, 0x65, 0x6c, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x72, + 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x61, 0x69, 0x2e, 0x6c, 0x71, 0x70, 0x2e, + 0x76, 0x31, 0x2e, 0x52, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x52, 0x09, 0x72, + 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x22, 0x86, 0x01, 0x0a, 0x0f, 0x53, 0x6e, 0x61, + 0x70, 0x73, 0x68, 0x6f, 0x74, 0x4d, 0x61, 0x70, 0x70, 0x69, 0x6e, 0x67, 0x12, 0x29, 0x0a, 0x10, + 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x70, 0x61, 0x74, 0x68, + 0x18, 0x01, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0f, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x50, 0x61, 0x74, 0x68, 0x12, 0x48, 0x0a, 0x0f, 0x73, 0x6f, 0x75, 0x72, 0x63, + 0x65, 0x5f, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, + 0x32, 0x1f, 0x2e, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x61, 0x69, 0x2e, + 0x6c, 0x71, 0x70, 0x2e, 0x76, 0x31, 0x2e, 0x52, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, + 0x64, 0x52, 0x0e, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x52, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x22, 0x4c, 0x0a, 0x08, 0x53, 0x6e, 0x61, 0x70, 0x73, 0x68, 0x6f, 0x74, 0x12, 0x40, 0x0a, + 0x08, 0x6d, 0x61, 0x70, 0x70, 0x69, 0x6e, 0x67, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, + 0x24, 0x2e, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x61, 0x69, 0x2e, 0x6c, + 0x71, 0x70, 0x2e, 0x76, 0x31, 0x2e, 0x53, 0x6e, 0x61, 0x70, 0x73, 0x68, 0x6f, 0x74, 0x4d, 0x61, + 0x70, 0x70, 0x69, 0x6e, 0x67, 0x52, 0x08, 0x6d, 0x61, 0x70, 0x70, 0x69, 0x6e, 0x67, 0x73, 0x22, + 0xc8, 0x05, 0x0a, 0x0f, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x43, 0x53, 0x56, 0x43, 0x6f, 0x6e, + 0x66, 0x69, 0x67, 0x12, 0x12, 0x0a, 0x04, 0x70, 0x61, 0x74, 0x68, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x04, 0x70, 0x61, 0x74, 0x68, 0x12, 0x43, 0x0a, 0x0a, 0x63, 0x73, 0x76, 0x5f, 0x73, + 0x6f, 0x75, 0x72, 0x63, 0x65, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x61, 0x69, 0x2e, 0x6c, 0x71, 0x70, 0x2e, 0x76, - 0x31, 0x2e, 0x52, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x52, 0x0a, 0x63, 0x6f, - 0x6c, 0x75, 0x6d, 0x6e, 0x44, 0x61, 0x74, 0x61, 0x22, 0x52, 0x0a, 0x10, 0x45, 0x78, 0x70, 0x6f, - 0x72, 0x74, 0x43, 0x53, 0x56, 0x43, 0x6f, 0x6c, 0x75, 0x6d, 0x6e, 0x73, 0x12, 0x3e, 0x0a, 0x07, - 0x63, 0x6f, 0x6c, 0x75, 0x6d, 0x6e, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x24, 0x2e, - 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x61, 0x69, 0x2e, 0x6c, 0x71, 0x70, - 0x2e, 0x76, 0x31, 0x2e, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x43, 0x53, 0x56, 0x43, 0x6f, 0x6c, - 0x75, 0x6d, 0x6e, 0x52, 0x07, 0x63, 0x6f, 0x6c, 0x75, 0x6d, 0x6e, 0x73, 0x22, 0xa9, 0x01, 0x0a, - 0x0f, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x43, 0x53, 0x56, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, - 0x12, 0x48, 0x0a, 0x0b, 0x67, 0x6e, 0x66, 0x5f, 0x63, 0x6f, 0x6c, 0x75, 0x6d, 0x6e, 0x73, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x31, 0x2e, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x43, 0x53, 0x56, 0x53, 0x6f, 0x75, 0x72, 0x63, + 0x65, 0x52, 0x09, 0x63, 0x73, 0x76, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x12, 0x3d, 0x0a, 0x0a, + 0x63, 0x73, 0x76, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0b, + 0x32, 0x1e, 0x2e, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x61, 0x69, 0x2e, + 0x6c, 0x71, 0x70, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x53, 0x56, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, + 0x52, 0x09, 0x63, 0x73, 0x76, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x47, 0x0a, 0x0c, 0x64, + 0x61, 0x74, 0x61, 0x5f, 0x63, 0x6f, 0x6c, 0x75, 0x6d, 0x6e, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, + 0x0b, 0x32, 0x24, 0x2e, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x61, 0x69, + 0x2e, 0x6c, 0x71, 0x70, 0x2e, 0x76, 0x31, 0x2e, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x43, 0x53, + 0x56, 0x43, 0x6f, 0x6c, 0x75, 0x6d, 0x6e, 0x52, 0x0b, 0x64, 0x61, 0x74, 0x61, 0x43, 0x6f, 0x6c, + 0x75, 0x6d, 0x6e, 0x73, 0x12, 0x2a, 0x0a, 0x0e, 0x70, 0x61, 0x72, 0x74, 0x69, 0x74, 0x69, 0x6f, + 0x6e, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x48, 0x00, 0x52, 0x0d, + 0x70, 0x61, 0x72, 0x74, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x69, 0x7a, 0x65, 0x88, 0x01, 0x01, + 0x12, 0x25, 0x0a, 0x0b, 0x63, 0x6f, 0x6d, 0x70, 0x72, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x18, + 0x04, 0x20, 0x01, 0x28, 0x09, 0x48, 0x01, 0x52, 0x0b, 0x63, 0x6f, 0x6d, 0x70, 0x72, 0x65, 0x73, + 0x73, 0x69, 0x6f, 0x6e, 0x88, 0x01, 0x01, 0x12, 0x2f, 0x0a, 0x11, 0x73, 0x79, 0x6e, 0x74, 0x61, + 0x78, 0x5f, 0x68, 0x65, 0x61, 0x64, 0x65, 0x72, 0x5f, 0x72, 0x6f, 0x77, 0x18, 0x05, 0x20, 0x01, + 0x28, 0x08, 0x48, 0x02, 0x52, 0x0f, 0x73, 0x79, 0x6e, 0x74, 0x61, 0x78, 0x48, 0x65, 0x61, 0x64, + 0x65, 0x72, 0x52, 0x6f, 0x77, 0x88, 0x01, 0x01, 0x12, 0x37, 0x0a, 0x15, 0x73, 0x79, 0x6e, 0x74, + 0x61, 0x78, 0x5f, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x5f, 0x73, 0x74, 0x72, 0x69, 0x6e, + 0x67, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x48, 0x03, 0x52, 0x13, 0x73, 0x79, 0x6e, 0x74, 0x61, + 0x78, 0x4d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x88, 0x01, + 0x01, 0x12, 0x26, 0x0a, 0x0c, 0x73, 0x79, 0x6e, 0x74, 0x61, 0x78, 0x5f, 0x64, 0x65, 0x6c, 0x69, + 0x6d, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x48, 0x04, 0x52, 0x0b, 0x73, 0x79, 0x6e, 0x74, 0x61, + 0x78, 0x44, 0x65, 0x6c, 0x69, 0x6d, 0x88, 0x01, 0x01, 0x12, 0x2e, 0x0a, 0x10, 0x73, 0x79, 0x6e, + 0x74, 0x61, 0x78, 0x5f, 0x71, 0x75, 0x6f, 0x74, 0x65, 0x63, 0x68, 0x61, 0x72, 0x18, 0x08, 0x20, + 0x01, 0x28, 0x09, 0x48, 0x05, 0x52, 0x0f, 0x73, 0x79, 0x6e, 0x74, 0x61, 0x78, 0x51, 0x75, 0x6f, + 0x74, 0x65, 0x63, 0x68, 0x61, 0x72, 0x88, 0x01, 0x01, 0x12, 0x30, 0x0a, 0x11, 0x73, 0x79, 0x6e, + 0x74, 0x61, 0x78, 0x5f, 0x65, 0x73, 0x63, 0x61, 0x70, 0x65, 0x63, 0x68, 0x61, 0x72, 0x18, 0x09, + 0x20, 0x01, 0x28, 0x09, 0x48, 0x06, 0x52, 0x10, 0x73, 0x79, 0x6e, 0x74, 0x61, 0x78, 0x45, 0x73, + 0x63, 0x61, 0x70, 0x65, 0x63, 0x68, 0x61, 0x72, 0x88, 0x01, 0x01, 0x42, 0x11, 0x0a, 0x0f, 0x5f, + 0x70, 0x61, 0x72, 0x74, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x42, 0x0e, + 0x0a, 0x0c, 0x5f, 0x63, 0x6f, 0x6d, 0x70, 0x72, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x42, 0x14, + 0x0a, 0x12, 0x5f, 0x73, 0x79, 0x6e, 0x74, 0x61, 0x78, 0x5f, 0x68, 0x65, 0x61, 0x64, 0x65, 0x72, + 0x5f, 0x72, 0x6f, 0x77, 0x42, 0x18, 0x0a, 0x16, 0x5f, 0x73, 0x79, 0x6e, 0x74, 0x61, 0x78, 0x5f, + 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x5f, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x42, 0x0f, + 0x0a, 0x0d, 0x5f, 0x73, 0x79, 0x6e, 0x74, 0x61, 0x78, 0x5f, 0x64, 0x65, 0x6c, 0x69, 0x6d, 0x42, + 0x13, 0x0a, 0x11, 0x5f, 0x73, 0x79, 0x6e, 0x74, 0x61, 0x78, 0x5f, 0x71, 0x75, 0x6f, 0x74, 0x65, + 0x63, 0x68, 0x61, 0x72, 0x42, 0x14, 0x0a, 0x12, 0x5f, 0x73, 0x79, 0x6e, 0x74, 0x61, 0x78, 0x5f, + 0x65, 0x73, 0x63, 0x61, 0x70, 0x65, 0x63, 0x68, 0x61, 0x72, 0x22, 0x74, 0x0a, 0x0f, 0x45, 0x78, + 0x70, 0x6f, 0x72, 0x74, 0x43, 0x53, 0x56, 0x43, 0x6f, 0x6c, 0x75, 0x6d, 0x6e, 0x12, 0x1f, 0x0a, + 0x0b, 0x63, 0x6f, 0x6c, 0x75, 0x6d, 0x6e, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x0a, 0x63, 0x6f, 0x6c, 0x75, 0x6d, 0x6e, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x40, + 0x0a, 0x0b, 0x63, 0x6f, 0x6c, 0x75, 0x6d, 0x6e, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, + 0x61, 0x69, 0x2e, 0x6c, 0x71, 0x70, 0x2e, 0x76, 0x31, 0x2e, 0x52, 0x65, 0x6c, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x49, 0x64, 0x52, 0x0a, 0x63, 0x6f, 0x6c, 0x75, 0x6d, 0x6e, 0x44, 0x61, 0x74, 0x61, + 0x22, 0x52, 0x0a, 0x10, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x43, 0x53, 0x56, 0x43, 0x6f, 0x6c, + 0x75, 0x6d, 0x6e, 0x73, 0x12, 0x3e, 0x0a, 0x07, 0x63, 0x6f, 0x6c, 0x75, 0x6d, 0x6e, 0x73, 0x18, + 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x61, 0x69, 0x2e, 0x6c, 0x71, 0x70, 0x2e, 0x76, 0x31, 0x2e, 0x45, 0x78, 0x70, 0x6f, - 0x72, 0x74, 0x43, 0x53, 0x56, 0x43, 0x6f, 0x6c, 0x75, 0x6d, 0x6e, 0x73, 0x48, 0x00, 0x52, 0x0a, - 0x67, 0x6e, 0x66, 0x43, 0x6f, 0x6c, 0x75, 0x6d, 0x6e, 0x73, 0x12, 0x3e, 0x0a, 0x09, 0x74, 0x61, - 0x62, 0x6c, 0x65, 0x5f, 0x64, 0x65, 0x66, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1f, 0x2e, + 0x72, 0x74, 0x43, 0x53, 0x56, 0x43, 0x6f, 0x6c, 0x75, 0x6d, 0x6e, 0x52, 0x07, 0x63, 0x6f, 0x6c, + 0x75, 0x6d, 0x6e, 0x73, 0x22, 0xa9, 0x01, 0x0a, 0x0f, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x43, + 0x53, 0x56, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x12, 0x48, 0x0a, 0x0b, 0x67, 0x6e, 0x66, 0x5f, + 0x63, 0x6f, 0x6c, 0x75, 0x6d, 0x6e, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x61, 0x69, 0x2e, 0x6c, 0x71, 0x70, - 0x2e, 0x76, 0x31, 0x2e, 0x52, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x48, 0x00, - 0x52, 0x08, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x44, 0x65, 0x66, 0x42, 0x0c, 0x0a, 0x0a, 0x63, 0x73, - 0x76, 0x5f, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x22, 0xa4, 0x02, 0x0a, 0x04, 0x52, 0x65, 0x61, - 0x64, 0x12, 0x35, 0x0a, 0x06, 0x64, 0x65, 0x6d, 0x61, 0x6e, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x0b, 0x32, 0x1b, 0x2e, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x61, 0x69, - 0x2e, 0x6c, 0x71, 0x70, 0x2e, 0x76, 0x31, 0x2e, 0x44, 0x65, 0x6d, 0x61, 0x6e, 0x64, 0x48, 0x00, - 0x52, 0x06, 0x64, 0x65, 0x6d, 0x61, 0x6e, 0x64, 0x12, 0x35, 0x0a, 0x06, 0x6f, 0x75, 0x74, 0x70, - 0x75, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x72, 0x65, 0x6c, 0x61, 0x74, - 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x61, 0x69, 0x2e, 0x6c, 0x71, 0x70, 0x2e, 0x76, 0x31, 0x2e, 0x4f, - 0x75, 0x74, 0x70, 0x75, 0x74, 0x48, 0x00, 0x52, 0x06, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x12, - 0x36, 0x0a, 0x07, 0x77, 0x68, 0x61, 0x74, 0x5f, 0x69, 0x66, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, - 0x32, 0x1b, 0x2e, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x61, 0x69, 0x2e, - 0x6c, 0x71, 0x70, 0x2e, 0x76, 0x31, 0x2e, 0x57, 0x68, 0x61, 0x74, 0x49, 0x66, 0x48, 0x00, 0x52, - 0x06, 0x77, 0x68, 0x61, 0x74, 0x49, 0x66, 0x12, 0x32, 0x0a, 0x05, 0x61, 0x62, 0x6f, 0x72, 0x74, - 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, - 0x6e, 0x61, 0x6c, 0x61, 0x69, 0x2e, 0x6c, 0x71, 0x70, 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x62, 0x6f, - 0x72, 0x74, 0x48, 0x00, 0x52, 0x05, 0x61, 0x62, 0x6f, 0x72, 0x74, 0x12, 0x35, 0x0a, 0x06, 0x65, - 0x78, 0x70, 0x6f, 0x72, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x72, 0x65, - 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x61, 0x69, 0x2e, 0x6c, 0x71, 0x70, 0x2e, 0x76, - 0x31, 0x2e, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x48, 0x00, 0x52, 0x06, 0x65, 0x78, 0x70, 0x6f, - 0x72, 0x74, 0x42, 0x0b, 0x0a, 0x09, 0x72, 0x65, 0x61, 0x64, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x22, - 0x4a, 0x0a, 0x06, 0x44, 0x65, 0x6d, 0x61, 0x6e, 0x64, 0x12, 0x40, 0x0a, 0x0b, 0x72, 0x65, 0x6c, - 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1f, - 0x2e, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x61, 0x69, 0x2e, 0x6c, 0x71, - 0x70, 0x2e, 0x76, 0x31, 0x2e, 0x52, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x52, - 0x0a, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x22, 0x5e, 0x0a, 0x06, 0x4f, - 0x75, 0x74, 0x70, 0x75, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x40, 0x0a, 0x0b, 0x72, 0x65, 0x6c, - 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1f, - 0x2e, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x61, 0x69, 0x2e, 0x6c, 0x71, - 0x70, 0x2e, 0x76, 0x31, 0x2e, 0x52, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x52, - 0x0a, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x22, 0x60, 0x0a, 0x06, 0x45, - 0x78, 0x70, 0x6f, 0x72, 0x74, 0x12, 0x45, 0x0a, 0x0a, 0x63, 0x73, 0x76, 0x5f, 0x63, 0x6f, 0x6e, - 0x66, 0x69, 0x67, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x72, 0x65, 0x6c, 0x61, + 0x2e, 0x76, 0x31, 0x2e, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x43, 0x53, 0x56, 0x43, 0x6f, 0x6c, + 0x75, 0x6d, 0x6e, 0x73, 0x48, 0x00, 0x52, 0x0a, 0x67, 0x6e, 0x66, 0x43, 0x6f, 0x6c, 0x75, 0x6d, + 0x6e, 0x73, 0x12, 0x3e, 0x0a, 0x09, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x64, 0x65, 0x66, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x61, 0x6c, 0x61, 0x69, 0x2e, 0x6c, 0x71, 0x70, 0x2e, 0x76, 0x31, 0x2e, 0x52, 0x65, 0x6c, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x48, 0x00, 0x52, 0x08, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x44, + 0x65, 0x66, 0x42, 0x0c, 0x0a, 0x0a, 0x63, 0x73, 0x76, 0x5f, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, + 0x22, 0xa4, 0x02, 0x0a, 0x04, 0x52, 0x65, 0x61, 0x64, 0x12, 0x35, 0x0a, 0x06, 0x64, 0x65, 0x6d, + 0x61, 0x6e, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x61, 0x69, 0x2e, 0x6c, 0x71, 0x70, 0x2e, 0x76, 0x31, 0x2e, - 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x43, 0x53, 0x56, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x48, - 0x00, 0x52, 0x09, 0x63, 0x73, 0x76, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x42, 0x0f, 0x0a, 0x0d, - 0x65, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x22, 0x52, 0x0a, - 0x06, 0x57, 0x68, 0x61, 0x74, 0x49, 0x66, 0x12, 0x16, 0x0a, 0x06, 0x62, 0x72, 0x61, 0x6e, 0x63, - 0x68, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x62, 0x72, 0x61, 0x6e, 0x63, 0x68, 0x12, - 0x30, 0x0a, 0x05, 0x65, 0x70, 0x6f, 0x63, 0x68, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, + 0x44, 0x65, 0x6d, 0x61, 0x6e, 0x64, 0x48, 0x00, 0x52, 0x06, 0x64, 0x65, 0x6d, 0x61, 0x6e, 0x64, + 0x12, 0x35, 0x0a, 0x06, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, + 0x32, 0x1b, 0x2e, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x61, 0x69, 0x2e, + 0x6c, 0x71, 0x70, 0x2e, 0x76, 0x31, 0x2e, 0x4f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x48, 0x00, 0x52, + 0x06, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x12, 0x36, 0x0a, 0x07, 0x77, 0x68, 0x61, 0x74, 0x5f, + 0x69, 0x66, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x72, 0x65, 0x6c, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x61, 0x69, 0x2e, 0x6c, 0x71, 0x70, 0x2e, 0x76, 0x31, 0x2e, 0x57, + 0x68, 0x61, 0x74, 0x49, 0x66, 0x48, 0x00, 0x52, 0x06, 0x77, 0x68, 0x61, 0x74, 0x49, 0x66, 0x12, + 0x32, 0x0a, 0x05, 0x61, 0x62, 0x6f, 0x72, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x61, 0x69, 0x2e, 0x6c, 0x71, - 0x70, 0x2e, 0x76, 0x31, 0x2e, 0x45, 0x70, 0x6f, 0x63, 0x68, 0x52, 0x05, 0x65, 0x70, 0x6f, 0x63, - 0x68, 0x22, 0x5d, 0x0a, 0x05, 0x41, 0x62, 0x6f, 0x72, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, - 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x40, - 0x0a, 0x0b, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, - 0x01, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, - 0x61, 0x69, 0x2e, 0x6c, 0x71, 0x70, 0x2e, 0x76, 0x31, 0x2e, 0x52, 0x65, 0x6c, 0x61, 0x74, 0x69, - 0x6f, 0x6e, 0x49, 0x64, 0x52, 0x0a, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, - 0x2a, 0x87, 0x01, 0x0a, 0x10, 0x4d, 0x61, 0x69, 0x6e, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x63, 0x65, - 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x12, 0x21, 0x0a, 0x1d, 0x4d, 0x41, 0x49, 0x4e, 0x54, 0x45, 0x4e, - 0x41, 0x4e, 0x43, 0x45, 0x5f, 0x4c, 0x45, 0x56, 0x45, 0x4c, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, - 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x19, 0x0a, 0x15, 0x4d, 0x41, 0x49, 0x4e, - 0x54, 0x45, 0x4e, 0x41, 0x4e, 0x43, 0x45, 0x5f, 0x4c, 0x45, 0x56, 0x45, 0x4c, 0x5f, 0x4f, 0x46, - 0x46, 0x10, 0x01, 0x12, 0x1a, 0x0a, 0x16, 0x4d, 0x41, 0x49, 0x4e, 0x54, 0x45, 0x4e, 0x41, 0x4e, - 0x43, 0x45, 0x5f, 0x4c, 0x45, 0x56, 0x45, 0x4c, 0x5f, 0x41, 0x55, 0x54, 0x4f, 0x10, 0x02, 0x12, - 0x19, 0x0a, 0x15, 0x4d, 0x41, 0x49, 0x4e, 0x54, 0x45, 0x4e, 0x41, 0x4e, 0x43, 0x45, 0x5f, 0x4c, - 0x45, 0x56, 0x45, 0x4c, 0x5f, 0x41, 0x4c, 0x4c, 0x10, 0x03, 0x42, 0x43, 0x5a, 0x41, 0x67, 0x69, - 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x52, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, - 0x6e, 0x61, 0x6c, 0x41, 0x49, 0x2f, 0x6c, 0x6f, 0x67, 0x69, 0x63, 0x61, 0x6c, 0x2d, 0x71, 0x75, - 0x65, 0x72, 0x79, 0x2d, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2f, 0x73, 0x64, 0x6b, - 0x73, 0x2f, 0x67, 0x6f, 0x2f, 0x73, 0x72, 0x63, 0x2f, 0x6c, 0x71, 0x70, 0x2f, 0x76, 0x31, 0x62, - 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, + 0x70, 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x62, 0x6f, 0x72, 0x74, 0x48, 0x00, 0x52, 0x05, 0x61, 0x62, + 0x6f, 0x72, 0x74, 0x12, 0x35, 0x0a, 0x06, 0x65, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x18, 0x05, 0x20, + 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, + 0x61, 0x69, 0x2e, 0x6c, 0x71, 0x70, 0x2e, 0x76, 0x31, 0x2e, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, + 0x48, 0x00, 0x52, 0x06, 0x65, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x42, 0x0b, 0x0a, 0x09, 0x72, 0x65, + 0x61, 0x64, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x22, 0x4a, 0x0a, 0x06, 0x44, 0x65, 0x6d, 0x61, 0x6e, + 0x64, 0x12, 0x40, 0x0a, 0x0b, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x61, 0x6c, 0x61, 0x69, 0x2e, 0x6c, 0x71, 0x70, 0x2e, 0x76, 0x31, 0x2e, 0x52, 0x65, 0x6c, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x52, 0x0a, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x49, 0x64, 0x22, 0x5e, 0x0a, 0x06, 0x4f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x12, 0x12, 0x0a, + 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, + 0x65, 0x12, 0x40, 0x0a, 0x0b, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x61, 0x6c, 0x61, 0x69, 0x2e, 0x6c, 0x71, 0x70, 0x2e, 0x76, 0x31, 0x2e, 0x52, 0x65, 0x6c, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x52, 0x0a, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x49, 0x64, 0x22, 0x60, 0x0a, 0x06, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x12, 0x45, 0x0a, + 0x0a, 0x63, 0x73, 0x76, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x0b, 0x32, 0x24, 0x2e, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x61, 0x69, + 0x2e, 0x6c, 0x71, 0x70, 0x2e, 0x76, 0x31, 0x2e, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x43, 0x53, + 0x56, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x48, 0x00, 0x52, 0x09, 0x63, 0x73, 0x76, 0x43, 0x6f, + 0x6e, 0x66, 0x69, 0x67, 0x42, 0x0f, 0x0a, 0x0d, 0x65, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x5f, 0x63, + 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x22, 0x52, 0x0a, 0x06, 0x57, 0x68, 0x61, 0x74, 0x49, 0x66, 0x12, + 0x16, 0x0a, 0x06, 0x62, 0x72, 0x61, 0x6e, 0x63, 0x68, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x06, 0x62, 0x72, 0x61, 0x6e, 0x63, 0x68, 0x12, 0x30, 0x0a, 0x05, 0x65, 0x70, 0x6f, 0x63, 0x68, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x61, 0x6c, 0x61, 0x69, 0x2e, 0x6c, 0x71, 0x70, 0x2e, 0x76, 0x31, 0x2e, 0x45, 0x70, 0x6f, + 0x63, 0x68, 0x52, 0x05, 0x65, 0x70, 0x6f, 0x63, 0x68, 0x22, 0x5d, 0x0a, 0x05, 0x41, 0x62, 0x6f, + 0x72, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x40, 0x0a, 0x0b, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x72, 0x65, + 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x61, 0x69, 0x2e, 0x6c, 0x71, 0x70, 0x2e, 0x76, + 0x31, 0x2e, 0x52, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x52, 0x0a, 0x72, 0x65, + 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x2a, 0x87, 0x01, 0x0a, 0x10, 0x4d, 0x61, 0x69, + 0x6e, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x63, 0x65, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x12, 0x21, 0x0a, + 0x1d, 0x4d, 0x41, 0x49, 0x4e, 0x54, 0x45, 0x4e, 0x41, 0x4e, 0x43, 0x45, 0x5f, 0x4c, 0x45, 0x56, + 0x45, 0x4c, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, + 0x12, 0x19, 0x0a, 0x15, 0x4d, 0x41, 0x49, 0x4e, 0x54, 0x45, 0x4e, 0x41, 0x4e, 0x43, 0x45, 0x5f, + 0x4c, 0x45, 0x56, 0x45, 0x4c, 0x5f, 0x4f, 0x46, 0x46, 0x10, 0x01, 0x12, 0x1a, 0x0a, 0x16, 0x4d, + 0x41, 0x49, 0x4e, 0x54, 0x45, 0x4e, 0x41, 0x4e, 0x43, 0x45, 0x5f, 0x4c, 0x45, 0x56, 0x45, 0x4c, + 0x5f, 0x41, 0x55, 0x54, 0x4f, 0x10, 0x02, 0x12, 0x19, 0x0a, 0x15, 0x4d, 0x41, 0x49, 0x4e, 0x54, + 0x45, 0x4e, 0x41, 0x4e, 0x43, 0x45, 0x5f, 0x4c, 0x45, 0x56, 0x45, 0x4c, 0x5f, 0x41, 0x4c, 0x4c, + 0x10, 0x03, 0x2a, 0x9f, 0x01, 0x0a, 0x11, 0x4f, 0x70, 0x74, 0x69, 0x6d, 0x69, 0x7a, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x12, 0x22, 0x0a, 0x1e, 0x4f, 0x50, 0x54, 0x49, + 0x4d, 0x49, 0x5a, 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x4c, 0x45, 0x56, 0x45, 0x4c, 0x5f, 0x55, + 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x1e, 0x0a, 0x1a, + 0x4f, 0x50, 0x54, 0x49, 0x4d, 0x49, 0x5a, 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x4c, 0x45, 0x56, + 0x45, 0x4c, 0x5f, 0x44, 0x45, 0x46, 0x41, 0x55, 0x4c, 0x54, 0x10, 0x01, 0x12, 0x23, 0x0a, 0x1f, + 0x4f, 0x50, 0x54, 0x49, 0x4d, 0x49, 0x5a, 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x4c, 0x45, 0x56, + 0x45, 0x4c, 0x5f, 0x43, 0x4f, 0x4e, 0x53, 0x45, 0x52, 0x56, 0x41, 0x54, 0x49, 0x56, 0x45, 0x10, + 0x02, 0x12, 0x21, 0x0a, 0x1d, 0x4f, 0x50, 0x54, 0x49, 0x4d, 0x49, 0x5a, 0x41, 0x54, 0x49, 0x4f, + 0x4e, 0x5f, 0x4c, 0x45, 0x56, 0x45, 0x4c, 0x5f, 0x41, 0x47, 0x47, 0x52, 0x45, 0x53, 0x53, 0x49, + 0x56, 0x45, 0x10, 0x03, 0x42, 0x43, 0x5a, 0x41, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, + 0x6f, 0x6d, 0x2f, 0x52, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x41, 0x49, 0x2f, + 0x6c, 0x6f, 0x67, 0x69, 0x63, 0x61, 0x6c, 0x2d, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2d, 0x70, 0x72, + 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2f, 0x73, 0x64, 0x6b, 0x73, 0x2f, 0x67, 0x6f, 0x2f, 0x73, + 0x72, 0x63, 0x2f, 0x6c, 0x71, 0x70, 0x2f, 0x76, 0x31, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, + 0x33, }) var ( @@ -1602,76 +1678,78 @@ func file_relationalai_lqp_v1_transactions_proto_rawDescGZIP() []byte { return file_relationalai_lqp_v1_transactions_proto_rawDescData } -var file_relationalai_lqp_v1_transactions_proto_enumTypes = make([]protoimpl.EnumInfo, 1) +var file_relationalai_lqp_v1_transactions_proto_enumTypes = make([]protoimpl.EnumInfo, 2) var file_relationalai_lqp_v1_transactions_proto_msgTypes = make([]protoimpl.MessageInfo, 21) var file_relationalai_lqp_v1_transactions_proto_goTypes = []any{ (MaintenanceLevel)(0), // 0: relationalai.lqp.v1.MaintenanceLevel - (*Transaction)(nil), // 1: relationalai.lqp.v1.Transaction - (*Configure)(nil), // 2: relationalai.lqp.v1.Configure - (*IVMConfig)(nil), // 3: relationalai.lqp.v1.IVMConfig - (*Sync)(nil), // 4: relationalai.lqp.v1.Sync - (*Epoch)(nil), // 5: relationalai.lqp.v1.Epoch - (*Write)(nil), // 6: relationalai.lqp.v1.Write - (*Define)(nil), // 7: relationalai.lqp.v1.Define - (*Undefine)(nil), // 8: relationalai.lqp.v1.Undefine - (*Context)(nil), // 9: relationalai.lqp.v1.Context - (*SnapshotMapping)(nil), // 10: relationalai.lqp.v1.SnapshotMapping - (*Snapshot)(nil), // 11: relationalai.lqp.v1.Snapshot - (*ExportCSVConfig)(nil), // 12: relationalai.lqp.v1.ExportCSVConfig - (*ExportCSVColumn)(nil), // 13: relationalai.lqp.v1.ExportCSVColumn - (*ExportCSVColumns)(nil), // 14: relationalai.lqp.v1.ExportCSVColumns - (*ExportCSVSource)(nil), // 15: relationalai.lqp.v1.ExportCSVSource - (*Read)(nil), // 16: relationalai.lqp.v1.Read - (*Demand)(nil), // 17: relationalai.lqp.v1.Demand - (*Output)(nil), // 18: relationalai.lqp.v1.Output - (*Export)(nil), // 19: relationalai.lqp.v1.Export - (*WhatIf)(nil), // 20: relationalai.lqp.v1.WhatIf - (*Abort)(nil), // 21: relationalai.lqp.v1.Abort - (*FragmentId)(nil), // 22: relationalai.lqp.v1.FragmentId - (*Fragment)(nil), // 23: relationalai.lqp.v1.Fragment - (*RelationId)(nil), // 24: relationalai.lqp.v1.RelationId - (*CSVConfig)(nil), // 25: relationalai.lqp.v1.CSVConfig + (OptimizationLevel)(0), // 1: relationalai.lqp.v1.OptimizationLevel + (*Transaction)(nil), // 2: relationalai.lqp.v1.Transaction + (*Configure)(nil), // 3: relationalai.lqp.v1.Configure + (*IVMConfig)(nil), // 4: relationalai.lqp.v1.IVMConfig + (*Sync)(nil), // 5: relationalai.lqp.v1.Sync + (*Epoch)(nil), // 6: relationalai.lqp.v1.Epoch + (*Write)(nil), // 7: relationalai.lqp.v1.Write + (*Define)(nil), // 8: relationalai.lqp.v1.Define + (*Undefine)(nil), // 9: relationalai.lqp.v1.Undefine + (*Context)(nil), // 10: relationalai.lqp.v1.Context + (*SnapshotMapping)(nil), // 11: relationalai.lqp.v1.SnapshotMapping + (*Snapshot)(nil), // 12: relationalai.lqp.v1.Snapshot + (*ExportCSVConfig)(nil), // 13: relationalai.lqp.v1.ExportCSVConfig + (*ExportCSVColumn)(nil), // 14: relationalai.lqp.v1.ExportCSVColumn + (*ExportCSVColumns)(nil), // 15: relationalai.lqp.v1.ExportCSVColumns + (*ExportCSVSource)(nil), // 16: relationalai.lqp.v1.ExportCSVSource + (*Read)(nil), // 17: relationalai.lqp.v1.Read + (*Demand)(nil), // 18: relationalai.lqp.v1.Demand + (*Output)(nil), // 19: relationalai.lqp.v1.Output + (*Export)(nil), // 20: relationalai.lqp.v1.Export + (*WhatIf)(nil), // 21: relationalai.lqp.v1.WhatIf + (*Abort)(nil), // 22: relationalai.lqp.v1.Abort + (*FragmentId)(nil), // 23: relationalai.lqp.v1.FragmentId + (*Fragment)(nil), // 24: relationalai.lqp.v1.Fragment + (*RelationId)(nil), // 25: relationalai.lqp.v1.RelationId + (*CSVConfig)(nil), // 26: relationalai.lqp.v1.CSVConfig } var file_relationalai_lqp_v1_transactions_proto_depIdxs = []int32{ - 5, // 0: relationalai.lqp.v1.Transaction.epochs:type_name -> relationalai.lqp.v1.Epoch - 2, // 1: relationalai.lqp.v1.Transaction.configure:type_name -> relationalai.lqp.v1.Configure - 4, // 2: relationalai.lqp.v1.Transaction.sync:type_name -> relationalai.lqp.v1.Sync - 3, // 3: relationalai.lqp.v1.Configure.ivm_config:type_name -> relationalai.lqp.v1.IVMConfig - 0, // 4: relationalai.lqp.v1.IVMConfig.level:type_name -> relationalai.lqp.v1.MaintenanceLevel - 22, // 5: relationalai.lqp.v1.Sync.fragments:type_name -> relationalai.lqp.v1.FragmentId - 6, // 6: relationalai.lqp.v1.Epoch.writes:type_name -> relationalai.lqp.v1.Write - 16, // 7: relationalai.lqp.v1.Epoch.reads:type_name -> relationalai.lqp.v1.Read - 7, // 8: relationalai.lqp.v1.Write.define:type_name -> relationalai.lqp.v1.Define - 8, // 9: relationalai.lqp.v1.Write.undefine:type_name -> relationalai.lqp.v1.Undefine - 9, // 10: relationalai.lqp.v1.Write.context:type_name -> relationalai.lqp.v1.Context - 11, // 11: relationalai.lqp.v1.Write.snapshot:type_name -> relationalai.lqp.v1.Snapshot - 23, // 12: relationalai.lqp.v1.Define.fragment:type_name -> relationalai.lqp.v1.Fragment - 22, // 13: relationalai.lqp.v1.Undefine.fragment_id:type_name -> relationalai.lqp.v1.FragmentId - 24, // 14: relationalai.lqp.v1.Context.relations:type_name -> relationalai.lqp.v1.RelationId - 24, // 15: relationalai.lqp.v1.SnapshotMapping.source_relation:type_name -> relationalai.lqp.v1.RelationId - 10, // 16: relationalai.lqp.v1.Snapshot.mappings:type_name -> relationalai.lqp.v1.SnapshotMapping - 15, // 17: relationalai.lqp.v1.ExportCSVConfig.csv_source:type_name -> relationalai.lqp.v1.ExportCSVSource - 25, // 18: relationalai.lqp.v1.ExportCSVConfig.csv_config:type_name -> relationalai.lqp.v1.CSVConfig - 13, // 19: relationalai.lqp.v1.ExportCSVConfig.data_columns:type_name -> relationalai.lqp.v1.ExportCSVColumn - 24, // 20: relationalai.lqp.v1.ExportCSVColumn.column_data:type_name -> relationalai.lqp.v1.RelationId - 13, // 21: relationalai.lqp.v1.ExportCSVColumns.columns:type_name -> relationalai.lqp.v1.ExportCSVColumn - 14, // 22: relationalai.lqp.v1.ExportCSVSource.gnf_columns:type_name -> relationalai.lqp.v1.ExportCSVColumns - 24, // 23: relationalai.lqp.v1.ExportCSVSource.table_def:type_name -> relationalai.lqp.v1.RelationId - 17, // 24: relationalai.lqp.v1.Read.demand:type_name -> relationalai.lqp.v1.Demand - 18, // 25: relationalai.lqp.v1.Read.output:type_name -> relationalai.lqp.v1.Output - 20, // 26: relationalai.lqp.v1.Read.what_if:type_name -> relationalai.lqp.v1.WhatIf - 21, // 27: relationalai.lqp.v1.Read.abort:type_name -> relationalai.lqp.v1.Abort - 19, // 28: relationalai.lqp.v1.Read.export:type_name -> relationalai.lqp.v1.Export - 24, // 29: relationalai.lqp.v1.Demand.relation_id:type_name -> relationalai.lqp.v1.RelationId - 24, // 30: relationalai.lqp.v1.Output.relation_id:type_name -> relationalai.lqp.v1.RelationId - 12, // 31: relationalai.lqp.v1.Export.csv_config:type_name -> relationalai.lqp.v1.ExportCSVConfig - 5, // 32: relationalai.lqp.v1.WhatIf.epoch:type_name -> relationalai.lqp.v1.Epoch - 24, // 33: relationalai.lqp.v1.Abort.relation_id:type_name -> relationalai.lqp.v1.RelationId - 34, // [34:34] is the sub-list for method output_type - 34, // [34:34] is the sub-list for method input_type - 34, // [34:34] is the sub-list for extension type_name - 34, // [34:34] is the sub-list for extension extendee - 0, // [0:34] is the sub-list for field type_name + 6, // 0: relationalai.lqp.v1.Transaction.epochs:type_name -> relationalai.lqp.v1.Epoch + 3, // 1: relationalai.lqp.v1.Transaction.configure:type_name -> relationalai.lqp.v1.Configure + 5, // 2: relationalai.lqp.v1.Transaction.sync:type_name -> relationalai.lqp.v1.Sync + 4, // 3: relationalai.lqp.v1.Configure.ivm_config:type_name -> relationalai.lqp.v1.IVMConfig + 1, // 4: relationalai.lqp.v1.Configure.optimization_level:type_name -> relationalai.lqp.v1.OptimizationLevel + 0, // 5: relationalai.lqp.v1.IVMConfig.level:type_name -> relationalai.lqp.v1.MaintenanceLevel + 23, // 6: relationalai.lqp.v1.Sync.fragments:type_name -> relationalai.lqp.v1.FragmentId + 7, // 7: relationalai.lqp.v1.Epoch.writes:type_name -> relationalai.lqp.v1.Write + 17, // 8: relationalai.lqp.v1.Epoch.reads:type_name -> relationalai.lqp.v1.Read + 8, // 9: relationalai.lqp.v1.Write.define:type_name -> relationalai.lqp.v1.Define + 9, // 10: relationalai.lqp.v1.Write.undefine:type_name -> relationalai.lqp.v1.Undefine + 10, // 11: relationalai.lqp.v1.Write.context:type_name -> relationalai.lqp.v1.Context + 12, // 12: relationalai.lqp.v1.Write.snapshot:type_name -> relationalai.lqp.v1.Snapshot + 24, // 13: relationalai.lqp.v1.Define.fragment:type_name -> relationalai.lqp.v1.Fragment + 23, // 14: relationalai.lqp.v1.Undefine.fragment_id:type_name -> relationalai.lqp.v1.FragmentId + 25, // 15: relationalai.lqp.v1.Context.relations:type_name -> relationalai.lqp.v1.RelationId + 25, // 16: relationalai.lqp.v1.SnapshotMapping.source_relation:type_name -> relationalai.lqp.v1.RelationId + 11, // 17: relationalai.lqp.v1.Snapshot.mappings:type_name -> relationalai.lqp.v1.SnapshotMapping + 16, // 18: relationalai.lqp.v1.ExportCSVConfig.csv_source:type_name -> relationalai.lqp.v1.ExportCSVSource + 26, // 19: relationalai.lqp.v1.ExportCSVConfig.csv_config:type_name -> relationalai.lqp.v1.CSVConfig + 14, // 20: relationalai.lqp.v1.ExportCSVConfig.data_columns:type_name -> relationalai.lqp.v1.ExportCSVColumn + 25, // 21: relationalai.lqp.v1.ExportCSVColumn.column_data:type_name -> relationalai.lqp.v1.RelationId + 14, // 22: relationalai.lqp.v1.ExportCSVColumns.columns:type_name -> relationalai.lqp.v1.ExportCSVColumn + 15, // 23: relationalai.lqp.v1.ExportCSVSource.gnf_columns:type_name -> relationalai.lqp.v1.ExportCSVColumns + 25, // 24: relationalai.lqp.v1.ExportCSVSource.table_def:type_name -> relationalai.lqp.v1.RelationId + 18, // 25: relationalai.lqp.v1.Read.demand:type_name -> relationalai.lqp.v1.Demand + 19, // 26: relationalai.lqp.v1.Read.output:type_name -> relationalai.lqp.v1.Output + 21, // 27: relationalai.lqp.v1.Read.what_if:type_name -> relationalai.lqp.v1.WhatIf + 22, // 28: relationalai.lqp.v1.Read.abort:type_name -> relationalai.lqp.v1.Abort + 20, // 29: relationalai.lqp.v1.Read.export:type_name -> relationalai.lqp.v1.Export + 25, // 30: relationalai.lqp.v1.Demand.relation_id:type_name -> relationalai.lqp.v1.RelationId + 25, // 31: relationalai.lqp.v1.Output.relation_id:type_name -> relationalai.lqp.v1.RelationId + 13, // 32: relationalai.lqp.v1.Export.csv_config:type_name -> relationalai.lqp.v1.ExportCSVConfig + 6, // 33: relationalai.lqp.v1.WhatIf.epoch:type_name -> relationalai.lqp.v1.Epoch + 25, // 34: relationalai.lqp.v1.Abort.relation_id:type_name -> relationalai.lqp.v1.RelationId + 35, // [35:35] is the sub-list for method output_type + 35, // [35:35] is the sub-list for method input_type + 35, // [35:35] is the sub-list for extension type_name + 35, // [35:35] is the sub-list for extension extendee + 0, // [0:35] is the sub-list for field type_name } func init() { file_relationalai_lqp_v1_transactions_proto_init() } @@ -1708,7 +1786,7 @@ func file_relationalai_lqp_v1_transactions_proto_init() { File: protoimpl.DescBuilder{ GoPackagePath: reflect.TypeOf(x{}).PkgPath(), RawDescriptor: unsafe.Slice(unsafe.StringData(file_relationalai_lqp_v1_transactions_proto_rawDesc), len(file_relationalai_lqp_v1_transactions_proto_rawDesc)), - NumEnums: 1, + NumEnums: 2, NumMessages: 21, NumExtensions: 0, NumServices: 0, diff --git a/sdks/go/src/parser.go b/sdks/go/src/parser.go index 442d9d95..172a4f19 100644 --- a/sdks/go/src/parser.go +++ b/sdks/go/src/parser.go @@ -775,7 +775,7 @@ func (p *Parser) construct_betree_info(key_types []*pb.Type, value_types []*pb.T func (p *Parser) default_configure() *pb.Configure { _t1856 := &pb.IVMConfig{Level: pb.MaintenanceLevel_MAINTENANCE_LEVEL_OFF} ivm_config := _t1856 - _t1857 := &pb.Configure{SemanticsVersion: 0, IvmConfig: ivm_config} + _t1857 := &pb.Configure{SemanticsVersion: 0, IvmConfig: ivm_config, OptimizationLevel: pb.OptimizationLevel_OPTIMIZATION_LEVEL_DEFAULT} return _t1857 } @@ -802,7 +802,24 @@ func (p *Parser) construct_configure(config_dict [][]interface{}) *pb.Configure ivm_config := _t1858 _t1859 := p._extract_value_int64(dictGetValue(config, "semantics_version"), 0) semantics_version := _t1859 - _t1860 := &pb.Configure{SemanticsVersion: semantics_version, IvmConfig: ivm_config} + optimization_level_val := dictGetValue(config, "optimization_level") + optimization_level := pb.OptimizationLevel_OPTIMIZATION_LEVEL_DEFAULT + if (optimization_level_val != nil && hasProtoField(optimization_level_val, "string_value")) { + if optimization_level_val.GetStringValue() == "default" { + optimization_level = pb.OptimizationLevel_OPTIMIZATION_LEVEL_DEFAULT + } else { + if optimization_level_val.GetStringValue() == "conservative" { + optimization_level = pb.OptimizationLevel_OPTIMIZATION_LEVEL_CONSERVATIVE + } else { + if optimization_level_val.GetStringValue() == "aggressive" { + optimization_level = pb.OptimizationLevel_OPTIMIZATION_LEVEL_AGGRESSIVE + } else { + optimization_level = pb.OptimizationLevel_OPTIMIZATION_LEVEL_DEFAULT + } + } + } + } + _t1860 := &pb.Configure{SemanticsVersion: semantics_version, IvmConfig: ivm_config, OptimizationLevel: optimization_level} return _t1860 } diff --git a/sdks/go/src/pretty.go b/sdks/go/src/pretty.go index 3d5e968d..c441d311 100644 --- a/sdks/go/src/pretty.go +++ b/sdks/go/src/pretty.go @@ -363,106 +363,120 @@ func (p *PrettyPrinter) deconstruct_configure(msg *pb.Configure) [][]interface{} } } } - _t1468 := p._make_value_int64(msg.GetSemanticsVersion()) - result = append(result, []interface{}{"semantics_version", _t1468}) + if msg.GetOptimizationLevel() == pb.OptimizationLevel_OPTIMIZATION_LEVEL_DEFAULT { + _t1468 := p._make_value_string("default") + result = append(result, []interface{}{"optimization_level", _t1468}) + } else { + if msg.GetOptimizationLevel() == pb.OptimizationLevel_OPTIMIZATION_LEVEL_CONSERVATIVE { + _t1469 := p._make_value_string("conservative") + result = append(result, []interface{}{"optimization_level", _t1469}) + } else { + if msg.GetOptimizationLevel() == pb.OptimizationLevel_OPTIMIZATION_LEVEL_AGGRESSIVE { + _t1470 := p._make_value_string("aggressive") + result = append(result, []interface{}{"optimization_level", _t1470}) + } + } + } + _t1471 := p._make_value_int64(msg.GetSemanticsVersion()) + result = append(result, []interface{}{"semantics_version", _t1471}) return listSort(result) } func (p *PrettyPrinter) deconstruct_csv_config(msg *pb.CSVConfig) [][]interface{} { result := [][]interface{}{} - _t1469 := p._make_value_int32(msg.GetHeaderRow()) - result = append(result, []interface{}{"csv_header_row", _t1469}) - _t1470 := p._make_value_int64(msg.GetSkip()) - result = append(result, []interface{}{"csv_skip", _t1470}) + _t1472 := p._make_value_int32(msg.GetHeaderRow()) + result = append(result, []interface{}{"csv_header_row", _t1472}) + _t1473 := p._make_value_int64(msg.GetSkip()) + result = append(result, []interface{}{"csv_skip", _t1473}) if msg.GetNewLine() != "" { - _t1471 := p._make_value_string(msg.GetNewLine()) - result = append(result, []interface{}{"csv_new_line", _t1471}) - } - _t1472 := p._make_value_string(msg.GetDelimiter()) - result = append(result, []interface{}{"csv_delimiter", _t1472}) - _t1473 := p._make_value_string(msg.GetQuotechar()) - result = append(result, []interface{}{"csv_quotechar", _t1473}) - _t1474 := p._make_value_string(msg.GetEscapechar()) - result = append(result, []interface{}{"csv_escapechar", _t1474}) + _t1474 := p._make_value_string(msg.GetNewLine()) + result = append(result, []interface{}{"csv_new_line", _t1474}) + } + _t1475 := p._make_value_string(msg.GetDelimiter()) + result = append(result, []interface{}{"csv_delimiter", _t1475}) + _t1476 := p._make_value_string(msg.GetQuotechar()) + result = append(result, []interface{}{"csv_quotechar", _t1476}) + _t1477 := p._make_value_string(msg.GetEscapechar()) + result = append(result, []interface{}{"csv_escapechar", _t1477}) if msg.GetComment() != "" { - _t1475 := p._make_value_string(msg.GetComment()) - result = append(result, []interface{}{"csv_comment", _t1475}) + _t1478 := p._make_value_string(msg.GetComment()) + result = append(result, []interface{}{"csv_comment", _t1478}) } for _, missing_string := range msg.GetMissingStrings() { - _t1476 := p._make_value_string(missing_string) - result = append(result, []interface{}{"csv_missing_strings", _t1476}) - } - _t1477 := p._make_value_string(msg.GetDecimalSeparator()) - result = append(result, []interface{}{"csv_decimal_separator", _t1477}) - _t1478 := p._make_value_string(msg.GetEncoding()) - result = append(result, []interface{}{"csv_encoding", _t1478}) - _t1479 := p._make_value_string(msg.GetCompression()) - result = append(result, []interface{}{"csv_compression", _t1479}) + _t1479 := p._make_value_string(missing_string) + result = append(result, []interface{}{"csv_missing_strings", _t1479}) + } + _t1480 := p._make_value_string(msg.GetDecimalSeparator()) + result = append(result, []interface{}{"csv_decimal_separator", _t1480}) + _t1481 := p._make_value_string(msg.GetEncoding()) + result = append(result, []interface{}{"csv_encoding", _t1481}) + _t1482 := p._make_value_string(msg.GetCompression()) + result = append(result, []interface{}{"csv_compression", _t1482}) if msg.GetPartitionSizeMb() != 0 { - _t1480 := p._make_value_int64(msg.GetPartitionSizeMb()) - result = append(result, []interface{}{"csv_partition_size_mb", _t1480}) + _t1483 := p._make_value_int64(msg.GetPartitionSizeMb()) + result = append(result, []interface{}{"csv_partition_size_mb", _t1483}) } return listSort(result) } func (p *PrettyPrinter) deconstruct_betree_info_config(msg *pb.BeTreeInfo) [][]interface{} { result := [][]interface{}{} - _t1481 := p._make_value_float64(msg.GetStorageConfig().GetEpsilon()) - result = append(result, []interface{}{"betree_config_epsilon", _t1481}) - _t1482 := p._make_value_int64(msg.GetStorageConfig().GetMaxPivots()) - result = append(result, []interface{}{"betree_config_max_pivots", _t1482}) - _t1483 := p._make_value_int64(msg.GetStorageConfig().GetMaxDeltas()) - result = append(result, []interface{}{"betree_config_max_deltas", _t1483}) - _t1484 := p._make_value_int64(msg.GetStorageConfig().GetMaxLeaf()) - result = append(result, []interface{}{"betree_config_max_leaf", _t1484}) + _t1484 := p._make_value_float64(msg.GetStorageConfig().GetEpsilon()) + result = append(result, []interface{}{"betree_config_epsilon", _t1484}) + _t1485 := p._make_value_int64(msg.GetStorageConfig().GetMaxPivots()) + result = append(result, []interface{}{"betree_config_max_pivots", _t1485}) + _t1486 := p._make_value_int64(msg.GetStorageConfig().GetMaxDeltas()) + result = append(result, []interface{}{"betree_config_max_deltas", _t1486}) + _t1487 := p._make_value_int64(msg.GetStorageConfig().GetMaxLeaf()) + result = append(result, []interface{}{"betree_config_max_leaf", _t1487}) if hasProtoField(msg.GetRelationLocator(), "root_pageid") { if msg.GetRelationLocator().GetRootPageid() != nil { - _t1485 := p._make_value_uint128(msg.GetRelationLocator().GetRootPageid()) - result = append(result, []interface{}{"betree_locator_root_pageid", _t1485}) + _t1488 := p._make_value_uint128(msg.GetRelationLocator().GetRootPageid()) + result = append(result, []interface{}{"betree_locator_root_pageid", _t1488}) } } if hasProtoField(msg.GetRelationLocator(), "inline_data") { if msg.GetRelationLocator().GetInlineData() != nil { - _t1486 := p._make_value_string(string(msg.GetRelationLocator().GetInlineData())) - result = append(result, []interface{}{"betree_locator_inline_data", _t1486}) + _t1489 := p._make_value_string(string(msg.GetRelationLocator().GetInlineData())) + result = append(result, []interface{}{"betree_locator_inline_data", _t1489}) } } - _t1487 := p._make_value_int64(msg.GetRelationLocator().GetElementCount()) - result = append(result, []interface{}{"betree_locator_element_count", _t1487}) - _t1488 := p._make_value_int64(msg.GetRelationLocator().GetTreeHeight()) - result = append(result, []interface{}{"betree_locator_tree_height", _t1488}) + _t1490 := p._make_value_int64(msg.GetRelationLocator().GetElementCount()) + result = append(result, []interface{}{"betree_locator_element_count", _t1490}) + _t1491 := p._make_value_int64(msg.GetRelationLocator().GetTreeHeight()) + result = append(result, []interface{}{"betree_locator_tree_height", _t1491}) return listSort(result) } func (p *PrettyPrinter) deconstruct_export_csv_config(msg *pb.ExportCSVConfig) [][]interface{} { result := [][]interface{}{} if msg.PartitionSize != nil { - _t1489 := p._make_value_int64(*msg.PartitionSize) - result = append(result, []interface{}{"partition_size", _t1489}) + _t1492 := p._make_value_int64(*msg.PartitionSize) + result = append(result, []interface{}{"partition_size", _t1492}) } if msg.Compression != nil { - _t1490 := p._make_value_string(*msg.Compression) - result = append(result, []interface{}{"compression", _t1490}) + _t1493 := p._make_value_string(*msg.Compression) + result = append(result, []interface{}{"compression", _t1493}) } if msg.SyntaxHeaderRow != nil { - _t1491 := p._make_value_boolean(*msg.SyntaxHeaderRow) - result = append(result, []interface{}{"syntax_header_row", _t1491}) + _t1494 := p._make_value_boolean(*msg.SyntaxHeaderRow) + result = append(result, []interface{}{"syntax_header_row", _t1494}) } if msg.SyntaxMissingString != nil { - _t1492 := p._make_value_string(*msg.SyntaxMissingString) - result = append(result, []interface{}{"syntax_missing_string", _t1492}) + _t1495 := p._make_value_string(*msg.SyntaxMissingString) + result = append(result, []interface{}{"syntax_missing_string", _t1495}) } if msg.SyntaxDelim != nil { - _t1493 := p._make_value_string(*msg.SyntaxDelim) - result = append(result, []interface{}{"syntax_delim", _t1493}) + _t1496 := p._make_value_string(*msg.SyntaxDelim) + result = append(result, []interface{}{"syntax_delim", _t1496}) } if msg.SyntaxQuotechar != nil { - _t1494 := p._make_value_string(*msg.SyntaxQuotechar) - result = append(result, []interface{}{"syntax_quotechar", _t1494}) + _t1497 := p._make_value_string(*msg.SyntaxQuotechar) + result = append(result, []interface{}{"syntax_quotechar", _t1497}) } if msg.SyntaxEscapechar != nil { - _t1495 := p._make_value_string(*msg.SyntaxEscapechar) - result = append(result, []interface{}{"syntax_escapechar", _t1495}) + _t1498 := p._make_value_string(*msg.SyntaxEscapechar) + result = append(result, []interface{}{"syntax_escapechar", _t1498}) } return listSort(result) } @@ -474,11 +488,11 @@ func (p *PrettyPrinter) deconstruct_relation_id_string(msg *pb.RelationId) strin func (p *PrettyPrinter) deconstruct_relation_id_uint128(msg *pb.RelationId) *pb.UInt128Value { name := p.relationIdToString(msg) - var _t1496 interface{} + var _t1499 interface{} if name == nil { return p.relationIdToUint128(msg) } - _ = _t1496 + _ = _t1499 return nil } @@ -4194,8 +4208,8 @@ func (p *PrettyPrinter) pretty_debug_info(msg *pb.DebugInfo) interface{} { for _idx, _rid := range msg.GetIds() { p.newline() p.write("(") - _t1497 := &pb.UInt128Value{Low: _rid.GetIdLow(), High: _rid.GetIdHigh()} - p.pprintDispatch(_t1497) + _t1500 := &pb.UInt128Value{Low: _rid.GetIdLow(), High: _rid.GetIdHigh()} + p.pprintDispatch(_t1500) p.write(" ") p.write(p.formatStringValue(msg.GetOrigNames()[_idx])) p.write(")") @@ -4353,6 +4367,25 @@ func (p *PrettyPrinter) pretty_maintenance_level(x pb.MaintenanceLevel) interfac return nil } +func (p *PrettyPrinter) pretty_optimization_level(x pb.OptimizationLevel) interface{} { + if x == pb.OptimizationLevel_OPTIMIZATION_LEVEL_UNSPECIFIED { + p.write("unspecified") + } else { + if x == pb.OptimizationLevel_OPTIMIZATION_LEVEL_DEFAULT { + p.write("default") + } else { + if x == pb.OptimizationLevel_OPTIMIZATION_LEVEL_CONSERVATIVE { + p.write("conservative") + } else { + if x == pb.OptimizationLevel_OPTIMIZATION_LEVEL_AGGRESSIVE { + p.write("aggressive") + } + } + } + } + return nil +} + // --- Dispatch function --- func (p *PrettyPrinter) pprintDispatch(msg interface{}) { switch m := msg.(type) { @@ -4578,6 +4611,8 @@ func (p *PrettyPrinter) pprintDispatch(msg interface{}) { p.pretty_ivm_config(m) case pb.MaintenanceLevel: p.pretty_maintenance_level(m) + case pb.OptimizationLevel: + p.pretty_optimization_level(m) default: panic(fmt.Sprintf("no pretty printer for %T", msg)) } diff --git a/sdks/julia/LogicalQueryProtocol.jl/src/gen/relationalai/lqp/v1/transactions_pb.jl b/sdks/julia/LogicalQueryProtocol.jl/src/gen/relationalai/lqp/v1/transactions_pb.jl index c5f18bf0..ae6bfcf3 100644 --- a/sdks/julia/LogicalQueryProtocol.jl/src/gen/relationalai/lqp/v1/transactions_pb.jl +++ b/sdks/julia/LogicalQueryProtocol.jl/src/gen/relationalai/lqp/v1/transactions_pb.jl @@ -5,8 +5,8 @@ import ProtoBuf as PB using ProtoBuf: OneOf using ProtoBuf.EnumX: @enumx -export ExportCSVColumn, Demand, Undefine, MaintenanceLevel, Define, Context, Sync -export SnapshotMapping, Abort, Output, ExportCSVColumns, IVMConfig, Snapshot +export ExportCSVColumn, OptimizationLevel, Demand, Undefine, MaintenanceLevel, Define +export Context, Sync, SnapshotMapping, Abort, Output, ExportCSVColumns, IVMConfig, Snapshot export ExportCSVSource, Configure, Write, ExportCSVConfig, Export, Epoch, Read, Transaction export WhatIf abstract type var"##Abstract#Transaction" end @@ -52,6 +52,8 @@ function PB._encoded_size(x::ExportCSVColumn) return encoded_size end +@enumx OptimizationLevel OPTIMIZATION_LEVEL_UNSPECIFIED=0 OPTIMIZATION_LEVEL_DEFAULT=1 OPTIMIZATION_LEVEL_CONSERVATIVE=2 OPTIMIZATION_LEVEL_AGGRESSIVE=3 + struct Demand relation_id::Union{Nothing,RelationId} end @@ -462,37 +464,43 @@ end struct Configure semantics_version::Int64 ivm_config::Union{Nothing,IVMConfig} + optimization_level::OptimizationLevel.T end -Configure(;semantics_version = zero(Int64), ivm_config = nothing) = Configure(semantics_version, ivm_config) -PB.default_values(::Type{Configure}) = (;semantics_version = zero(Int64), ivm_config = nothing) -PB.field_numbers(::Type{Configure}) = (;semantics_version = 1, ivm_config = 2) +Configure(;semantics_version = zero(Int64), ivm_config = nothing, optimization_level = OptimizationLevel.OPTIMIZATION_LEVEL_UNSPECIFIED) = Configure(semantics_version, ivm_config, optimization_level) +PB.default_values(::Type{Configure}) = (;semantics_version = zero(Int64), ivm_config = nothing, optimization_level = OptimizationLevel.OPTIMIZATION_LEVEL_UNSPECIFIED) +PB.field_numbers(::Type{Configure}) = (;semantics_version = 1, ivm_config = 2, optimization_level = 3) function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:Configure}, _endpos::Int=0, _group::Bool=false) semantics_version = zero(Int64) ivm_config = Ref{Union{Nothing,IVMConfig}}(nothing) + optimization_level = OptimizationLevel.OPTIMIZATION_LEVEL_UNSPECIFIED while !PB.message_done(d, _endpos, _group) field_number, wire_type = PB.decode_tag(d) if field_number == 1 semantics_version = PB.decode(d, Int64) elseif field_number == 2 PB.decode!(d, ivm_config) + elseif field_number == 3 + optimization_level = PB.decode(d, OptimizationLevel.T) else Base.skip(d, wire_type) end end - return Configure(semantics_version, ivm_config[]) + return Configure(semantics_version, ivm_config[], optimization_level) end function PB.encode(e::PB.AbstractProtoEncoder, x::Configure) initpos = position(e.io) x.semantics_version != zero(Int64) && PB.encode(e, 1, x.semantics_version) !isnothing(x.ivm_config) && PB.encode(e, 2, x.ivm_config) + x.optimization_level != OptimizationLevel.OPTIMIZATION_LEVEL_UNSPECIFIED && PB.encode(e, 3, x.optimization_level) return position(e.io) - initpos end function PB._encoded_size(x::Configure) encoded_size = 0 x.semantics_version != zero(Int64) && (encoded_size += PB._encoded_size(x.semantics_version, 1)) !isnothing(x.ivm_config) && (encoded_size += PB._encoded_size(x.ivm_config, 2)) + x.optimization_level != OptimizationLevel.OPTIMIZATION_LEVEL_UNSPECIFIED && (encoded_size += PB._encoded_size(x.optimization_level, 3)) return encoded_size end diff --git a/sdks/julia/LogicalQueryProtocol.jl/src/parser.jl b/sdks/julia/LogicalQueryProtocol.jl/src/parser.jl index 9a02e0b0..2b3cd36f 100644 --- a/sdks/julia/LogicalQueryProtocol.jl/src/parser.jl +++ b/sdks/julia/LogicalQueryProtocol.jl/src/parser.jl @@ -501,7 +501,7 @@ end function default_configure(parser::ParserState)::Proto.Configure _t1845 = Proto.IVMConfig(level=Proto.MaintenanceLevel.MAINTENANCE_LEVEL_OFF) ivm_config = _t1845 - _t1846 = Proto.Configure(semantics_version=0, ivm_config=ivm_config) + _t1846 = Proto.Configure(semantics_version=0, ivm_config=ivm_config, optimization_level=Proto.OptimizationLevel.OPTIMIZATION_LEVEL_DEFAULT) return _t1846 end @@ -528,7 +528,24 @@ function construct_configure(parser::ParserState, config_dict::Vector{Tuple{Stri ivm_config = _t1847 _t1848 = _extract_value_int64(parser, get(config, "semantics_version", nothing), 0) semantics_version = _t1848 - _t1849 = Proto.Configure(semantics_version=semantics_version, ivm_config=ivm_config) + optimization_level_val = get(config, "optimization_level", nothing) + optimization_level = Proto.OptimizationLevel.OPTIMIZATION_LEVEL_DEFAULT + if (!isnothing(optimization_level_val) && _has_proto_field(optimization_level_val, Symbol("string_value"))) + if _get_oneof_field(optimization_level_val, :string_value) == "default" + optimization_level = Proto.OptimizationLevel.OPTIMIZATION_LEVEL_DEFAULT + else + if _get_oneof_field(optimization_level_val, :string_value) == "conservative" + optimization_level = Proto.OptimizationLevel.OPTIMIZATION_LEVEL_CONSERVATIVE + else + if _get_oneof_field(optimization_level_val, :string_value) == "aggressive" + optimization_level = Proto.OptimizationLevel.OPTIMIZATION_LEVEL_AGGRESSIVE + else + optimization_level = Proto.OptimizationLevel.OPTIMIZATION_LEVEL_DEFAULT + end + end + end + end + _t1849 = Proto.Configure(semantics_version=semantics_version, ivm_config=ivm_config, optimization_level=optimization_level) return _t1849 end diff --git a/sdks/julia/LogicalQueryProtocol.jl/src/pretty.jl b/sdks/julia/LogicalQueryProtocol.jl/src/pretty.jl index 727dec5a..139e26de 100644 --- a/sdks/julia/LogicalQueryProtocol.jl/src/pretty.jl +++ b/sdks/julia/LogicalQueryProtocol.jl/src/pretty.jl @@ -383,106 +383,120 @@ function deconstruct_configure(pp::PrettyPrinter, msg::Proto.Configure)::Vector{ end end end - _t1503 = _make_value_int64(pp, msg.semantics_version) - push!(result, ("semantics_version", _t1503,)) + if msg.optimization_level == Proto.OptimizationLevel.OPTIMIZATION_LEVEL_DEFAULT + _t1503 = _make_value_string(pp, "default") + push!(result, ("optimization_level", _t1503,)) + else + if msg.optimization_level == Proto.OptimizationLevel.OPTIMIZATION_LEVEL_CONSERVATIVE + _t1504 = _make_value_string(pp, "conservative") + push!(result, ("optimization_level", _t1504,)) + else + if msg.optimization_level == Proto.OptimizationLevel.OPTIMIZATION_LEVEL_AGGRESSIVE + _t1505 = _make_value_string(pp, "aggressive") + push!(result, ("optimization_level", _t1505,)) + end + end + end + _t1506 = _make_value_int64(pp, msg.semantics_version) + push!(result, ("semantics_version", _t1506,)) return sort(result) end function deconstruct_csv_config(pp::PrettyPrinter, msg::Proto.CSVConfig)::Vector{Tuple{String, Proto.Value}} result = Tuple{String, Proto.Value}[] - _t1504 = _make_value_int32(pp, msg.header_row) - push!(result, ("csv_header_row", _t1504,)) - _t1505 = _make_value_int64(pp, msg.skip) - push!(result, ("csv_skip", _t1505,)) + _t1507 = _make_value_int32(pp, msg.header_row) + push!(result, ("csv_header_row", _t1507,)) + _t1508 = _make_value_int64(pp, msg.skip) + push!(result, ("csv_skip", _t1508,)) if msg.new_line != "" - _t1506 = _make_value_string(pp, msg.new_line) - push!(result, ("csv_new_line", _t1506,)) - end - _t1507 = _make_value_string(pp, msg.delimiter) - push!(result, ("csv_delimiter", _t1507,)) - _t1508 = _make_value_string(pp, msg.quotechar) - push!(result, ("csv_quotechar", _t1508,)) - _t1509 = _make_value_string(pp, msg.escapechar) - push!(result, ("csv_escapechar", _t1509,)) + _t1509 = _make_value_string(pp, msg.new_line) + push!(result, ("csv_new_line", _t1509,)) + end + _t1510 = _make_value_string(pp, msg.delimiter) + push!(result, ("csv_delimiter", _t1510,)) + _t1511 = _make_value_string(pp, msg.quotechar) + push!(result, ("csv_quotechar", _t1511,)) + _t1512 = _make_value_string(pp, msg.escapechar) + push!(result, ("csv_escapechar", _t1512,)) if msg.comment != "" - _t1510 = _make_value_string(pp, msg.comment) - push!(result, ("csv_comment", _t1510,)) + _t1513 = _make_value_string(pp, msg.comment) + push!(result, ("csv_comment", _t1513,)) end for missing_string in msg.missing_strings - _t1511 = _make_value_string(pp, missing_string) - push!(result, ("csv_missing_strings", _t1511,)) - end - _t1512 = _make_value_string(pp, msg.decimal_separator) - push!(result, ("csv_decimal_separator", _t1512,)) - _t1513 = _make_value_string(pp, msg.encoding) - push!(result, ("csv_encoding", _t1513,)) - _t1514 = _make_value_string(pp, msg.compression) - push!(result, ("csv_compression", _t1514,)) + _t1514 = _make_value_string(pp, missing_string) + push!(result, ("csv_missing_strings", _t1514,)) + end + _t1515 = _make_value_string(pp, msg.decimal_separator) + push!(result, ("csv_decimal_separator", _t1515,)) + _t1516 = _make_value_string(pp, msg.encoding) + push!(result, ("csv_encoding", _t1516,)) + _t1517 = _make_value_string(pp, msg.compression) + push!(result, ("csv_compression", _t1517,)) if msg.partition_size_mb != 0 - _t1515 = _make_value_int64(pp, msg.partition_size_mb) - push!(result, ("csv_partition_size_mb", _t1515,)) + _t1518 = _make_value_int64(pp, msg.partition_size_mb) + push!(result, ("csv_partition_size_mb", _t1518,)) end return sort(result) end function deconstruct_betree_info_config(pp::PrettyPrinter, msg::Proto.BeTreeInfo)::Vector{Tuple{String, Proto.Value}} result = Tuple{String, Proto.Value}[] - _t1516 = _make_value_float64(pp, msg.storage_config.epsilon) - push!(result, ("betree_config_epsilon", _t1516,)) - _t1517 = _make_value_int64(pp, msg.storage_config.max_pivots) - push!(result, ("betree_config_max_pivots", _t1517,)) - _t1518 = _make_value_int64(pp, msg.storage_config.max_deltas) - push!(result, ("betree_config_max_deltas", _t1518,)) - _t1519 = _make_value_int64(pp, msg.storage_config.max_leaf) - push!(result, ("betree_config_max_leaf", _t1519,)) + _t1519 = _make_value_float64(pp, msg.storage_config.epsilon) + push!(result, ("betree_config_epsilon", _t1519,)) + _t1520 = _make_value_int64(pp, msg.storage_config.max_pivots) + push!(result, ("betree_config_max_pivots", _t1520,)) + _t1521 = _make_value_int64(pp, msg.storage_config.max_deltas) + push!(result, ("betree_config_max_deltas", _t1521,)) + _t1522 = _make_value_int64(pp, msg.storage_config.max_leaf) + push!(result, ("betree_config_max_leaf", _t1522,)) if _has_proto_field(msg.relation_locator, Symbol("root_pageid")) if !isnothing(_get_oneof_field(msg.relation_locator, :root_pageid)) - _t1520 = _make_value_uint128(pp, _get_oneof_field(msg.relation_locator, :root_pageid)) - push!(result, ("betree_locator_root_pageid", _t1520,)) + _t1523 = _make_value_uint128(pp, _get_oneof_field(msg.relation_locator, :root_pageid)) + push!(result, ("betree_locator_root_pageid", _t1523,)) end end if _has_proto_field(msg.relation_locator, Symbol("inline_data")) if !isnothing(_get_oneof_field(msg.relation_locator, :inline_data)) - _t1521 = _make_value_string(pp, String(copy(_get_oneof_field(msg.relation_locator, :inline_data)))) - push!(result, ("betree_locator_inline_data", _t1521,)) + _t1524 = _make_value_string(pp, String(copy(_get_oneof_field(msg.relation_locator, :inline_data)))) + push!(result, ("betree_locator_inline_data", _t1524,)) end end - _t1522 = _make_value_int64(pp, msg.relation_locator.element_count) - push!(result, ("betree_locator_element_count", _t1522,)) - _t1523 = _make_value_int64(pp, msg.relation_locator.tree_height) - push!(result, ("betree_locator_tree_height", _t1523,)) + _t1525 = _make_value_int64(pp, msg.relation_locator.element_count) + push!(result, ("betree_locator_element_count", _t1525,)) + _t1526 = _make_value_int64(pp, msg.relation_locator.tree_height) + push!(result, ("betree_locator_tree_height", _t1526,)) return sort(result) end function deconstruct_export_csv_config(pp::PrettyPrinter, msg::Proto.ExportCSVConfig)::Vector{Tuple{String, Proto.Value}} result = Tuple{String, Proto.Value}[] if !isnothing(msg.partition_size) - _t1524 = _make_value_int64(pp, msg.partition_size) - push!(result, ("partition_size", _t1524,)) + _t1527 = _make_value_int64(pp, msg.partition_size) + push!(result, ("partition_size", _t1527,)) end if !isnothing(msg.compression) - _t1525 = _make_value_string(pp, msg.compression) - push!(result, ("compression", _t1525,)) + _t1528 = _make_value_string(pp, msg.compression) + push!(result, ("compression", _t1528,)) end if !isnothing(msg.syntax_header_row) - _t1526 = _make_value_boolean(pp, msg.syntax_header_row) - push!(result, ("syntax_header_row", _t1526,)) + _t1529 = _make_value_boolean(pp, msg.syntax_header_row) + push!(result, ("syntax_header_row", _t1529,)) end if !isnothing(msg.syntax_missing_string) - _t1527 = _make_value_string(pp, msg.syntax_missing_string) - push!(result, ("syntax_missing_string", _t1527,)) + _t1530 = _make_value_string(pp, msg.syntax_missing_string) + push!(result, ("syntax_missing_string", _t1530,)) end if !isnothing(msg.syntax_delim) - _t1528 = _make_value_string(pp, msg.syntax_delim) - push!(result, ("syntax_delim", _t1528,)) + _t1531 = _make_value_string(pp, msg.syntax_delim) + push!(result, ("syntax_delim", _t1531,)) end if !isnothing(msg.syntax_quotechar) - _t1529 = _make_value_string(pp, msg.syntax_quotechar) - push!(result, ("syntax_quotechar", _t1529,)) + _t1532 = _make_value_string(pp, msg.syntax_quotechar) + push!(result, ("syntax_quotechar", _t1532,)) end if !isnothing(msg.syntax_escapechar) - _t1530 = _make_value_string(pp, msg.syntax_escapechar) - push!(result, ("syntax_escapechar", _t1530,)) + _t1533 = _make_value_string(pp, msg.syntax_escapechar) + push!(result, ("syntax_escapechar", _t1533,)) end return sort(result) end @@ -497,7 +511,7 @@ function deconstruct_relation_id_uint128(pp::PrettyPrinter, msg::Proto.RelationI if isnothing(name) return relation_id_to_uint128(pp, msg) else - _t1531 = nothing + _t1534 = nothing end return nothing end @@ -4254,12 +4268,12 @@ end function pretty_debug_info(pp::PrettyPrinter, msg::Proto.DebugInfo) write(pp, "(debug_info") indent_sexp!(pp) - for (i1532, _rid) in enumerate(msg.ids) - _idx = i1532 - 1 + for (i1535, _rid) in enumerate(msg.ids) + _idx = i1535 - 1 newline(pp) write(pp, "(") - _t1533 = Proto.UInt128Value(low=_rid.id_low, high=_rid.id_high) - _pprint_dispatch(pp, _t1533) + _t1536 = Proto.UInt128Value(low=_rid.id_low, high=_rid.id_high) + _pprint_dispatch(pp, _t1536) write(pp, " ") write(pp, format_string(pp, msg.orig_names[_idx + 1])) write(pp, ")") @@ -4331,8 +4345,8 @@ function pretty_functional_dependency(pp::PrettyPrinter, msg::Proto.FunctionalDe _pprint_dispatch(pp, msg.guard) newline(pp) write(pp, ":keys (") - for (i1534, _elem) in enumerate(msg.keys) - _idx = i1534 - 1 + for (i1537, _elem) in enumerate(msg.keys) + _idx = i1537 - 1 if (_idx > 0) write(pp, " ") end @@ -4341,8 +4355,8 @@ function pretty_functional_dependency(pp::PrettyPrinter, msg::Proto.FunctionalDe write(pp, ")") newline(pp) write(pp, ":values (") - for (i1535, _elem) in enumerate(msg.values) - _idx = i1535 - 1 + for (i1538, _elem) in enumerate(msg.values) + _idx = i1538 - 1 if (_idx > 0) write(pp, " ") end @@ -4373,8 +4387,8 @@ function pretty_export_csv_columns(pp::PrettyPrinter, msg::Proto.ExportCSVColumn indent_sexp!(pp) newline(pp) write(pp, ":columns (") - for (i1536, _elem) in enumerate(msg.columns) - _idx = i1536 - 1 + for (i1539, _elem) in enumerate(msg.columns) + _idx = i1539 - 1 if (_idx > 0) write(pp, " ") end @@ -4415,6 +4429,25 @@ function pretty_maintenance_level(pp::PrettyPrinter, x::Proto.MaintenanceLevel.T return nothing end +function pretty_optimization_level(pp::PrettyPrinter, x::Proto.OptimizationLevel.T) + if x == Proto.OptimizationLevel.OPTIMIZATION_LEVEL_UNSPECIFIED + write(pp, "unspecified") + else + if x == Proto.OptimizationLevel.OPTIMIZATION_LEVEL_DEFAULT + write(pp, "default") + else + if x == Proto.OptimizationLevel.OPTIMIZATION_LEVEL_CONSERVATIVE + write(pp, "conservative") + else + if x == Proto.OptimizationLevel.OPTIMIZATION_LEVEL_AGGRESSIVE + write(pp, "aggressive") + end + end + end + end + return nothing +end + # --- pprint dispatch (generated) --- _pprint_dispatch(pp::PrettyPrinter, x::Proto.Transaction) = pretty_transaction(pp, x) _pprint_dispatch(pp::PrettyPrinter, x::Proto.Configure) = pretty_configure(pp, x) @@ -4529,6 +4562,7 @@ _pprint_dispatch(pp::PrettyPrinter, x::Proto.UInt128Value) = pretty_u_int128_val _pprint_dispatch(pp::PrettyPrinter, x::Proto.ExportCSVColumns) = pretty_export_csv_columns(pp, x) _pprint_dispatch(pp::PrettyPrinter, x::Proto.IVMConfig) = pretty_ivm_config(pp, x) _pprint_dispatch(pp::PrettyPrinter, x::Proto.MaintenanceLevel.T) = pretty_maintenance_level(pp, x) +_pprint_dispatch(pp::PrettyPrinter, x::Proto.OptimizationLevel.T) = pretty_optimization_level(pp, x) # --- pprint API --- diff --git a/sdks/julia/LogicalQueryProtocol.jl/test/explicit_imports_test.jl b/sdks/julia/LogicalQueryProtocol.jl/test/explicit_imports_test.jl index 7cb34907..5cbd59ed 100644 --- a/sdks/julia/LogicalQueryProtocol.jl/test/explicit_imports_test.jl +++ b/sdks/julia/LogicalQueryProtocol.jl/test/explicit_imports_test.jl @@ -25,7 +25,7 @@ check_no_stale_explicit_imports( LogicalQueryProtocol; ignore=reexported_names, - allow_unanalyzable=(LogicalQueryProtocol.MaintenanceLevel,), + allow_unanalyzable=(LogicalQueryProtocol.OptimizationLevel, LogicalQueryProtocol.MaintenanceLevel,), ) check_all_explicit_imports_via_owners(LogicalQueryProtocol) check_all_qualified_accesses_via_owners( diff --git a/sdks/python/src/lqp/gen/parser.py b/sdks/python/src/lqp/gen/parser.py index 0c8c07f2..06803062 100644 --- a/sdks/python/src/lqp/gen/parser.py +++ b/sdks/python/src/lqp/gen/parser.py @@ -587,7 +587,7 @@ def construct_betree_info(self, key_types: Sequence[logic_pb2.Type], value_types def default_configure(self) -> transactions_pb2.Configure: _t1854 = transactions_pb2.IVMConfig(level=transactions_pb2.MaintenanceLevel.MAINTENANCE_LEVEL_OFF) ivm_config = _t1854 - _t1855 = transactions_pb2.Configure(semantics_version=0, ivm_config=ivm_config) + _t1855 = transactions_pb2.Configure(semantics_version=0, ivm_config=ivm_config, optimization_level=transactions_pb2.OptimizationLevel.OPTIMIZATION_LEVEL_DEFAULT) return _t1855 def construct_configure(self, config_dict: Sequence[tuple[str, logic_pb2.Value]]) -> transactions_pb2.Configure: @@ -609,7 +609,20 @@ def construct_configure(self, config_dict: Sequence[tuple[str, logic_pb2.Value]] ivm_config = _t1856 _t1857 = self._extract_value_int64(config.get("semantics_version"), 0) semantics_version = _t1857 - _t1858 = transactions_pb2.Configure(semantics_version=semantics_version, ivm_config=ivm_config) + optimization_level_val = config.get("optimization_level") + optimization_level = transactions_pb2.OptimizationLevel.OPTIMIZATION_LEVEL_DEFAULT + if (optimization_level_val is not None and optimization_level_val.HasField("string_value")): + if optimization_level_val.string_value == "default": + optimization_level = transactions_pb2.OptimizationLevel.OPTIMIZATION_LEVEL_DEFAULT + else: + if optimization_level_val.string_value == "conservative": + optimization_level = transactions_pb2.OptimizationLevel.OPTIMIZATION_LEVEL_CONSERVATIVE + else: + if optimization_level_val.string_value == "aggressive": + optimization_level = transactions_pb2.OptimizationLevel.OPTIMIZATION_LEVEL_AGGRESSIVE + else: + optimization_level = transactions_pb2.OptimizationLevel.OPTIMIZATION_LEVEL_DEFAULT + _t1858 = transactions_pb2.Configure(semantics_version=semantics_version, ivm_config=ivm_config, optimization_level=optimization_level) return _t1858 def construct_export_csv_config(self, path: str, columns: Sequence[transactions_pb2.ExportCSVColumn], config_dict: Sequence[tuple[str, logic_pb2.Value]]) -> transactions_pb2.ExportCSVConfig: diff --git a/sdks/python/src/lqp/gen/pretty.py b/sdks/python/src/lqp/gen/pretty.py index ec41c6e4..c3b579fb 100644 --- a/sdks/python/src/lqp/gen/pretty.py +++ b/sdks/python/src/lqp/gen/pretty.py @@ -243,98 +243,109 @@ def deconstruct_configure(self, msg: transactions_pb2.Configure) -> list[tuple[s if msg.ivm_config.level == transactions_pb2.MaintenanceLevel.MAINTENANCE_LEVEL_OFF: _t1467 = self._make_value_string("off") result.append(("ivm.maintenance_level", _t1467,)) - _t1468 = self._make_value_int64(msg.semantics_version) - result.append(("semantics_version", _t1468,)) + if msg.optimization_level == transactions_pb2.OptimizationLevel.OPTIMIZATION_LEVEL_DEFAULT: + _t1468 = self._make_value_string("default") + result.append(("optimization_level", _t1468,)) + else: + if msg.optimization_level == transactions_pb2.OptimizationLevel.OPTIMIZATION_LEVEL_CONSERVATIVE: + _t1469 = self._make_value_string("conservative") + result.append(("optimization_level", _t1469,)) + else: + if msg.optimization_level == transactions_pb2.OptimizationLevel.OPTIMIZATION_LEVEL_AGGRESSIVE: + _t1470 = self._make_value_string("aggressive") + result.append(("optimization_level", _t1470,)) + _t1471 = self._make_value_int64(msg.semantics_version) + result.append(("semantics_version", _t1471,)) return sorted(result) def deconstruct_csv_config(self, msg: logic_pb2.CSVConfig) -> list[tuple[str, logic_pb2.Value]]: result = [] - _t1469 = self._make_value_int32(msg.header_row) - result.append(("csv_header_row", _t1469,)) - _t1470 = self._make_value_int64(msg.skip) - result.append(("csv_skip", _t1470,)) + _t1472 = self._make_value_int32(msg.header_row) + result.append(("csv_header_row", _t1472,)) + _t1473 = self._make_value_int64(msg.skip) + result.append(("csv_skip", _t1473,)) if msg.new_line != "": - _t1471 = self._make_value_string(msg.new_line) - result.append(("csv_new_line", _t1471,)) - _t1472 = self._make_value_string(msg.delimiter) - result.append(("csv_delimiter", _t1472,)) - _t1473 = self._make_value_string(msg.quotechar) - result.append(("csv_quotechar", _t1473,)) - _t1474 = self._make_value_string(msg.escapechar) - result.append(("csv_escapechar", _t1474,)) + _t1474 = self._make_value_string(msg.new_line) + result.append(("csv_new_line", _t1474,)) + _t1475 = self._make_value_string(msg.delimiter) + result.append(("csv_delimiter", _t1475,)) + _t1476 = self._make_value_string(msg.quotechar) + result.append(("csv_quotechar", _t1476,)) + _t1477 = self._make_value_string(msg.escapechar) + result.append(("csv_escapechar", _t1477,)) if msg.comment != "": - _t1475 = self._make_value_string(msg.comment) - result.append(("csv_comment", _t1475,)) + _t1478 = self._make_value_string(msg.comment) + result.append(("csv_comment", _t1478,)) for missing_string in msg.missing_strings: - _t1476 = self._make_value_string(missing_string) - result.append(("csv_missing_strings", _t1476,)) - _t1477 = self._make_value_string(msg.decimal_separator) - result.append(("csv_decimal_separator", _t1477,)) - _t1478 = self._make_value_string(msg.encoding) - result.append(("csv_encoding", _t1478,)) - _t1479 = self._make_value_string(msg.compression) - result.append(("csv_compression", _t1479,)) + _t1479 = self._make_value_string(missing_string) + result.append(("csv_missing_strings", _t1479,)) + _t1480 = self._make_value_string(msg.decimal_separator) + result.append(("csv_decimal_separator", _t1480,)) + _t1481 = self._make_value_string(msg.encoding) + result.append(("csv_encoding", _t1481,)) + _t1482 = self._make_value_string(msg.compression) + result.append(("csv_compression", _t1482,)) if msg.partition_size_mb != 0: - _t1480 = self._make_value_int64(msg.partition_size_mb) - result.append(("csv_partition_size_mb", _t1480,)) + _t1483 = self._make_value_int64(msg.partition_size_mb) + result.append(("csv_partition_size_mb", _t1483,)) return sorted(result) def deconstruct_betree_info_config(self, msg: logic_pb2.BeTreeInfo) -> list[tuple[str, logic_pb2.Value]]: result = [] - _t1481 = self._make_value_float64(msg.storage_config.epsilon) - result.append(("betree_config_epsilon", _t1481,)) - _t1482 = self._make_value_int64(msg.storage_config.max_pivots) - result.append(("betree_config_max_pivots", _t1482,)) - _t1483 = self._make_value_int64(msg.storage_config.max_deltas) - result.append(("betree_config_max_deltas", _t1483,)) - _t1484 = self._make_value_int64(msg.storage_config.max_leaf) - result.append(("betree_config_max_leaf", _t1484,)) + _t1484 = self._make_value_float64(msg.storage_config.epsilon) + result.append(("betree_config_epsilon", _t1484,)) + _t1485 = self._make_value_int64(msg.storage_config.max_pivots) + result.append(("betree_config_max_pivots", _t1485,)) + _t1486 = self._make_value_int64(msg.storage_config.max_deltas) + result.append(("betree_config_max_deltas", _t1486,)) + _t1487 = self._make_value_int64(msg.storage_config.max_leaf) + result.append(("betree_config_max_leaf", _t1487,)) if msg.relation_locator.HasField("root_pageid"): if msg.relation_locator.root_pageid is not None: assert msg.relation_locator.root_pageid is not None - _t1485 = self._make_value_uint128(msg.relation_locator.root_pageid) - result.append(("betree_locator_root_pageid", _t1485,)) + _t1488 = self._make_value_uint128(msg.relation_locator.root_pageid) + result.append(("betree_locator_root_pageid", _t1488,)) if msg.relation_locator.HasField("inline_data"): if msg.relation_locator.inline_data is not None: assert msg.relation_locator.inline_data is not None - _t1486 = self._make_value_string(msg.relation_locator.inline_data.decode('utf-8')) - result.append(("betree_locator_inline_data", _t1486,)) - _t1487 = self._make_value_int64(msg.relation_locator.element_count) - result.append(("betree_locator_element_count", _t1487,)) - _t1488 = self._make_value_int64(msg.relation_locator.tree_height) - result.append(("betree_locator_tree_height", _t1488,)) + _t1489 = self._make_value_string(msg.relation_locator.inline_data.decode('utf-8')) + result.append(("betree_locator_inline_data", _t1489,)) + _t1490 = self._make_value_int64(msg.relation_locator.element_count) + result.append(("betree_locator_element_count", _t1490,)) + _t1491 = self._make_value_int64(msg.relation_locator.tree_height) + result.append(("betree_locator_tree_height", _t1491,)) return sorted(result) def deconstruct_export_csv_config(self, msg: transactions_pb2.ExportCSVConfig) -> list[tuple[str, logic_pb2.Value]]: result = [] if msg.partition_size is not None: assert msg.partition_size is not None - _t1489 = self._make_value_int64(msg.partition_size) - result.append(("partition_size", _t1489,)) + _t1492 = self._make_value_int64(msg.partition_size) + result.append(("partition_size", _t1492,)) if msg.compression is not None: assert msg.compression is not None - _t1490 = self._make_value_string(msg.compression) - result.append(("compression", _t1490,)) + _t1493 = self._make_value_string(msg.compression) + result.append(("compression", _t1493,)) if msg.syntax_header_row is not None: assert msg.syntax_header_row is not None - _t1491 = self._make_value_boolean(msg.syntax_header_row) - result.append(("syntax_header_row", _t1491,)) + _t1494 = self._make_value_boolean(msg.syntax_header_row) + result.append(("syntax_header_row", _t1494,)) if msg.syntax_missing_string is not None: assert msg.syntax_missing_string is not None - _t1492 = self._make_value_string(msg.syntax_missing_string) - result.append(("syntax_missing_string", _t1492,)) + _t1495 = self._make_value_string(msg.syntax_missing_string) + result.append(("syntax_missing_string", _t1495,)) if msg.syntax_delim is not None: assert msg.syntax_delim is not None - _t1493 = self._make_value_string(msg.syntax_delim) - result.append(("syntax_delim", _t1493,)) + _t1496 = self._make_value_string(msg.syntax_delim) + result.append(("syntax_delim", _t1496,)) if msg.syntax_quotechar is not None: assert msg.syntax_quotechar is not None - _t1494 = self._make_value_string(msg.syntax_quotechar) - result.append(("syntax_quotechar", _t1494,)) + _t1497 = self._make_value_string(msg.syntax_quotechar) + result.append(("syntax_quotechar", _t1497,)) if msg.syntax_escapechar is not None: assert msg.syntax_escapechar is not None - _t1495 = self._make_value_string(msg.syntax_escapechar) - result.append(("syntax_escapechar", _t1495,)) + _t1498 = self._make_value_string(msg.syntax_escapechar) + result.append(("syntax_escapechar", _t1498,)) return sorted(result) def deconstruct_relation_id_string(self, msg: logic_pb2.RelationId) -> str: @@ -347,7 +358,7 @@ def deconstruct_relation_id_uint128(self, msg: logic_pb2.RelationId) -> logic_pb if name is None: return self.relation_id_to_uint128(msg) else: - _t1496 = None + _t1499 = None return None def deconstruct_bindings(self, abs: logic_pb2.Abstraction) -> tuple[Sequence[logic_pb2.Binding], Sequence[logic_pb2.Binding]]: @@ -3666,8 +3677,8 @@ def pretty_debug_info(self, msg: fragments_pb2.DebugInfo): for _idx, _rid in enumerate(msg.ids): self.newline() self.write("(") - _t1497 = logic_pb2.UInt128Value(low=_rid.id_low, high=_rid.id_high) - self.pprint_dispatch(_t1497) + _t1500 = logic_pb2.UInt128Value(low=_rid.id_low, high=_rid.id_high) + self.pprint_dispatch(_t1500) self.write(" ") self.write(self.format_string_value(msg.orig_names[_idx])) self.write(")") @@ -3785,6 +3796,19 @@ def pretty_maintenance_level(self, x: int): if x == transactions_pb2.MaintenanceLevel.MAINTENANCE_LEVEL_ALL: self.write("all") + def pretty_optimization_level(self, x: int): + if x == transactions_pb2.OptimizationLevel.OPTIMIZATION_LEVEL_UNSPECIFIED: + self.write("unspecified") + else: + if x == transactions_pb2.OptimizationLevel.OPTIMIZATION_LEVEL_DEFAULT: + self.write("default") + else: + if x == transactions_pb2.OptimizationLevel.OPTIMIZATION_LEVEL_CONSERVATIVE: + self.write("conservative") + else: + if x == transactions_pb2.OptimizationLevel.OPTIMIZATION_LEVEL_AGGRESSIVE: + self.write("aggressive") + # --- Dispatch --- def pprint_dispatch(self, msg): @@ -3983,6 +4007,9 @@ def pprint_dispatch(self, msg): # enum: int elif isinstance(msg, int): self.pretty_maintenance_level(msg) + # enum: int + elif isinstance(msg, int): + self.pretty_optimization_level(msg) else: raise ParseError(f"no pretty printer for {type(msg)}") diff --git a/sdks/python/src/lqp/proto/v1/transactions_pb2.py b/sdks/python/src/lqp/proto/v1/transactions_pb2.py index 4d771cac..115f971d 100644 --- a/sdks/python/src/lqp/proto/v1/transactions_pb2.py +++ b/sdks/python/src/lqp/proto/v1/transactions_pb2.py @@ -16,7 +16,7 @@ from lqp.proto.v1 import logic_pb2 as relationalai_dot_lqp_dot_v1_dot_logic__pb2 -DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n&relationalai/lqp/v1/transactions.proto\x12\x13relationalai.lqp.v1\x1a#relationalai/lqp/v1/fragments.proto\x1a\x1frelationalai/lqp/v1/logic.proto\"\xbc\x01\n\x0bTransaction\x12\x32\n\x06\x65pochs\x18\x01 \x03(\x0b\x32\x1a.relationalai.lqp.v1.EpochR\x06\x65pochs\x12<\n\tconfigure\x18\x02 \x01(\x0b\x32\x1e.relationalai.lqp.v1.ConfigureR\tconfigure\x12\x32\n\x04sync\x18\x03 \x01(\x0b\x32\x19.relationalai.lqp.v1.SyncH\x00R\x04sync\x88\x01\x01\x42\x07\n\x05_sync\"w\n\tConfigure\x12+\n\x11semantics_version\x18\x01 \x01(\x03R\x10semanticsVersion\x12=\n\nivm_config\x18\x02 \x01(\x0b\x32\x1e.relationalai.lqp.v1.IVMConfigR\tivmConfig\"H\n\tIVMConfig\x12;\n\x05level\x18\x01 \x01(\x0e\x32%.relationalai.lqp.v1.MaintenanceLevelR\x05level\"E\n\x04Sync\x12=\n\tfragments\x18\x01 \x03(\x0b\x32\x1f.relationalai.lqp.v1.FragmentIdR\tfragments\"l\n\x05\x45poch\x12\x32\n\x06writes\x18\x01 \x03(\x0b\x32\x1a.relationalai.lqp.v1.WriteR\x06writes\x12/\n\x05reads\x18\x02 \x03(\x0b\x32\x19.relationalai.lqp.v1.ReadR\x05reads\"\x86\x02\n\x05Write\x12\x35\n\x06\x64\x65\x66ine\x18\x01 \x01(\x0b\x32\x1b.relationalai.lqp.v1.DefineH\x00R\x06\x64\x65\x66ine\x12;\n\x08undefine\x18\x02 \x01(\x0b\x32\x1d.relationalai.lqp.v1.UndefineH\x00R\x08undefine\x12\x38\n\x07\x63ontext\x18\x03 \x01(\x0b\x32\x1c.relationalai.lqp.v1.ContextH\x00R\x07\x63ontext\x12;\n\x08snapshot\x18\x05 \x01(\x0b\x32\x1d.relationalai.lqp.v1.SnapshotH\x00R\x08snapshotB\x0c\n\nwrite_typeJ\x04\x08\x04\x10\x05\"C\n\x06\x44\x65\x66ine\x12\x39\n\x08\x66ragment\x18\x01 \x01(\x0b\x32\x1d.relationalai.lqp.v1.FragmentR\x08\x66ragment\"L\n\x08Undefine\x12@\n\x0b\x66ragment_id\x18\x01 \x01(\x0b\x32\x1f.relationalai.lqp.v1.FragmentIdR\nfragmentId\"H\n\x07\x43ontext\x12=\n\trelations\x18\x01 \x03(\x0b\x32\x1f.relationalai.lqp.v1.RelationIdR\trelations\"\x86\x01\n\x0fSnapshotMapping\x12)\n\x10\x64\x65stination_path\x18\x01 \x03(\tR\x0f\x64\x65stinationPath\x12H\n\x0fsource_relation\x18\x02 \x01(\x0b\x32\x1f.relationalai.lqp.v1.RelationIdR\x0esourceRelation\"L\n\x08Snapshot\x12@\n\x08mappings\x18\x01 \x03(\x0b\x32$.relationalai.lqp.v1.SnapshotMappingR\x08mappings\"\xc8\x05\n\x0f\x45xportCSVConfig\x12\x12\n\x04path\x18\x01 \x01(\tR\x04path\x12\x43\n\ncsv_source\x18\n \x01(\x0b\x32$.relationalai.lqp.v1.ExportCSVSourceR\tcsvSource\x12=\n\ncsv_config\x18\x0b \x01(\x0b\x32\x1e.relationalai.lqp.v1.CSVConfigR\tcsvConfig\x12G\n\x0c\x64\x61ta_columns\x18\x02 \x03(\x0b\x32$.relationalai.lqp.v1.ExportCSVColumnR\x0b\x64\x61taColumns\x12*\n\x0epartition_size\x18\x03 \x01(\x03H\x00R\rpartitionSize\x88\x01\x01\x12%\n\x0b\x63ompression\x18\x04 \x01(\tH\x01R\x0b\x63ompression\x88\x01\x01\x12/\n\x11syntax_header_row\x18\x05 \x01(\x08H\x02R\x0fsyntaxHeaderRow\x88\x01\x01\x12\x37\n\x15syntax_missing_string\x18\x06 \x01(\tH\x03R\x13syntaxMissingString\x88\x01\x01\x12&\n\x0csyntax_delim\x18\x07 \x01(\tH\x04R\x0bsyntaxDelim\x88\x01\x01\x12.\n\x10syntax_quotechar\x18\x08 \x01(\tH\x05R\x0fsyntaxQuotechar\x88\x01\x01\x12\x30\n\x11syntax_escapechar\x18\t \x01(\tH\x06R\x10syntaxEscapechar\x88\x01\x01\x42\x11\n\x0f_partition_sizeB\x0e\n\x0c_compressionB\x14\n\x12_syntax_header_rowB\x18\n\x16_syntax_missing_stringB\x0f\n\r_syntax_delimB\x13\n\x11_syntax_quotecharB\x14\n\x12_syntax_escapechar\"t\n\x0f\x45xportCSVColumn\x12\x1f\n\x0b\x63olumn_name\x18\x01 \x01(\tR\ncolumnName\x12@\n\x0b\x63olumn_data\x18\x02 \x01(\x0b\x32\x1f.relationalai.lqp.v1.RelationIdR\ncolumnData\"R\n\x10\x45xportCSVColumns\x12>\n\x07\x63olumns\x18\x01 \x03(\x0b\x32$.relationalai.lqp.v1.ExportCSVColumnR\x07\x63olumns\"\xa9\x01\n\x0f\x45xportCSVSource\x12H\n\x0bgnf_columns\x18\x01 \x01(\x0b\x32%.relationalai.lqp.v1.ExportCSVColumnsH\x00R\ngnfColumns\x12>\n\ttable_def\x18\x02 \x01(\x0b\x32\x1f.relationalai.lqp.v1.RelationIdH\x00R\x08tableDefB\x0c\n\ncsv_source\"\xa4\x02\n\x04Read\x12\x35\n\x06\x64\x65mand\x18\x01 \x01(\x0b\x32\x1b.relationalai.lqp.v1.DemandH\x00R\x06\x64\x65mand\x12\x35\n\x06output\x18\x02 \x01(\x0b\x32\x1b.relationalai.lqp.v1.OutputH\x00R\x06output\x12\x36\n\x07what_if\x18\x03 \x01(\x0b\x32\x1b.relationalai.lqp.v1.WhatIfH\x00R\x06whatIf\x12\x32\n\x05\x61\x62ort\x18\x04 \x01(\x0b\x32\x1a.relationalai.lqp.v1.AbortH\x00R\x05\x61\x62ort\x12\x35\n\x06\x65xport\x18\x05 \x01(\x0b\x32\x1b.relationalai.lqp.v1.ExportH\x00R\x06\x65xportB\x0b\n\tread_type\"J\n\x06\x44\x65mand\x12@\n\x0brelation_id\x18\x01 \x01(\x0b\x32\x1f.relationalai.lqp.v1.RelationIdR\nrelationId\"^\n\x06Output\x12\x12\n\x04name\x18\x01 \x01(\tR\x04name\x12@\n\x0brelation_id\x18\x02 \x01(\x0b\x32\x1f.relationalai.lqp.v1.RelationIdR\nrelationId\"`\n\x06\x45xport\x12\x45\n\ncsv_config\x18\x01 \x01(\x0b\x32$.relationalai.lqp.v1.ExportCSVConfigH\x00R\tcsvConfigB\x0f\n\rexport_config\"R\n\x06WhatIf\x12\x16\n\x06\x62ranch\x18\x01 \x01(\tR\x06\x62ranch\x12\x30\n\x05\x65poch\x18\x02 \x01(\x0b\x32\x1a.relationalai.lqp.v1.EpochR\x05\x65poch\"]\n\x05\x41\x62ort\x12\x12\n\x04name\x18\x01 \x01(\tR\x04name\x12@\n\x0brelation_id\x18\x02 \x01(\x0b\x32\x1f.relationalai.lqp.v1.RelationIdR\nrelationId*\x87\x01\n\x10MaintenanceLevel\x12!\n\x1dMAINTENANCE_LEVEL_UNSPECIFIED\x10\x00\x12\x19\n\x15MAINTENANCE_LEVEL_OFF\x10\x01\x12\x1a\n\x16MAINTENANCE_LEVEL_AUTO\x10\x02\x12\x19\n\x15MAINTENANCE_LEVEL_ALL\x10\x03\x42\x43ZAgithub.com/RelationalAI/logical-query-protocol/sdks/go/src/lqp/v1b\x06proto3') +DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n&relationalai/lqp/v1/transactions.proto\x12\x13relationalai.lqp.v1\x1a#relationalai/lqp/v1/fragments.proto\x1a\x1frelationalai/lqp/v1/logic.proto\"\xbc\x01\n\x0bTransaction\x12\x32\n\x06\x65pochs\x18\x01 \x03(\x0b\x32\x1a.relationalai.lqp.v1.EpochR\x06\x65pochs\x12<\n\tconfigure\x18\x02 \x01(\x0b\x32\x1e.relationalai.lqp.v1.ConfigureR\tconfigure\x12\x32\n\x04sync\x18\x03 \x01(\x0b\x32\x19.relationalai.lqp.v1.SyncH\x00R\x04sync\x88\x01\x01\x42\x07\n\x05_sync\"\xce\x01\n\tConfigure\x12+\n\x11semantics_version\x18\x01 \x01(\x03R\x10semanticsVersion\x12=\n\nivm_config\x18\x02 \x01(\x0b\x32\x1e.relationalai.lqp.v1.IVMConfigR\tivmConfig\x12U\n\x12optimization_level\x18\x03 \x01(\x0e\x32&.relationalai.lqp.v1.OptimizationLevelR\x11optimizationLevel\"H\n\tIVMConfig\x12;\n\x05level\x18\x01 \x01(\x0e\x32%.relationalai.lqp.v1.MaintenanceLevelR\x05level\"E\n\x04Sync\x12=\n\tfragments\x18\x01 \x03(\x0b\x32\x1f.relationalai.lqp.v1.FragmentIdR\tfragments\"l\n\x05\x45poch\x12\x32\n\x06writes\x18\x01 \x03(\x0b\x32\x1a.relationalai.lqp.v1.WriteR\x06writes\x12/\n\x05reads\x18\x02 \x03(\x0b\x32\x19.relationalai.lqp.v1.ReadR\x05reads\"\x86\x02\n\x05Write\x12\x35\n\x06\x64\x65\x66ine\x18\x01 \x01(\x0b\x32\x1b.relationalai.lqp.v1.DefineH\x00R\x06\x64\x65\x66ine\x12;\n\x08undefine\x18\x02 \x01(\x0b\x32\x1d.relationalai.lqp.v1.UndefineH\x00R\x08undefine\x12\x38\n\x07\x63ontext\x18\x03 \x01(\x0b\x32\x1c.relationalai.lqp.v1.ContextH\x00R\x07\x63ontext\x12;\n\x08snapshot\x18\x05 \x01(\x0b\x32\x1d.relationalai.lqp.v1.SnapshotH\x00R\x08snapshotB\x0c\n\nwrite_typeJ\x04\x08\x04\x10\x05\"C\n\x06\x44\x65\x66ine\x12\x39\n\x08\x66ragment\x18\x01 \x01(\x0b\x32\x1d.relationalai.lqp.v1.FragmentR\x08\x66ragment\"L\n\x08Undefine\x12@\n\x0b\x66ragment_id\x18\x01 \x01(\x0b\x32\x1f.relationalai.lqp.v1.FragmentIdR\nfragmentId\"H\n\x07\x43ontext\x12=\n\trelations\x18\x01 \x03(\x0b\x32\x1f.relationalai.lqp.v1.RelationIdR\trelations\"\x86\x01\n\x0fSnapshotMapping\x12)\n\x10\x64\x65stination_path\x18\x01 \x03(\tR\x0f\x64\x65stinationPath\x12H\n\x0fsource_relation\x18\x02 \x01(\x0b\x32\x1f.relationalai.lqp.v1.RelationIdR\x0esourceRelation\"L\n\x08Snapshot\x12@\n\x08mappings\x18\x01 \x03(\x0b\x32$.relationalai.lqp.v1.SnapshotMappingR\x08mappings\"\xc8\x05\n\x0f\x45xportCSVConfig\x12\x12\n\x04path\x18\x01 \x01(\tR\x04path\x12\x43\n\ncsv_source\x18\n \x01(\x0b\x32$.relationalai.lqp.v1.ExportCSVSourceR\tcsvSource\x12=\n\ncsv_config\x18\x0b \x01(\x0b\x32\x1e.relationalai.lqp.v1.CSVConfigR\tcsvConfig\x12G\n\x0c\x64\x61ta_columns\x18\x02 \x03(\x0b\x32$.relationalai.lqp.v1.ExportCSVColumnR\x0b\x64\x61taColumns\x12*\n\x0epartition_size\x18\x03 \x01(\x03H\x00R\rpartitionSize\x88\x01\x01\x12%\n\x0b\x63ompression\x18\x04 \x01(\tH\x01R\x0b\x63ompression\x88\x01\x01\x12/\n\x11syntax_header_row\x18\x05 \x01(\x08H\x02R\x0fsyntaxHeaderRow\x88\x01\x01\x12\x37\n\x15syntax_missing_string\x18\x06 \x01(\tH\x03R\x13syntaxMissingString\x88\x01\x01\x12&\n\x0csyntax_delim\x18\x07 \x01(\tH\x04R\x0bsyntaxDelim\x88\x01\x01\x12.\n\x10syntax_quotechar\x18\x08 \x01(\tH\x05R\x0fsyntaxQuotechar\x88\x01\x01\x12\x30\n\x11syntax_escapechar\x18\t \x01(\tH\x06R\x10syntaxEscapechar\x88\x01\x01\x42\x11\n\x0f_partition_sizeB\x0e\n\x0c_compressionB\x14\n\x12_syntax_header_rowB\x18\n\x16_syntax_missing_stringB\x0f\n\r_syntax_delimB\x13\n\x11_syntax_quotecharB\x14\n\x12_syntax_escapechar\"t\n\x0f\x45xportCSVColumn\x12\x1f\n\x0b\x63olumn_name\x18\x01 \x01(\tR\ncolumnName\x12@\n\x0b\x63olumn_data\x18\x02 \x01(\x0b\x32\x1f.relationalai.lqp.v1.RelationIdR\ncolumnData\"R\n\x10\x45xportCSVColumns\x12>\n\x07\x63olumns\x18\x01 \x03(\x0b\x32$.relationalai.lqp.v1.ExportCSVColumnR\x07\x63olumns\"\xa9\x01\n\x0f\x45xportCSVSource\x12H\n\x0bgnf_columns\x18\x01 \x01(\x0b\x32%.relationalai.lqp.v1.ExportCSVColumnsH\x00R\ngnfColumns\x12>\n\ttable_def\x18\x02 \x01(\x0b\x32\x1f.relationalai.lqp.v1.RelationIdH\x00R\x08tableDefB\x0c\n\ncsv_source\"\xa4\x02\n\x04Read\x12\x35\n\x06\x64\x65mand\x18\x01 \x01(\x0b\x32\x1b.relationalai.lqp.v1.DemandH\x00R\x06\x64\x65mand\x12\x35\n\x06output\x18\x02 \x01(\x0b\x32\x1b.relationalai.lqp.v1.OutputH\x00R\x06output\x12\x36\n\x07what_if\x18\x03 \x01(\x0b\x32\x1b.relationalai.lqp.v1.WhatIfH\x00R\x06whatIf\x12\x32\n\x05\x61\x62ort\x18\x04 \x01(\x0b\x32\x1a.relationalai.lqp.v1.AbortH\x00R\x05\x61\x62ort\x12\x35\n\x06\x65xport\x18\x05 \x01(\x0b\x32\x1b.relationalai.lqp.v1.ExportH\x00R\x06\x65xportB\x0b\n\tread_type\"J\n\x06\x44\x65mand\x12@\n\x0brelation_id\x18\x01 \x01(\x0b\x32\x1f.relationalai.lqp.v1.RelationIdR\nrelationId\"^\n\x06Output\x12\x12\n\x04name\x18\x01 \x01(\tR\x04name\x12@\n\x0brelation_id\x18\x02 \x01(\x0b\x32\x1f.relationalai.lqp.v1.RelationIdR\nrelationId\"`\n\x06\x45xport\x12\x45\n\ncsv_config\x18\x01 \x01(\x0b\x32$.relationalai.lqp.v1.ExportCSVConfigH\x00R\tcsvConfigB\x0f\n\rexport_config\"R\n\x06WhatIf\x12\x16\n\x06\x62ranch\x18\x01 \x01(\tR\x06\x62ranch\x12\x30\n\x05\x65poch\x18\x02 \x01(\x0b\x32\x1a.relationalai.lqp.v1.EpochR\x05\x65poch\"]\n\x05\x41\x62ort\x12\x12\n\x04name\x18\x01 \x01(\tR\x04name\x12@\n\x0brelation_id\x18\x02 \x01(\x0b\x32\x1f.relationalai.lqp.v1.RelationIdR\nrelationId*\x87\x01\n\x10MaintenanceLevel\x12!\n\x1dMAINTENANCE_LEVEL_UNSPECIFIED\x10\x00\x12\x19\n\x15MAINTENANCE_LEVEL_OFF\x10\x01\x12\x1a\n\x16MAINTENANCE_LEVEL_AUTO\x10\x02\x12\x19\n\x15MAINTENANCE_LEVEL_ALL\x10\x03*\x9f\x01\n\x11OptimizationLevel\x12\"\n\x1eOPTIMIZATION_LEVEL_UNSPECIFIED\x10\x00\x12\x1e\n\x1aOPTIMIZATION_LEVEL_DEFAULT\x10\x01\x12#\n\x1fOPTIMIZATION_LEVEL_CONSERVATIVE\x10\x02\x12!\n\x1dOPTIMIZATION_LEVEL_AGGRESSIVE\x10\x03\x42\x43ZAgithub.com/RelationalAI/logical-query-protocol/sdks/go/src/lqp/v1b\x06proto3') _globals = globals() _builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals) @@ -24,48 +24,50 @@ if _descriptor._USE_C_DESCRIPTORS == False: _globals['DESCRIPTOR']._options = None _globals['DESCRIPTOR']._serialized_options = b'ZAgithub.com/RelationalAI/logical-query-protocol/sdks/go/src/lqp/v1' - _globals['_MAINTENANCELEVEL']._serialized_start=3235 - _globals['_MAINTENANCELEVEL']._serialized_end=3370 + _globals['_MAINTENANCELEVEL']._serialized_start=3323 + _globals['_MAINTENANCELEVEL']._serialized_end=3458 + _globals['_OPTIMIZATIONLEVEL']._serialized_start=3461 + _globals['_OPTIMIZATIONLEVEL']._serialized_end=3620 _globals['_TRANSACTION']._serialized_start=134 _globals['_TRANSACTION']._serialized_end=322 - _globals['_CONFIGURE']._serialized_start=324 - _globals['_CONFIGURE']._serialized_end=443 - _globals['_IVMCONFIG']._serialized_start=445 - _globals['_IVMCONFIG']._serialized_end=517 - _globals['_SYNC']._serialized_start=519 - _globals['_SYNC']._serialized_end=588 - _globals['_EPOCH']._serialized_start=590 - _globals['_EPOCH']._serialized_end=698 - _globals['_WRITE']._serialized_start=701 - _globals['_WRITE']._serialized_end=963 - _globals['_DEFINE']._serialized_start=965 - _globals['_DEFINE']._serialized_end=1032 - _globals['_UNDEFINE']._serialized_start=1034 - _globals['_UNDEFINE']._serialized_end=1110 - _globals['_CONTEXT']._serialized_start=1112 - _globals['_CONTEXT']._serialized_end=1184 - _globals['_SNAPSHOTMAPPING']._serialized_start=1187 - _globals['_SNAPSHOTMAPPING']._serialized_end=1321 - _globals['_SNAPSHOT']._serialized_start=1323 - _globals['_SNAPSHOT']._serialized_end=1399 - _globals['_EXPORTCSVCONFIG']._serialized_start=1402 - _globals['_EXPORTCSVCONFIG']._serialized_end=2114 - _globals['_EXPORTCSVCOLUMN']._serialized_start=2116 - _globals['_EXPORTCSVCOLUMN']._serialized_end=2232 - _globals['_EXPORTCSVCOLUMNS']._serialized_start=2234 - _globals['_EXPORTCSVCOLUMNS']._serialized_end=2316 - _globals['_EXPORTCSVSOURCE']._serialized_start=2319 - _globals['_EXPORTCSVSOURCE']._serialized_end=2488 - _globals['_READ']._serialized_start=2491 - _globals['_READ']._serialized_end=2783 - _globals['_DEMAND']._serialized_start=2785 - _globals['_DEMAND']._serialized_end=2859 - _globals['_OUTPUT']._serialized_start=2861 - _globals['_OUTPUT']._serialized_end=2955 - _globals['_EXPORT']._serialized_start=2957 - _globals['_EXPORT']._serialized_end=3053 - _globals['_WHATIF']._serialized_start=3055 - _globals['_WHATIF']._serialized_end=3137 - _globals['_ABORT']._serialized_start=3139 - _globals['_ABORT']._serialized_end=3232 + _globals['_CONFIGURE']._serialized_start=325 + _globals['_CONFIGURE']._serialized_end=531 + _globals['_IVMCONFIG']._serialized_start=533 + _globals['_IVMCONFIG']._serialized_end=605 + _globals['_SYNC']._serialized_start=607 + _globals['_SYNC']._serialized_end=676 + _globals['_EPOCH']._serialized_start=678 + _globals['_EPOCH']._serialized_end=786 + _globals['_WRITE']._serialized_start=789 + _globals['_WRITE']._serialized_end=1051 + _globals['_DEFINE']._serialized_start=1053 + _globals['_DEFINE']._serialized_end=1120 + _globals['_UNDEFINE']._serialized_start=1122 + _globals['_UNDEFINE']._serialized_end=1198 + _globals['_CONTEXT']._serialized_start=1200 + _globals['_CONTEXT']._serialized_end=1272 + _globals['_SNAPSHOTMAPPING']._serialized_start=1275 + _globals['_SNAPSHOTMAPPING']._serialized_end=1409 + _globals['_SNAPSHOT']._serialized_start=1411 + _globals['_SNAPSHOT']._serialized_end=1487 + _globals['_EXPORTCSVCONFIG']._serialized_start=1490 + _globals['_EXPORTCSVCONFIG']._serialized_end=2202 + _globals['_EXPORTCSVCOLUMN']._serialized_start=2204 + _globals['_EXPORTCSVCOLUMN']._serialized_end=2320 + _globals['_EXPORTCSVCOLUMNS']._serialized_start=2322 + _globals['_EXPORTCSVCOLUMNS']._serialized_end=2404 + _globals['_EXPORTCSVSOURCE']._serialized_start=2407 + _globals['_EXPORTCSVSOURCE']._serialized_end=2576 + _globals['_READ']._serialized_start=2579 + _globals['_READ']._serialized_end=2871 + _globals['_DEMAND']._serialized_start=2873 + _globals['_DEMAND']._serialized_end=2947 + _globals['_OUTPUT']._serialized_start=2949 + _globals['_OUTPUT']._serialized_end=3043 + _globals['_EXPORT']._serialized_start=3045 + _globals['_EXPORT']._serialized_end=3141 + _globals['_WHATIF']._serialized_start=3143 + _globals['_WHATIF']._serialized_end=3225 + _globals['_ABORT']._serialized_start=3227 + _globals['_ABORT']._serialized_end=3320 # @@protoc_insertion_point(module_scope) diff --git a/sdks/python/src/lqp/proto/v1/transactions_pb2.pyi b/sdks/python/src/lqp/proto/v1/transactions_pb2.pyi index b5b0dce0..b64314c4 100644 --- a/sdks/python/src/lqp/proto/v1/transactions_pb2.pyi +++ b/sdks/python/src/lqp/proto/v1/transactions_pb2.pyi @@ -15,10 +15,21 @@ class MaintenanceLevel(int, metaclass=_enum_type_wrapper.EnumTypeWrapper): MAINTENANCE_LEVEL_OFF: _ClassVar[MaintenanceLevel] MAINTENANCE_LEVEL_AUTO: _ClassVar[MaintenanceLevel] MAINTENANCE_LEVEL_ALL: _ClassVar[MaintenanceLevel] + +class OptimizationLevel(int, metaclass=_enum_type_wrapper.EnumTypeWrapper): + __slots__ = () + OPTIMIZATION_LEVEL_UNSPECIFIED: _ClassVar[OptimizationLevel] + OPTIMIZATION_LEVEL_DEFAULT: _ClassVar[OptimizationLevel] + OPTIMIZATION_LEVEL_CONSERVATIVE: _ClassVar[OptimizationLevel] + OPTIMIZATION_LEVEL_AGGRESSIVE: _ClassVar[OptimizationLevel] MAINTENANCE_LEVEL_UNSPECIFIED: MaintenanceLevel MAINTENANCE_LEVEL_OFF: MaintenanceLevel MAINTENANCE_LEVEL_AUTO: MaintenanceLevel MAINTENANCE_LEVEL_ALL: MaintenanceLevel +OPTIMIZATION_LEVEL_UNSPECIFIED: OptimizationLevel +OPTIMIZATION_LEVEL_DEFAULT: OptimizationLevel +OPTIMIZATION_LEVEL_CONSERVATIVE: OptimizationLevel +OPTIMIZATION_LEVEL_AGGRESSIVE: OptimizationLevel class Transaction(_message.Message): __slots__ = ("epochs", "configure", "sync") @@ -31,12 +42,14 @@ class Transaction(_message.Message): def __init__(self, epochs: _Optional[_Iterable[_Union[Epoch, _Mapping]]] = ..., configure: _Optional[_Union[Configure, _Mapping]] = ..., sync: _Optional[_Union[Sync, _Mapping]] = ...) -> None: ... class Configure(_message.Message): - __slots__ = ("semantics_version", "ivm_config") + __slots__ = ("semantics_version", "ivm_config", "optimization_level") SEMANTICS_VERSION_FIELD_NUMBER: _ClassVar[int] IVM_CONFIG_FIELD_NUMBER: _ClassVar[int] + OPTIMIZATION_LEVEL_FIELD_NUMBER: _ClassVar[int] semantics_version: int ivm_config: IVMConfig - def __init__(self, semantics_version: _Optional[int] = ..., ivm_config: _Optional[_Union[IVMConfig, _Mapping]] = ...) -> None: ... + optimization_level: OptimizationLevel + def __init__(self, semantics_version: _Optional[int] = ..., ivm_config: _Optional[_Union[IVMConfig, _Mapping]] = ..., optimization_level: _Optional[_Union[OptimizationLevel, str]] = ...) -> None: ... class IVMConfig(_message.Message): __slots__ = ("level",) diff --git a/tests/bin/arithmetic.bin b/tests/bin/arithmetic.bin index aa9ac7ea..75d5206c 100644 --- a/tests/bin/arithmetic.bin +++ b/tests/bin/arithmetic.bin @@ -137,4 +137,4 @@ AJ?  ìQÒ°¬uÝqéd° tÖ] decimal_64 decimal_128 dec_64 èž5z$¥=ö‘§©y.Û -dec_128 ìQÒ°¬uÝqéd° tÖ] \ No newline at end of file +dec_128 ìQÒ°¬uÝqéd° tÖ] \ No newline at end of file diff --git a/tests/bin/attributes.bin b/tests/bin/attributes.bin index 76be36b0..4dac2857 100644 Binary files a/tests/bin/attributes.bin and b/tests/bin/attributes.bin differ diff --git a/tests/bin/cdc.bin b/tests/bin/cdc.bin index fa8a1d36..47d76336 100644 Binary files a/tests/bin/cdc.bin and b/tests/bin/cdc.bin differ diff --git a/tests/bin/comparisons.bin b/tests/bin/comparisons.bin index 1d47ac42..4ecdac2b 100644 Binary files a/tests/bin/comparisons.bin and b/tests/bin/comparisons.bin differ diff --git a/tests/bin/config_flags.bin b/tests/bin/config_flags.bin index 507499b4..09a0acdb 100644 Binary files a/tests/bin/config_flags.bin and b/tests/bin/config_flags.bin differ diff --git a/tests/bin/configure_levels.bin b/tests/bin/configure_levels.bin index 25d6c1a4..0f9bdd06 100644 --- a/tests/bin/configure_levels.bin +++ b/tests/bin/configure_levels.bin @@ -9,4 +9,4 @@ b  (xåy_H ³>|Ôèm(&$J" rel_primitive_eq  (xåy_H ³>|Ôèm(r1 -r1 (xåy_H ³>|Ôèm( \ No newline at end of file +r1 (xåy_H ³>|Ôèm( \ No newline at end of file diff --git a/tests/bin/configure_levels_all.bin b/tests/bin/configure_levels_all.bin index 3107e928..1a7d5984 100644 --- a/tests/bin/configure_levels_all.bin +++ b/tests/bin/configure_levels_all.bin @@ -9,4 +9,4 @@ b  äýW®þ”Ÿ[@h`Å£&$J" rel_primitive_eq  äýW®þ”Ÿ[@h`Å£r2 -r2 äýW®þ”Ÿ[@h`Å£ \ No newline at end of file +r2 äýW®þ”Ÿ[@h`Å£ \ No newline at end of file diff --git a/tests/bin/context_write.bin b/tests/bin/context_write.bin index d5cafd73..5c2eb7ff 100644 Binary files a/tests/bin/context_write.bin and b/tests/bin/context_write.bin differ diff --git a/tests/bin/csv.bin b/tests/bin/csv.bin index a82727d2..b5066a13 100644 Binary files a/tests/bin/csv.bin and b/tests/bin/csv.bin differ diff --git a/tests/bin/csv_export_v2.bin b/tests/bin/csv_export_v2.bin index b7c7fd12..652cccec 100644 Binary files a/tests/bin/csv_export_v2.bin and b/tests/bin/csv_export_v2.bin differ diff --git a/tests/bin/datetime_optional.bin b/tests/bin/datetime_optional.bin index 9a4e0fd1..9043f44d 100644 Binary files a/tests/bin/datetime_optional.bin and b/tests/bin/datetime_optional.bin differ diff --git a/tests/bin/edb.bin b/tests/bin/edb.bin index 65f9586c..a5bc1ff1 100644 Binary files a/tests/bin/edb.bin and b/tests/bin/edb.bin differ diff --git a/tests/bin/fd.bin b/tests/bin/fd.bin index 1bdf81bb..4e5837f3 100644 Binary files a/tests/bin/fd.bin and b/tests/bin/fd.bin differ diff --git a/tests/bin/ffi.bin b/tests/bin/ffi.bin index 909b32f5..810897b6 100644 Binary files a/tests/bin/ffi.bin and b/tests/bin/ffi.bin differ diff --git a/tests/bin/loops.bin b/tests/bin/loops.bin index fe56ec56..5aa805ca 100644 Binary files a/tests/bin/loops.bin and b/tests/bin/loops.bin differ diff --git a/tests/bin/max_monoid.bin b/tests/bin/max_monoid.bin index 9efcb5ee..6d09c5b5 100644 Binary files a/tests/bin/max_monoid.bin and b/tests/bin/max_monoid.bin differ diff --git a/tests/bin/missing.bin b/tests/bin/missing.bin index 41b54468..e27ef5df 100644 Binary files a/tests/bin/missing.bin and b/tests/bin/missing.bin differ diff --git a/tests/bin/monoid_monus.bin b/tests/bin/monoid_monus.bin index d268bd60..1f28f2ce 100644 Binary files a/tests/bin/monoid_monus.bin and b/tests/bin/monoid_monus.bin differ diff --git a/tests/bin/multiple_export.bin b/tests/bin/multiple_export.bin index ec4faca4..b0182896 100644 Binary files a/tests/bin/multiple_export.bin and b/tests/bin/multiple_export.bin differ diff --git a/tests/bin/not.bin b/tests/bin/not.bin index 4f49a5d2..18e68131 100644 Binary files a/tests/bin/not.bin and b/tests/bin/not.bin differ diff --git a/tests/bin/number_ids.bin b/tests/bin/number_ids.bin index 97bc2802..728e7a96 100644 Binary files a/tests/bin/number_ids.bin and b/tests/bin/number_ids.bin differ diff --git a/tests/bin/outer.bin b/tests/bin/outer.bin index ca0d81c3..4d3e88b5 100644 Binary files a/tests/bin/outer.bin and b/tests/bin/outer.bin differ diff --git a/tests/bin/piece_of_q1.bin b/tests/bin/piece_of_q1.bin index be1cc289..760e7063 100644 Binary files a/tests/bin/piece_of_q1.bin and b/tests/bin/piece_of_q1.bin differ diff --git a/tests/bin/pragma.bin b/tests/bin/pragma.bin index 066e571c..15e33b29 100644 Binary files a/tests/bin/pragma.bin and b/tests/bin/pragma.bin differ diff --git a/tests/bin/primitive_types.bin b/tests/bin/primitive_types.bin index 10439822..a8fefb1e 100644 Binary files a/tests/bin/primitive_types.bin and b/tests/bin/primitive_types.bin differ diff --git a/tests/bin/primitives.bin b/tests/bin/primitives.bin index 9fb48b17..c4da0d33 100644 Binary files a/tests/bin/primitives.bin and b/tests/bin/primitives.bin differ diff --git a/tests/bin/quantifier.bin b/tests/bin/quantifier.bin index 85ea23db..11a06564 100644 Binary files a/tests/bin/quantifier.bin and b/tests/bin/quantifier.bin differ diff --git a/tests/bin/read_variants.bin b/tests/bin/read_variants.bin index a19decbb..f645d6ac 100644 Binary files a/tests/bin/read_variants.bin and b/tests/bin/read_variants.bin differ diff --git a/tests/bin/redefine_fragment.bin b/tests/bin/redefine_fragment.bin index 37fac728..4a92728a 100644 Binary files a/tests/bin/redefine_fragment.bin and b/tests/bin/redefine_fragment.bin differ diff --git a/tests/bin/simple_cast.bin b/tests/bin/simple_cast.bin index aa218af0..d5ca8454 100644 Binary files a/tests/bin/simple_cast.bin and b/tests/bin/simple_cast.bin differ diff --git a/tests/bin/simple_export.bin b/tests/bin/simple_export.bin index 638b6ea0..74a9f23a 100644 Binary files a/tests/bin/simple_export.bin and b/tests/bin/simple_export.bin differ diff --git a/tests/bin/simple_export_v2.bin b/tests/bin/simple_export_v2.bin index a571f84d..f2417f60 100644 Binary files a/tests/bin/simple_export_v2.bin and b/tests/bin/simple_export_v2.bin differ diff --git a/tests/bin/simple_ic.bin b/tests/bin/simple_ic.bin index af929a0a..11d6eb12 100644 --- a/tests/bin/simple_ic.bin +++ b/tests/bin/simple_ic.bin @@ -21,4 +21,4 @@ g  :ŒO%eê’(½õUÐß?fooabortoutput result :ŒO%eê’(½õUÐß?$"" abort_1_eq_1 /¼×Îcå&ÔF -gîmDÔ \ No newline at end of file +gîmDÔ \ No newline at end of file diff --git a/tests/bin/simple_recursion.bin b/tests/bin/simple_recursion.bin index fac68836..f48342d7 100644 Binary files a/tests/bin/simple_recursion.bin and b/tests/bin/simple_recursion.bin differ diff --git a/tests/bin/simple_relatom.bin b/tests/bin/simple_relatom.bin index 91c3fb2e..af6397fa 100644 Binary files a/tests/bin/simple_relatom.bin and b/tests/bin/simple_relatom.bin differ diff --git a/tests/bin/snapshot.bin b/tests/bin/snapshot.bin index 7886bdf0..f6773472 100644 Binary files a/tests/bin/snapshot.bin and b/tests/bin/snapshot.bin differ diff --git a/tests/bin/special_chars_in_ids.bin b/tests/bin/special_chars_in_ids.bin index 8c2bfd19..10bfdc05 100644 Binary files a/tests/bin/special_chars_in_ids.bin and b/tests/bin/special_chars_in_ids.bin differ diff --git a/tests/bin/sum_with_groupby.bin b/tests/bin/sum_with_groupby.bin index 526c924c..ec347d1b 100644 Binary files a/tests/bin/sum_with_groupby.bin and b/tests/bin/sum_with_groupby.bin differ diff --git a/tests/bin/sync.bin b/tests/bin/sync.bin index 0cc6a639..9ec030a2 100644 Binary files a/tests/bin/sync.bin and b/tests/bin/sync.bin differ diff --git a/tests/bin/undefined_relation.bin b/tests/bin/undefined_relation.bin index ecec2d16..4091e211 100644 Binary files a/tests/bin/undefined_relation.bin and b/tests/bin/undefined_relation.bin differ diff --git a/tests/bin/undefined_relation2.bin b/tests/bin/undefined_relation2.bin index 42c86864..3e2dda68 100644 Binary files a/tests/bin/undefined_relation2.bin and b/tests/bin/undefined_relation2.bin differ diff --git a/tests/bin/unicode.bin b/tests/bin/unicode.bin index 908af046..42148709 100644 Binary files a/tests/bin/unicode.bin and b/tests/bin/unicode.bin differ diff --git a/tests/bin/upsert.bin b/tests/bin/upsert.bin index 78d20145..97e68482 100644 Binary files a/tests/bin/upsert.bin and b/tests/bin/upsert.bin differ diff --git a/tests/bin/value_types.bin b/tests/bin/value_types.bin index ee49feb6..b66dc6eb 100644 Binary files a/tests/bin/value_types.bin and b/tests/bin/value_types.bin differ diff --git a/tests/bin/values.bin b/tests/bin/values.bin index b91de8dc..cd43de21 100644 Binary files a/tests/bin/values.bin and b/tests/bin/values.bin differ diff --git a/tests/lqp/config_flags.lqp b/tests/lqp/config_flags.lqp index a4eba530..a4de0139 100644 --- a/tests/lqp/config_flags.lqp +++ b/tests/lqp/config_flags.lqp @@ -1,6 +1,7 @@ (transaction (configure { :ivm.maintenance_level "auto" + :optimization_level "aggressive" :semantics_version 1}) (epoch (writes diff --git a/tests/pretty/arithmetic.lqp b/tests/pretty/arithmetic.lqp index 872e9ae5..89c86c6a 100644 --- a/tests/pretty/arithmetic.lqp +++ b/tests/pretty/arithmetic.lqp @@ -1,5 +1,6 @@ (transaction - (configure { :ivm.maintenance_level "off" :semantics_version 0}) + (configure + { :ivm.maintenance_level "off" :optimization_level "default" :semantics_version 0}) (epoch (writes (define diff --git a/tests/pretty/attributes.lqp b/tests/pretty/attributes.lqp index 647f9891..0a86c8c2 100644 --- a/tests/pretty/attributes.lqp +++ b/tests/pretty/attributes.lqp @@ -1,5 +1,6 @@ (transaction - (configure { :ivm.maintenance_level "off" :semantics_version 0}) + (configure + { :ivm.maintenance_level "off" :optimization_level "default" :semantics_version 0}) (epoch (writes (define diff --git a/tests/pretty/cdc.lqp b/tests/pretty/cdc.lqp index 0a01d9cf..f80238f2 100644 --- a/tests/pretty/cdc.lqp +++ b/tests/pretty/cdc.lqp @@ -1,5 +1,6 @@ (transaction - (configure { :ivm.maintenance_level "off" :semantics_version 0}) + (configure + { :ivm.maintenance_level "off" :optimization_level "default" :semantics_version 0}) (epoch (writes (define diff --git a/tests/pretty/comparisons.lqp b/tests/pretty/comparisons.lqp index d07bb571..a48d7f0b 100644 --- a/tests/pretty/comparisons.lqp +++ b/tests/pretty/comparisons.lqp @@ -1,5 +1,6 @@ (transaction - (configure { :ivm.maintenance_level "off" :semantics_version 0}) + (configure + { :ivm.maintenance_level "off" :optimization_level "default" :semantics_version 0}) (epoch (writes (define diff --git a/tests/pretty/config_flags.lqp b/tests/pretty/config_flags.lqp index 8ff5d2fc..903bc419 100644 --- a/tests/pretty/config_flags.lqp +++ b/tests/pretty/config_flags.lqp @@ -1,5 +1,6 @@ (transaction - (configure { :ivm.maintenance_level "auto" :semantics_version 1}) + (configure + { :ivm.maintenance_level "auto" :optimization_level "aggressive" :semantics_version 1}) (epoch (writes (define (fragment :f1 (def :output ([v::INT] (+ 1 1 v)))))) (reads (output :output :output)))) diff --git a/tests/pretty/configure_levels.lqp b/tests/pretty/configure_levels.lqp index 1813f592..ce183cbf 100644 --- a/tests/pretty/configure_levels.lqp +++ b/tests/pretty/configure_levels.lqp @@ -1,3 +1,4 @@ (transaction - (configure { :ivm.maintenance_level "off" :semantics_version 1}) + (configure + { :ivm.maintenance_level "off" :optimization_level "default" :semantics_version 1}) (epoch (writes (define (fragment :f1 (def :r1 ([] (= 1 1)))))) (reads (output :r1 :r1)))) diff --git a/tests/pretty/configure_levels_all.lqp b/tests/pretty/configure_levels_all.lqp index 43f41495..7a07ab33 100644 --- a/tests/pretty/configure_levels_all.lqp +++ b/tests/pretty/configure_levels_all.lqp @@ -1,3 +1,4 @@ (transaction - (configure { :ivm.maintenance_level "all" :semantics_version 2}) + (configure + { :ivm.maintenance_level "all" :optimization_level "default" :semantics_version 2}) (epoch (writes (define (fragment :f2 (def :r2 ([] (= 2 2)))))) (reads (output :r2 :r2)))) diff --git a/tests/pretty/context_write.lqp b/tests/pretty/context_write.lqp index 30258eac..c5c20490 100644 --- a/tests/pretty/context_write.lqp +++ b/tests/pretty/context_write.lqp @@ -1,5 +1,6 @@ (transaction - (configure { :ivm.maintenance_level "off" :semantics_version 0}) + (configure + { :ivm.maintenance_level "off" :optimization_level "default" :semantics_version 0}) (epoch (writes (define (fragment :f1 (def :data ([x::INT] (= x 1))))) diff --git a/tests/pretty/csv.lqp b/tests/pretty/csv.lqp index 4f0dd093..1dbc7719 100644 --- a/tests/pretty/csv.lqp +++ b/tests/pretty/csv.lqp @@ -1,5 +1,6 @@ (transaction - (configure { :ivm.maintenance_level "off" :semantics_version 0}) + (configure + { :ivm.maintenance_level "off" :optimization_level "default" :semantics_version 0}) (epoch (writes (define diff --git a/tests/pretty/csv_export_v2.lqp b/tests/pretty/csv_export_v2.lqp index e244102e..10f8a3c1 100644 --- a/tests/pretty/csv_export_v2.lqp +++ b/tests/pretty/csv_export_v2.lqp @@ -1,5 +1,6 @@ (transaction - (configure { :ivm.maintenance_level "off" :semantics_version 0}) + (configure + { :ivm.maintenance_level "off" :optimization_level "default" :semantics_version 0}) (epoch (writes (define diff --git a/tests/pretty/datetime_optional.lqp b/tests/pretty/datetime_optional.lqp index 9e978463..703c3789 100644 --- a/tests/pretty/datetime_optional.lqp +++ b/tests/pretty/datetime_optional.lqp @@ -1,5 +1,6 @@ (transaction - (configure { :ivm.maintenance_level "off" :semantics_version 0}) + (configure + { :ivm.maintenance_level "off" :optimization_level "default" :semantics_version 0}) (epoch (writes (define diff --git a/tests/pretty/edb.lqp b/tests/pretty/edb.lqp index c39dd33a..7ba3d18b 100644 --- a/tests/pretty/edb.lqp +++ b/tests/pretty/edb.lqp @@ -1,5 +1,6 @@ (transaction - (configure { :ivm.maintenance_level "off" :semantics_version 0}) + (configure + { :ivm.maintenance_level "off" :optimization_level "default" :semantics_version 0}) (epoch (writes (define diff --git a/tests/pretty/fd.lqp b/tests/pretty/fd.lqp index c6700a56..2f8a5cc5 100644 --- a/tests/pretty/fd.lqp +++ b/tests/pretty/fd.lqp @@ -1,5 +1,6 @@ (transaction - (configure { :ivm.maintenance_level "off" :semantics_version 0}) + (configure + { :ivm.maintenance_level "off" :optimization_level "default" :semantics_version 0}) (epoch (writes (define diff --git a/tests/pretty/ffi.lqp b/tests/pretty/ffi.lqp index f55b43ef..5b232b4a 100644 --- a/tests/pretty/ffi.lqp +++ b/tests/pretty/ffi.lqp @@ -1,5 +1,6 @@ (transaction - (configure { :ivm.maintenance_level "off" :semantics_version 0}) + (configure + { :ivm.maintenance_level "off" :optimization_level "default" :semantics_version 0}) (epoch (writes (define diff --git a/tests/pretty/loops.lqp b/tests/pretty/loops.lqp index 4005c805..3467a883 100644 --- a/tests/pretty/loops.lqp +++ b/tests/pretty/loops.lqp @@ -1,5 +1,6 @@ (transaction - (configure { :ivm.maintenance_level "off" :semantics_version 0}) + (configure + { :ivm.maintenance_level "off" :optimization_level "default" :semantics_version 0}) (epoch (writes (define diff --git a/tests/pretty/max_monoid.lqp b/tests/pretty/max_monoid.lqp index 96db4ab4..7610995a 100644 --- a/tests/pretty/max_monoid.lqp +++ b/tests/pretty/max_monoid.lqp @@ -1,5 +1,6 @@ (transaction - (configure { :ivm.maintenance_level "off" :semantics_version 0}) + (configure + { :ivm.maintenance_level "off" :optimization_level "default" :semantics_version 0}) (epoch (writes (define diff --git a/tests/pretty/missing.lqp b/tests/pretty/missing.lqp index b6b51aeb..046da877 100644 --- a/tests/pretty/missing.lqp +++ b/tests/pretty/missing.lqp @@ -1,5 +1,6 @@ (transaction - (configure { :ivm.maintenance_level "off" :semantics_version 0}) + (configure + { :ivm.maintenance_level "off" :optimization_level "default" :semantics_version 0}) (epoch (writes (define diff --git a/tests/pretty/monoid_monus.lqp b/tests/pretty/monoid_monus.lqp index 5eeb77c0..f090b3dd 100644 --- a/tests/pretty/monoid_monus.lqp +++ b/tests/pretty/monoid_monus.lqp @@ -1,5 +1,6 @@ (transaction - (configure { :ivm.maintenance_level "off" :semantics_version 0}) + (configure + { :ivm.maintenance_level "off" :optimization_level "default" :semantics_version 0}) (epoch (writes (define diff --git a/tests/pretty/multiple_export.lqp b/tests/pretty/multiple_export.lqp index f7caab7f..0744468b 100644 --- a/tests/pretty/multiple_export.lqp +++ b/tests/pretty/multiple_export.lqp @@ -1,5 +1,6 @@ (transaction - (configure { :ivm.maintenance_level "off" :semantics_version 0}) + (configure + { :ivm.maintenance_level "off" :optimization_level "default" :semantics_version 0}) (epoch (writes (define diff --git a/tests/pretty/not.lqp b/tests/pretty/not.lqp index 0e031a0b..7ec6ffe8 100644 --- a/tests/pretty/not.lqp +++ b/tests/pretty/not.lqp @@ -1,5 +1,6 @@ (transaction - (configure { :ivm.maintenance_level "off" :semantics_version 0}) + (configure + { :ivm.maintenance_level "off" :optimization_level "default" :semantics_version 0}) (epoch (writes (define (fragment :frag (def :test ([x::INT y::INT] (not (= x y))))))) (reads (output :output 0x1056e0f555a18ebda7d15)))) diff --git a/tests/pretty/number_ids.lqp b/tests/pretty/number_ids.lqp index 78041238..d90e3467 100644 --- a/tests/pretty/number_ids.lqp +++ b/tests/pretty/number_ids.lqp @@ -1,5 +1,6 @@ (transaction - (configure { :ivm.maintenance_level "off" :semantics_version 0}) + (configure + { :ivm.maintenance_level "off" :optimization_level "default" :semantics_version 0}) (epoch (writes (define (fragment :f1 (def 0x1056e0f555a18ebda7d15 ([v::INT] (+ 1 1 v)))))) (reads (output :output 0x1056e0f555a18ebda7d15)))) diff --git a/tests/pretty/outer.lqp b/tests/pretty/outer.lqp index fa00399e..a6781db9 100644 --- a/tests/pretty/outer.lqp +++ b/tests/pretty/outer.lqp @@ -1,5 +1,6 @@ (transaction - (configure { :ivm.maintenance_level "off" :semantics_version 0}) + (configure + { :ivm.maintenance_level "off" :optimization_level "default" :semantics_version 0}) (epoch (writes (define diff --git a/tests/pretty/piece_of_q1.lqp b/tests/pretty/piece_of_q1.lqp index c4c656db..e2047b09 100644 --- a/tests/pretty/piece_of_q1.lqp +++ b/tests/pretty/piece_of_q1.lqp @@ -1,5 +1,6 @@ (transaction - (configure { :ivm.maintenance_level "off" :semantics_version 0}) + (configure + { :ivm.maintenance_level "off" :optimization_level "default" :semantics_version 0}) (epoch (writes (define diff --git a/tests/pretty/pragma.lqp b/tests/pretty/pragma.lqp index 76eb37d8..7391ce6c 100644 --- a/tests/pretty/pragma.lqp +++ b/tests/pretty/pragma.lqp @@ -1,5 +1,6 @@ (transaction - (configure { :ivm.maintenance_level "off" :semantics_version 0}) + (configure + { :ivm.maintenance_level "off" :optimization_level "default" :semantics_version 0}) (epoch (writes (define diff --git a/tests/pretty/primitive_types.lqp b/tests/pretty/primitive_types.lqp index 118677a0..bf0956a0 100644 --- a/tests/pretty/primitive_types.lqp +++ b/tests/pretty/primitive_types.lqp @@ -1,5 +1,6 @@ (transaction - (configure { :ivm.maintenance_level "off" :semantics_version 0}) + (configure + { :ivm.maintenance_level "off" :optimization_level "default" :semantics_version 0}) (epoch (writes (define diff --git a/tests/pretty/primitives.lqp b/tests/pretty/primitives.lqp index 25c12413..8b8f8f1f 100644 --- a/tests/pretty/primitives.lqp +++ b/tests/pretty/primitives.lqp @@ -1,5 +1,6 @@ (transaction - (configure { :ivm.maintenance_level "off" :semantics_version 0}) + (configure + { :ivm.maintenance_level "off" :optimization_level "default" :semantics_version 0}) (epoch (writes (define diff --git a/tests/pretty/quantifier.lqp b/tests/pretty/quantifier.lqp index 97a38011..091e5116 100644 --- a/tests/pretty/quantifier.lqp +++ b/tests/pretty/quantifier.lqp @@ -1,5 +1,6 @@ (transaction - (configure { :ivm.maintenance_level "off" :semantics_version 0}) + (configure + { :ivm.maintenance_level "off" :optimization_level "default" :semantics_version 0}) (epoch (writes (define diff --git a/tests/pretty/read_variants.lqp b/tests/pretty/read_variants.lqp index dcb6b5fb..a2e6c31f 100644 --- a/tests/pretty/read_variants.lqp +++ b/tests/pretty/read_variants.lqp @@ -1,5 +1,6 @@ (transaction - (configure { :ivm.maintenance_level "off" :semantics_version 0}) + (configure + { :ivm.maintenance_level "off" :optimization_level "default" :semantics_version 0}) (epoch (writes (define (fragment :f1 (def :data ([] (= 1 1))) (def 0x1 ([] (atom :data)))))) (reads (demand :data) (abort 0x1))) diff --git a/tests/pretty/redefine_fragment.lqp b/tests/pretty/redefine_fragment.lqp index 27e5964c..9a974b9f 100644 --- a/tests/pretty/redefine_fragment.lqp +++ b/tests/pretty/redefine_fragment.lqp @@ -1,5 +1,6 @@ (transaction - (configure { :ivm.maintenance_level "off" :semantics_version 0}) + (configure + { :ivm.maintenance_level "off" :optimization_level "default" :semantics_version 0}) (epoch (writes (define diff --git a/tests/pretty/simple_cast.lqp b/tests/pretty/simple_cast.lqp index 7d2586f2..8ad4999e 100644 --- a/tests/pretty/simple_cast.lqp +++ b/tests/pretty/simple_cast.lqp @@ -1,5 +1,6 @@ (transaction - (configure { :ivm.maintenance_level "off" :semantics_version 0}) + (configure + { :ivm.maintenance_level "off" :optimization_level "default" :semantics_version 0}) (epoch (writes (define diff --git a/tests/pretty/simple_export.lqp b/tests/pretty/simple_export.lqp index 47cda731..1c1c2f57 100644 --- a/tests/pretty/simple_export.lqp +++ b/tests/pretty/simple_export.lqp @@ -1,5 +1,6 @@ (transaction - (configure { :ivm.maintenance_level "off" :semantics_version 0}) + (configure + { :ivm.maintenance_level "off" :optimization_level "default" :semantics_version 0}) (epoch (writes (define diff --git a/tests/pretty/simple_export_v2.lqp b/tests/pretty/simple_export_v2.lqp index 31705b1e..41f6f151 100644 --- a/tests/pretty/simple_export_v2.lqp +++ b/tests/pretty/simple_export_v2.lqp @@ -1,5 +1,6 @@ (transaction - (configure { :ivm.maintenance_level "off" :semantics_version 0}) + (configure + { :ivm.maintenance_level "off" :optimization_level "default" :semantics_version 0}) (epoch (writes (define diff --git a/tests/pretty/simple_ic.lqp b/tests/pretty/simple_ic.lqp index bebc9583..db8864a6 100644 --- a/tests/pretty/simple_ic.lqp +++ b/tests/pretty/simple_ic.lqp @@ -1,5 +1,6 @@ (transaction - (configure { :ivm.maintenance_level "off" :semantics_version 0}) + (configure + { :ivm.maintenance_level "off" :optimization_level "default" :semantics_version 0}) (epoch (writes (define diff --git a/tests/pretty/simple_recursion.lqp b/tests/pretty/simple_recursion.lqp index 34251620..a1b2d53b 100644 --- a/tests/pretty/simple_recursion.lqp +++ b/tests/pretty/simple_recursion.lqp @@ -1,5 +1,6 @@ (transaction - (configure { :ivm.maintenance_level "off" :semantics_version 0}) + (configure + { :ivm.maintenance_level "off" :optimization_level "default" :semantics_version 0}) (epoch (writes (define diff --git a/tests/pretty/simple_relatom.lqp b/tests/pretty/simple_relatom.lqp index b7477359..206dd04a 100644 --- a/tests/pretty/simple_relatom.lqp +++ b/tests/pretty/simple_relatom.lqp @@ -1,5 +1,6 @@ (transaction - (configure { :ivm.maintenance_level "off" :semantics_version 0}) + (configure + { :ivm.maintenance_level "off" :optimization_level "default" :semantics_version 0}) (epoch (writes (define diff --git a/tests/pretty/snapshot.lqp b/tests/pretty/snapshot.lqp index f2728e9c..578e61a0 100644 --- a/tests/pretty/snapshot.lqp +++ b/tests/pretty/snapshot.lqp @@ -1,5 +1,6 @@ (transaction - (configure { :ivm.maintenance_level "off" :semantics_version 1}) + (configure + { :ivm.maintenance_level "off" :optimization_level "default" :semantics_version 1}) (epoch (writes (define diff --git a/tests/pretty/special_chars_in_ids.lqp b/tests/pretty/special_chars_in_ids.lqp index 2ad2067b..8c0e520f 100644 --- a/tests/pretty/special_chars_in_ids.lqp +++ b/tests/pretty/special_chars_in_ids.lqp @@ -1,5 +1,6 @@ (transaction - (configure { :ivm.maintenance_level "off" :semantics_version 0}) + (configure + { :ivm.maintenance_level "off" :optimization_level "default" :semantics_version 0}) (epoch (writes (define diff --git a/tests/pretty/sum_with_groupby.lqp b/tests/pretty/sum_with_groupby.lqp index 55a0d1dd..6a5f4942 100644 --- a/tests/pretty/sum_with_groupby.lqp +++ b/tests/pretty/sum_with_groupby.lqp @@ -1,5 +1,6 @@ (transaction - (configure { :ivm.maintenance_level "off" :semantics_version 0}) + (configure + { :ivm.maintenance_level "off" :optimization_level "default" :semantics_version 0}) (epoch (writes (define diff --git a/tests/pretty/sync.lqp b/tests/pretty/sync.lqp index 7fff8a3c..aae7f694 100644 --- a/tests/pretty/sync.lqp +++ b/tests/pretty/sync.lqp @@ -1,4 +1,5 @@ (transaction - (configure { :ivm.maintenance_level "off" :semantics_version 0}) + (configure + { :ivm.maintenance_level "off" :optimization_level "default" :semantics_version 0}) (sync :foo :bar) (epoch (writes (define (fragment :frag (def :test ([x::INT y::INT] (not (= x y))))))))) diff --git a/tests/pretty/undefined_relation.lqp b/tests/pretty/undefined_relation.lqp index 45831818..79b07275 100644 --- a/tests/pretty/undefined_relation.lqp +++ b/tests/pretty/undefined_relation.lqp @@ -1,5 +1,6 @@ (transaction - (configure { :ivm.maintenance_level "off" :semantics_version 0}) + (configure + { :ivm.maintenance_level "off" :optimization_level "default" :semantics_version 0}) (epoch (writes (define (fragment :f1 (def :output ([v::INT] (atom :hello v)))))) (reads diff --git a/tests/pretty/undefined_relation2.lqp b/tests/pretty/undefined_relation2.lqp index 552f2e63..b08da94d 100644 --- a/tests/pretty/undefined_relation2.lqp +++ b/tests/pretty/undefined_relation2.lqp @@ -1,5 +1,6 @@ (transaction - (configure { :ivm.maintenance_level "off" :semantics_version 0}) + (configure + { :ivm.maintenance_level "off" :optimization_level "default" :semantics_version 0}) (epoch (writes (define (fragment :f2 (def :hello ([v::INT] (= v 101))))) diff --git a/tests/pretty/unicode.lqp b/tests/pretty/unicode.lqp index ffee332c..c32c9e69 100644 --- a/tests/pretty/unicode.lqp +++ b/tests/pretty/unicode.lqp @@ -1,5 +1,6 @@ (transaction - (configure { :ivm.maintenance_level "off" :semantics_version 0}) + (configure + { :ivm.maintenance_level "off" :optimization_level "default" :semantics_version 0}) (epoch (writes (define diff --git a/tests/pretty/upsert.lqp b/tests/pretty/upsert.lqp index 390be5bc..04197a28 100644 --- a/tests/pretty/upsert.lqp +++ b/tests/pretty/upsert.lqp @@ -1,5 +1,6 @@ (transaction - (configure { :ivm.maintenance_level "off" :semantics_version 0}) + (configure + { :ivm.maintenance_level "off" :optimization_level "default" :semantics_version 0}) (epoch (writes (define diff --git a/tests/pretty/value_types.lqp b/tests/pretty/value_types.lqp index 3d4fdddd..44d27c3f 100644 --- a/tests/pretty/value_types.lqp +++ b/tests/pretty/value_types.lqp @@ -1,5 +1,6 @@ (transaction - (configure { :ivm.maintenance_level "off" :semantics_version 0}) + (configure + { :ivm.maintenance_level "off" :optimization_level "default" :semantics_version 0}) (epoch (writes (define diff --git a/tests/pretty/values.lqp b/tests/pretty/values.lqp index 558120f5..8e403728 100644 --- a/tests/pretty/values.lqp +++ b/tests/pretty/values.lqp @@ -1,5 +1,6 @@ (transaction - (configure { :ivm.maintenance_level "off" :semantics_version 0}) + (configure + { :ivm.maintenance_level "off" :optimization_level "default" :semantics_version 0}) (epoch (writes (define diff --git a/tests/pretty_debug/arithmetic.lqp b/tests/pretty_debug/arithmetic.lqp index f4a583a4..f512b93e 100644 --- a/tests/pretty_debug/arithmetic.lqp +++ b/tests/pretty_debug/arithmetic.lqp @@ -1,5 +1,6 @@ (transaction - (configure { :ivm.maintenance_level "off" :semantics_version 0}) + (configure + { :ivm.maintenance_level "off" :optimization_level "default" :semantics_version 0}) (epoch (writes (define diff --git a/tests/pretty_debug/attributes.lqp b/tests/pretty_debug/attributes.lqp index 7cf708fd..601fe238 100644 --- a/tests/pretty_debug/attributes.lqp +++ b/tests/pretty_debug/attributes.lqp @@ -1,5 +1,6 @@ (transaction - (configure { :ivm.maintenance_level "off" :semantics_version 0}) + (configure + { :ivm.maintenance_level "off" :optimization_level "default" :semantics_version 0}) (epoch (writes (define diff --git a/tests/pretty_debug/cdc.lqp b/tests/pretty_debug/cdc.lqp index 80978d91..a2aa16d1 100644 --- a/tests/pretty_debug/cdc.lqp +++ b/tests/pretty_debug/cdc.lqp @@ -1,5 +1,6 @@ (transaction - (configure { :ivm.maintenance_level "off" :semantics_version 0}) + (configure + { :ivm.maintenance_level "off" :optimization_level "default" :semantics_version 0}) (epoch (writes (define diff --git a/tests/pretty_debug/comparisons.lqp b/tests/pretty_debug/comparisons.lqp index 3f2a5791..fd810f63 100644 --- a/tests/pretty_debug/comparisons.lqp +++ b/tests/pretty_debug/comparisons.lqp @@ -1,5 +1,6 @@ (transaction - (configure { :ivm.maintenance_level "off" :semantics_version 0}) + (configure + { :ivm.maintenance_level "off" :optimization_level "default" :semantics_version 0}) (epoch (writes (define diff --git a/tests/pretty_debug/config_flags.lqp b/tests/pretty_debug/config_flags.lqp index 495f4246..bab6d284 100644 --- a/tests/pretty_debug/config_flags.lqp +++ b/tests/pretty_debug/config_flags.lqp @@ -1,5 +1,6 @@ (transaction - (configure { :ivm.maintenance_level "auto" :semantics_version 1}) + (configure + { :ivm.maintenance_level "auto" :optimization_level "aggressive" :semantics_version 1}) (epoch (writes (define (fragment :f1 (def 0x3fdfd055f5bd2892ea186504254f8c3a ([v::INT] (+ 1 1 v)))))) diff --git a/tests/pretty_debug/configure_levels.lqp b/tests/pretty_debug/configure_levels.lqp index 5bd8cf46..fa59fd51 100644 --- a/tests/pretty_debug/configure_levels.lqp +++ b/tests/pretty_debug/configure_levels.lqp @@ -1,5 +1,6 @@ (transaction - (configure { :ivm.maintenance_level "off" :semantics_version 1}) + (configure + { :ivm.maintenance_level "off" :optimization_level "default" :semantics_version 1}) (epoch (writes (define (fragment :f1 (def 0x286de8d47f7c3eb3100c485f79e57828 ([] (= 1 1)))))) (reads (output :r1 0x286de8d47f7c3eb3100c485f79e57828)))) diff --git a/tests/pretty_debug/configure_levels_all.lqp b/tests/pretty_debug/configure_levels_all.lqp index bf2257d9..bf10f0c8 100644 --- a/tests/pretty_debug/configure_levels_all.lqp +++ b/tests/pretty_debug/configure_levels_all.lqp @@ -1,5 +1,6 @@ (transaction - (configure { :ivm.maintenance_level "all" :semantics_version 2}) + (configure + { :ivm.maintenance_level "all" :optimization_level "default" :semantics_version 2}) (epoch (writes (define (fragment :f2 (def 0xa3c56068405b9f0e9408feae57fd17e4 ([] (= 2 2)))))) (reads (output :r2 0xa3c56068405b9f0e9408feae57fd17e4)))) diff --git a/tests/pretty_debug/context_write.lqp b/tests/pretty_debug/context_write.lqp index eaf9569e..36184206 100644 --- a/tests/pretty_debug/context_write.lqp +++ b/tests/pretty_debug/context_write.lqp @@ -1,5 +1,6 @@ (transaction - (configure { :ivm.maintenance_level "off" :semantics_version 0}) + (configure + { :ivm.maintenance_level "off" :optimization_level "default" :semantics_version 0}) (epoch (writes (define (fragment :f1 (def 0x110e6811602261a9a923d3bb23adc8b7 ([x::INT] (= x 1))))) diff --git a/tests/pretty_debug/csv.lqp b/tests/pretty_debug/csv.lqp index b16a9370..66e05927 100644 --- a/tests/pretty_debug/csv.lqp +++ b/tests/pretty_debug/csv.lqp @@ -1,5 +1,6 @@ (transaction - (configure { :ivm.maintenance_level "off" :semantics_version 0}) + (configure + { :ivm.maintenance_level "off" :optimization_level "default" :semantics_version 0}) (epoch (writes (define diff --git a/tests/pretty_debug/csv_export_v2.lqp b/tests/pretty_debug/csv_export_v2.lqp index 156b810b..36a44809 100644 --- a/tests/pretty_debug/csv_export_v2.lqp +++ b/tests/pretty_debug/csv_export_v2.lqp @@ -1,5 +1,6 @@ (transaction - (configure { :ivm.maintenance_level "off" :semantics_version 0}) + (configure + { :ivm.maintenance_level "off" :optimization_level "default" :semantics_version 0}) (epoch (writes (define diff --git a/tests/pretty_debug/datetime_optional.lqp b/tests/pretty_debug/datetime_optional.lqp index 2432433e..e42c71ab 100644 --- a/tests/pretty_debug/datetime_optional.lqp +++ b/tests/pretty_debug/datetime_optional.lqp @@ -1,5 +1,6 @@ (transaction - (configure { :ivm.maintenance_level "off" :semantics_version 0}) + (configure + { :ivm.maintenance_level "off" :optimization_level "default" :semantics_version 0}) (epoch (writes (define diff --git a/tests/pretty_debug/edb.lqp b/tests/pretty_debug/edb.lqp index a0d2c2db..3e242d27 100644 --- a/tests/pretty_debug/edb.lqp +++ b/tests/pretty_debug/edb.lqp @@ -1,5 +1,6 @@ (transaction - (configure { :ivm.maintenance_level "off" :semantics_version 0}) + (configure + { :ivm.maintenance_level "off" :optimization_level "default" :semantics_version 0}) (epoch (writes (define diff --git a/tests/pretty_debug/fd.lqp b/tests/pretty_debug/fd.lqp index de2ef052..17be0b39 100644 --- a/tests/pretty_debug/fd.lqp +++ b/tests/pretty_debug/fd.lqp @@ -1,5 +1,6 @@ (transaction - (configure { :ivm.maintenance_level "off" :semantics_version 0}) + (configure + { :ivm.maintenance_level "off" :optimization_level "default" :semantics_version 0}) (epoch (writes (define diff --git a/tests/pretty_debug/ffi.lqp b/tests/pretty_debug/ffi.lqp index a02eeb75..f0ca6924 100644 --- a/tests/pretty_debug/ffi.lqp +++ b/tests/pretty_debug/ffi.lqp @@ -1,5 +1,6 @@ (transaction - (configure { :ivm.maintenance_level "off" :semantics_version 0}) + (configure + { :ivm.maintenance_level "off" :optimization_level "default" :semantics_version 0}) (epoch (writes (define diff --git a/tests/pretty_debug/loops.lqp b/tests/pretty_debug/loops.lqp index bddcb904..227e5a42 100644 --- a/tests/pretty_debug/loops.lqp +++ b/tests/pretty_debug/loops.lqp @@ -1,5 +1,6 @@ (transaction - (configure { :ivm.maintenance_level "off" :semantics_version 0}) + (configure + { :ivm.maintenance_level "off" :optimization_level "default" :semantics_version 0}) (epoch (writes (define diff --git a/tests/pretty_debug/max_monoid.lqp b/tests/pretty_debug/max_monoid.lqp index 907579e5..6affd8f1 100644 --- a/tests/pretty_debug/max_monoid.lqp +++ b/tests/pretty_debug/max_monoid.lqp @@ -1,5 +1,6 @@ (transaction - (configure { :ivm.maintenance_level "off" :semantics_version 0}) + (configure + { :ivm.maintenance_level "off" :optimization_level "default" :semantics_version 0}) (epoch (writes (define diff --git a/tests/pretty_debug/missing.lqp b/tests/pretty_debug/missing.lqp index 3db2a4d7..c982ad28 100644 --- a/tests/pretty_debug/missing.lqp +++ b/tests/pretty_debug/missing.lqp @@ -1,5 +1,6 @@ (transaction - (configure { :ivm.maintenance_level "off" :semantics_version 0}) + (configure + { :ivm.maintenance_level "off" :optimization_level "default" :semantics_version 0}) (epoch (writes (define diff --git a/tests/pretty_debug/monoid_monus.lqp b/tests/pretty_debug/monoid_monus.lqp index 8e644688..226f5752 100644 --- a/tests/pretty_debug/monoid_monus.lqp +++ b/tests/pretty_debug/monoid_monus.lqp @@ -1,5 +1,6 @@ (transaction - (configure { :ivm.maintenance_level "off" :semantics_version 0}) + (configure + { :ivm.maintenance_level "off" :optimization_level "default" :semantics_version 0}) (epoch (writes (define diff --git a/tests/pretty_debug/multiple_export.lqp b/tests/pretty_debug/multiple_export.lqp index 09bc4681..fc596201 100644 --- a/tests/pretty_debug/multiple_export.lqp +++ b/tests/pretty_debug/multiple_export.lqp @@ -1,5 +1,6 @@ (transaction - (configure { :ivm.maintenance_level "off" :semantics_version 0}) + (configure + { :ivm.maintenance_level "off" :optimization_level "default" :semantics_version 0}) (epoch (writes (define diff --git a/tests/pretty_debug/not.lqp b/tests/pretty_debug/not.lqp index 879663f4..dd324785 100644 --- a/tests/pretty_debug/not.lqp +++ b/tests/pretty_debug/not.lqp @@ -1,5 +1,6 @@ (transaction - (configure { :ivm.maintenance_level "off" :semantics_version 0}) + (configure + { :ivm.maintenance_level "off" :optimization_level "default" :semantics_version 0}) (epoch (writes (define diff --git a/tests/pretty_debug/number_ids.lqp b/tests/pretty_debug/number_ids.lqp index 78041238..d90e3467 100644 --- a/tests/pretty_debug/number_ids.lqp +++ b/tests/pretty_debug/number_ids.lqp @@ -1,5 +1,6 @@ (transaction - (configure { :ivm.maintenance_level "off" :semantics_version 0}) + (configure + { :ivm.maintenance_level "off" :optimization_level "default" :semantics_version 0}) (epoch (writes (define (fragment :f1 (def 0x1056e0f555a18ebda7d15 ([v::INT] (+ 1 1 v)))))) (reads (output :output 0x1056e0f555a18ebda7d15)))) diff --git a/tests/pretty_debug/outer.lqp b/tests/pretty_debug/outer.lqp index 849e0422..4396de0b 100644 --- a/tests/pretty_debug/outer.lqp +++ b/tests/pretty_debug/outer.lqp @@ -1,5 +1,6 @@ (transaction - (configure { :ivm.maintenance_level "off" :semantics_version 0}) + (configure + { :ivm.maintenance_level "off" :optimization_level "default" :semantics_version 0}) (epoch (writes (define diff --git a/tests/pretty_debug/piece_of_q1.lqp b/tests/pretty_debug/piece_of_q1.lqp index b12ee0c2..581b0966 100644 --- a/tests/pretty_debug/piece_of_q1.lqp +++ b/tests/pretty_debug/piece_of_q1.lqp @@ -1,5 +1,6 @@ (transaction - (configure { :ivm.maintenance_level "off" :semantics_version 0}) + (configure + { :ivm.maintenance_level "off" :optimization_level "default" :semantics_version 0}) (epoch (writes (define diff --git a/tests/pretty_debug/pragma.lqp b/tests/pretty_debug/pragma.lqp index 182d0e60..03a22441 100644 --- a/tests/pretty_debug/pragma.lqp +++ b/tests/pretty_debug/pragma.lqp @@ -1,5 +1,6 @@ (transaction - (configure { :ivm.maintenance_level "off" :semantics_version 0}) + (configure + { :ivm.maintenance_level "off" :optimization_level "default" :semantics_version 0}) (epoch (writes (define diff --git a/tests/pretty_debug/primitive_types.lqp b/tests/pretty_debug/primitive_types.lqp index 2213b284..274a5fe7 100644 --- a/tests/pretty_debug/primitive_types.lqp +++ b/tests/pretty_debug/primitive_types.lqp @@ -1,5 +1,6 @@ (transaction - (configure { :ivm.maintenance_level "off" :semantics_version 0}) + (configure + { :ivm.maintenance_level "off" :optimization_level "default" :semantics_version 0}) (epoch (writes (define diff --git a/tests/pretty_debug/primitives.lqp b/tests/pretty_debug/primitives.lqp index 927a21ab..a4bea55b 100644 --- a/tests/pretty_debug/primitives.lqp +++ b/tests/pretty_debug/primitives.lqp @@ -1,5 +1,6 @@ (transaction - (configure { :ivm.maintenance_level "off" :semantics_version 0}) + (configure + { :ivm.maintenance_level "off" :optimization_level "default" :semantics_version 0}) (epoch (writes (define diff --git a/tests/pretty_debug/quantifier.lqp b/tests/pretty_debug/quantifier.lqp index 4eab0db0..20e6af1a 100644 --- a/tests/pretty_debug/quantifier.lqp +++ b/tests/pretty_debug/quantifier.lqp @@ -1,5 +1,6 @@ (transaction - (configure { :ivm.maintenance_level "off" :semantics_version 0}) + (configure + { :ivm.maintenance_level "off" :optimization_level "default" :semantics_version 0}) (epoch (writes (define diff --git a/tests/pretty_debug/read_variants.lqp b/tests/pretty_debug/read_variants.lqp index 0fda4ab7..646fa1de 100644 --- a/tests/pretty_debug/read_variants.lqp +++ b/tests/pretty_debug/read_variants.lqp @@ -1,5 +1,6 @@ (transaction - (configure { :ivm.maintenance_level "off" :semantics_version 0}) + (configure + { :ivm.maintenance_level "off" :optimization_level "default" :semantics_version 0}) (epoch (writes (define diff --git a/tests/pretty_debug/redefine_fragment.lqp b/tests/pretty_debug/redefine_fragment.lqp index 7759b29c..34c55bb5 100644 --- a/tests/pretty_debug/redefine_fragment.lqp +++ b/tests/pretty_debug/redefine_fragment.lqp @@ -1,5 +1,6 @@ (transaction - (configure { :ivm.maintenance_level "off" :semantics_version 0}) + (configure + { :ivm.maintenance_level "off" :optimization_level "default" :semantics_version 0}) (epoch (writes (define diff --git a/tests/pretty_debug/simple_cast.lqp b/tests/pretty_debug/simple_cast.lqp index 7346f8cc..90bb58b2 100644 --- a/tests/pretty_debug/simple_cast.lqp +++ b/tests/pretty_debug/simple_cast.lqp @@ -1,5 +1,6 @@ (transaction - (configure { :ivm.maintenance_level "off" :semantics_version 0}) + (configure + { :ivm.maintenance_level "off" :optimization_level "default" :semantics_version 0}) (epoch (writes (define diff --git a/tests/pretty_debug/simple_export.lqp b/tests/pretty_debug/simple_export.lqp index 149420c8..a23176a2 100644 --- a/tests/pretty_debug/simple_export.lqp +++ b/tests/pretty_debug/simple_export.lqp @@ -1,5 +1,6 @@ (transaction - (configure { :ivm.maintenance_level "off" :semantics_version 0}) + (configure + { :ivm.maintenance_level "off" :optimization_level "default" :semantics_version 0}) (epoch (writes (define diff --git a/tests/pretty_debug/simple_export_v2.lqp b/tests/pretty_debug/simple_export_v2.lqp index 0f43c6d0..49597fd6 100644 --- a/tests/pretty_debug/simple_export_v2.lqp +++ b/tests/pretty_debug/simple_export_v2.lqp @@ -1,5 +1,6 @@ (transaction - (configure { :ivm.maintenance_level "off" :semantics_version 0}) + (configure + { :ivm.maintenance_level "off" :optimization_level "default" :semantics_version 0}) (epoch (writes (define diff --git a/tests/pretty_debug/simple_ic.lqp b/tests/pretty_debug/simple_ic.lqp index 5916e7c6..c858ab7b 100644 --- a/tests/pretty_debug/simple_ic.lqp +++ b/tests/pretty_debug/simple_ic.lqp @@ -1,5 +1,6 @@ (transaction - (configure { :ivm.maintenance_level "off" :semantics_version 0}) + (configure + { :ivm.maintenance_level "off" :optimization_level "default" :semantics_version 0}) (epoch (writes (define diff --git a/tests/pretty_debug/simple_recursion.lqp b/tests/pretty_debug/simple_recursion.lqp index 5d819efe..cb1b219b 100644 --- a/tests/pretty_debug/simple_recursion.lqp +++ b/tests/pretty_debug/simple_recursion.lqp @@ -1,5 +1,6 @@ (transaction - (configure { :ivm.maintenance_level "off" :semantics_version 0}) + (configure + { :ivm.maintenance_level "off" :optimization_level "default" :semantics_version 0}) (epoch (writes (define diff --git a/tests/pretty_debug/simple_relatom.lqp b/tests/pretty_debug/simple_relatom.lqp index f1201552..f8f2730a 100644 --- a/tests/pretty_debug/simple_relatom.lqp +++ b/tests/pretty_debug/simple_relatom.lqp @@ -1,5 +1,6 @@ (transaction - (configure { :ivm.maintenance_level "off" :semantics_version 0}) + (configure + { :ivm.maintenance_level "off" :optimization_level "default" :semantics_version 0}) (epoch (writes (define diff --git a/tests/pretty_debug/snapshot.lqp b/tests/pretty_debug/snapshot.lqp index 4894580a..80375209 100644 --- a/tests/pretty_debug/snapshot.lqp +++ b/tests/pretty_debug/snapshot.lqp @@ -1,5 +1,6 @@ (transaction - (configure { :ivm.maintenance_level "off" :semantics_version 1}) + (configure + { :ivm.maintenance_level "off" :optimization_level "default" :semantics_version 1}) (epoch (writes (define diff --git a/tests/pretty_debug/special_chars_in_ids.lqp b/tests/pretty_debug/special_chars_in_ids.lqp index 21313bff..705072f1 100644 --- a/tests/pretty_debug/special_chars_in_ids.lqp +++ b/tests/pretty_debug/special_chars_in_ids.lqp @@ -1,5 +1,6 @@ (transaction - (configure { :ivm.maintenance_level "off" :semantics_version 0}) + (configure + { :ivm.maintenance_level "off" :optimization_level "default" :semantics_version 0}) (epoch (writes (define diff --git a/tests/pretty_debug/sum_with_groupby.lqp b/tests/pretty_debug/sum_with_groupby.lqp index ec08e2b8..f08466f0 100644 --- a/tests/pretty_debug/sum_with_groupby.lqp +++ b/tests/pretty_debug/sum_with_groupby.lqp @@ -1,5 +1,6 @@ (transaction - (configure { :ivm.maintenance_level "off" :semantics_version 0}) + (configure + { :ivm.maintenance_level "off" :optimization_level "default" :semantics_version 0}) (epoch (writes (define diff --git a/tests/pretty_debug/sync.lqp b/tests/pretty_debug/sync.lqp index 8cfda960..2bc2ceac 100644 --- a/tests/pretty_debug/sync.lqp +++ b/tests/pretty_debug/sync.lqp @@ -1,5 +1,6 @@ (transaction - (configure { :ivm.maintenance_level "off" :semantics_version 0}) + (configure + { :ivm.maintenance_level "off" :optimization_level "default" :semantics_version 0}) (sync :foo :bar) (epoch (writes diff --git a/tests/pretty_debug/undefined_relation.lqp b/tests/pretty_debug/undefined_relation.lqp index c8750a2d..e0b84b8e 100644 --- a/tests/pretty_debug/undefined_relation.lqp +++ b/tests/pretty_debug/undefined_relation.lqp @@ -1,5 +1,6 @@ (transaction - (configure { :ivm.maintenance_level "off" :semantics_version 0}) + (configure + { :ivm.maintenance_level "off" :optimization_level "default" :semantics_version 0}) (epoch (writes (define diff --git a/tests/pretty_debug/undefined_relation2.lqp b/tests/pretty_debug/undefined_relation2.lqp index 4ffd43d0..d6287a2c 100644 --- a/tests/pretty_debug/undefined_relation2.lqp +++ b/tests/pretty_debug/undefined_relation2.lqp @@ -1,5 +1,6 @@ (transaction - (configure { :ivm.maintenance_level "off" :semantics_version 0}) + (configure + { :ivm.maintenance_level "off" :optimization_level "default" :semantics_version 0}) (epoch (writes (define (fragment :f2 (def 0x1b161e5c1fa7425e73043362938b9824 ([v::INT] (= v 101))))) diff --git a/tests/pretty_debug/unicode.lqp b/tests/pretty_debug/unicode.lqp index ff97b3a6..6e29a131 100644 --- a/tests/pretty_debug/unicode.lqp +++ b/tests/pretty_debug/unicode.lqp @@ -1,5 +1,6 @@ (transaction - (configure { :ivm.maintenance_level "off" :semantics_version 0}) + (configure + { :ivm.maintenance_level "off" :optimization_level "default" :semantics_version 0}) (epoch (writes (define diff --git a/tests/pretty_debug/upsert.lqp b/tests/pretty_debug/upsert.lqp index 1b66ab3f..acddfedf 100644 --- a/tests/pretty_debug/upsert.lqp +++ b/tests/pretty_debug/upsert.lqp @@ -1,5 +1,6 @@ (transaction - (configure { :ivm.maintenance_level "off" :semantics_version 0}) + (configure + { :ivm.maintenance_level "off" :optimization_level "default" :semantics_version 0}) (epoch (writes (define diff --git a/tests/pretty_debug/value_types.lqp b/tests/pretty_debug/value_types.lqp index 35b794ae..c6a871bd 100644 --- a/tests/pretty_debug/value_types.lqp +++ b/tests/pretty_debug/value_types.lqp @@ -1,5 +1,6 @@ (transaction - (configure { :ivm.maintenance_level "off" :semantics_version 0}) + (configure + { :ivm.maintenance_level "off" :optimization_level "default" :semantics_version 0}) (epoch (writes (define diff --git a/tests/pretty_debug/values.lqp b/tests/pretty_debug/values.lqp index 7040e77c..2f97d9ec 100644 --- a/tests/pretty_debug/values.lqp +++ b/tests/pretty_debug/values.lqp @@ -1,5 +1,6 @@ (transaction - (configure { :ivm.maintenance_level "off" :semantics_version 0}) + (configure + { :ivm.maintenance_level "off" :optimization_level "default" :semantics_version 0}) (epoch (writes (define