Skip to content

Commit 665c03b

Browse files
authored
Add 'constraints' to s3 bindings (#4849)
1 parent ee6a5b9 commit 665c03b

2 files changed

Lines changed: 11 additions & 1 deletion

File tree

ydb/library/yql/providers/s3/provider/yql_s3_datasource_type_ann.cpp

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -707,6 +707,14 @@ class TS3DataSourceTypeAnnotationTransformer : public TVisitorTransformerBase {
707707
return true;
708708
}
709709

710+
if (name == "constraints"sv) {
711+
TStringBuf unused;
712+
if (!ExtractSettingValue(setting.Tail(), "constraints"sv, format, {}, ctx, unused)) {
713+
return false;
714+
}
715+
return true;
716+
}
717+
710718
YQL_ENSURE(name == "projection"sv);
711719
haveProjection = true;
712720
if (!EnsureAtom(setting.Tail(), ctx)) {
@@ -721,7 +729,7 @@ class TS3DataSourceTypeAnnotationTransformer : public TVisitorTransformerBase {
721729
return true;
722730
};
723731
if (!EnsureValidSettings(*input->Child(TS3Object::idx_Settings),
724-
{ "compression"sv, "partitionedby"sv, "projection"sv, "data.interval.unit"sv,
732+
{ "compression"sv, "partitionedby"sv, "projection"sv, "data.interval.unit"sv, "constraints"sv,
725733
"data.datetime.formatname"sv, "data.datetime.format"sv, "data.timestamp.formatname"sv, "data.timestamp.format"sv,
726734
"readmaxbytes"sv, "csvdelimiter"sv, "directories"sv, "filepattern"sv, "pathpattern"sv, "pathpatternvariant"sv }, validator, ctx))
727735
{

ydb/library/yql/utils/bindings/utils.cpp

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -34,6 +34,8 @@ void LoadBindings(THashMap<TString, NSQLTranslation::TTableBindingSettings>& dst
3434
binding.ClusterType = v.GetString();
3535
} else if (k == "schema") {
3636
binding.Settings["schema"] = SerializeJsonValueAsYsonText(v);
37+
} else if (k == "constraints") {
38+
binding.Settings["constraints"] = SerializeJsonValueAsYsonText(v);
3739
} else {
3840
YQL_ENSURE(v.IsString());
3941
binding.Settings.emplace(k, v.GetString());

0 commit comments

Comments
 (0)