aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorVitaly Isaev <vitalyisaev@ydb.tech>2025-02-05 18:22:29 +0300
committerGitHub <noreply@github.com>2025-02-05 18:22:29 +0300
commit2ac0565e9fcb15d0fbca5c1a45aeebc1f93bb861 (patch)
tree5b1df7094e976f2be2d5650e6d67b3994a308780
parent6cd0f50b87515eba2db841a4a74a7834f6aac684 (diff)
downloadydb-2ac0565e9fcb15d0fbca5c1a45aeebc1f93bb861.tar.gz
YDB FQ: enable Timestamp pushdown for Generic provider (#14222)
-rw-r--r--ydb/library/yql/providers/generic/provider/yql_generic_physical_opt.cpp2
-rw-r--r--ydb/library/yql/providers/generic/provider/yql_generic_predicate_pushdown.cpp1
2 files changed, 2 insertions, 1 deletions
diff --git a/ydb/library/yql/providers/generic/provider/yql_generic_physical_opt.cpp b/ydb/library/yql/providers/generic/provider/yql_generic_physical_opt.cpp
index dbc96ba7fdd..73e0101dab0 100644
--- a/ydb/library/yql/providers/generic/provider/yql_generic_physical_opt.cpp
+++ b/ydb/library/yql/providers/generic/provider/yql_generic_physical_opt.cpp
@@ -27,7 +27,7 @@ namespace NYql {
: NPushdown::TSettings(NLog::EComponent::ProviderGeneric)
{
using EFlag = NPushdown::TSettings::EFeatureFlag;
- Enable(EFlag::ExpressionAsPredicate | EFlag::ArithmeticalExpressions | EFlag::ImplicitConversionToInt64);
+ Enable(EFlag::ExpressionAsPredicate | EFlag::ArithmeticalExpressions | EFlag::ImplicitConversionToInt64 | EFlag::DateTimeTypes | EFlag::TimestampCtor);
}
};
diff --git a/ydb/library/yql/providers/generic/provider/yql_generic_predicate_pushdown.cpp b/ydb/library/yql/providers/generic/provider/yql_generic_predicate_pushdown.cpp
index f862bfe45a5..2b2ff8bdbfb 100644
--- a/ydb/library/yql/providers/generic/provider/yql_generic_predicate_pushdown.cpp
+++ b/ydb/library/yql/providers/generic/provider/yql_generic_predicate_pushdown.cpp
@@ -112,6 +112,7 @@ namespace NYql {
MATCH_TYPE(String, STRING);
MATCH_TYPE(Utf8, UTF8);
MATCH_TYPE(Json, JSON);
+ MATCH_TYPE(Timestamp, TIMESTAMP);
ctx.Err << "unknown data slot " << static_cast<ui64>(dataSlot) << " for safe cast";
return false;