@@ -785,8 +785,8 @@ std::tuple<bool, bool, TString> TSqlTranslation::GetIndexSettingValue(const TRul
785785 return {true , value, stringValue};
786786}
787787
788- bool TSqlTranslation::CreateIndexSettingEntry (const TIdentifier &id,
789- const TRule_index_setting_value& node,
788+ bool TSqlTranslation::CreateIndexSettingEntry (const TIdentifier &id,
789+ const TRule_index_setting_value& node,
790790 TIndexDescription::EType indexType,
791791 TIndexDescription::TIndexSettings& indexSettings) {
792792
@@ -4632,6 +4632,12 @@ bool TSqlTranslation::ObjectFeatureValueClause(const TRule_object_feature_value&
46324632 result = TDeferredAtom (Ctx.Pos (), strValue->Content );
46334633 break ;
46344634 }
4635+ case TRule_object_feature_value::kAltObjectFeatureValue4 :
4636+ {
4637+ TString value = to_lower (Ctx.Token (node.GetAlt_object_feature_value4 ().GetRule_bool_value1 ().GetToken1 ()));
4638+ result = TDeferredAtom (BuildLiteralBool (Ctx.Pos (), FromString<bool >(value)), Ctx);
4639+ break ;
4640+ }
46354641 case TRule_object_feature_value::ALT_NOT_SET:
46364642 Y_ABORT (" You should change implementation according to grammar changes" );
46374643 }
@@ -4641,15 +4647,18 @@ bool TSqlTranslation::ObjectFeatureValueClause(const TRule_object_feature_value&
46414647bool TSqlTranslation::AddObjectFeature (std::map<TString, TDeferredAtom>& result, const TRule_object_feature& feature) {
46424648 if (feature.has_alt_object_feature1 ()) {
46434649 auto & kv = feature.GetAlt_object_feature1 ().GetRule_object_feature_kv1 ();
4644- const TString& key = Id (kv.GetRule_an_id_or_type1 (), *this );
4650+ const TString key = to_lower ( Id (kv.GetRule_an_id_or_type1 (), *this ) );
46454651 auto & ruleValue = kv.GetRule_object_feature_value3 ();
46464652 TDeferredAtom value;
46474653 if (!ObjectFeatureValueClause (ruleValue, value)) {
46484654 return false ;
46494655 }
46504656 result[key] = value;
46514657 } else if (feature.has_alt_object_feature2 ()) {
4652- result[Id (feature.GetAlt_object_feature2 ().GetRule_object_feature_flag1 ().GetRule_an_id_or_type1 (), *this )] = TDeferredAtom ();
4658+ const TString key = to_lower (Id (
4659+ feature.GetAlt_object_feature2 ().GetRule_object_feature_flag1 ().GetRule_an_id_or_type1 (), *this
4660+ ));
4661+ result[key] = TDeferredAtom ();
46534662 }
46544663 return true ;
46554664}
0 commit comments