diff options
author | udovichenko-r <rvu@ydb.tech> | 2022-12-08 15:46:16 +0300 |
---|---|---|
committer | udovichenko-r <rvu@ydb.tech> | 2022-12-08 15:46:16 +0300 |
commit | ab991e63d2e15259b7f604d0b67986ae5408d113 (patch) | |
tree | 28d823f6b85d38d5e37dbf11d301d2265a1dc1f2 | |
parent | a1bcd6e68340cf429eae3fb49d91bb0e1036f79b (diff) | |
download | ydb-ab991e63d2e15259b7f604d0b67986ae5408d113.tar.gz |
[yql] Add missing Rewind()s (first part)
-rw-r--r-- | ydb/library/yql/core/type_ann/type_ann_expr.cpp | 11 | ||||
-rw-r--r-- | ydb/library/yql/core/yql_opt_proposed_by_data.cpp | 5 |
2 files changed, 16 insertions, 0 deletions
diff --git a/ydb/library/yql/core/type_ann/type_ann_expr.cpp b/ydb/library/yql/core/type_ann/type_ann_expr.cpp index 38760e8290f..9fd10cd5ba1 100644 --- a/ydb/library/yql/core/type_ann/type_ann_expr.cpp +++ b/ydb/library/yql/core/type_ann/type_ann_expr.cpp @@ -99,6 +99,17 @@ public: return combinedStatus; } + void Rewind() { + CallableTransformer->Rewind(); + CallableInputs.clear(); + Processed.clear(); + HasRenames = false; + RepeatCallableCount.clear(); + CurrentFunctions = {}; + CallableTimes.clear(); + } + + private: void WriteRepeatCallableCount() { if (RepeatCallableCount.empty()) { diff --git a/ydb/library/yql/core/yql_opt_proposed_by_data.cpp b/ydb/library/yql/core/yql_opt_proposed_by_data.cpp index dcb0625c95f..3b1e53663de 100644 --- a/ydb/library/yql/core/yql_opt_proposed_by_data.cpp +++ b/ydb/library/yql/core/yql_opt_proposed_by_data.cpp @@ -76,6 +76,9 @@ private: GetTransformer(x.Get()).Rewind(); } } + PendingProviders.clear(); + HasRepeats = false; + NewRoots.clear(); } TStatus HandleProvider(IDataProvider* provider, const TExprNode::TPtr& input, TExprNode::TPtr& output, TExprContext& ctx) { @@ -209,6 +212,8 @@ private: GetTransformer(p->Get()).Rewind(); } } + PendingProviders.clear(); + NewRoots.clear(); } TStatus HandleProvider(IDataProvider* provider, const TExprNode::TPtr& input, TExprNode::TPtr& output, TExprContext& ctx) { |