This is an automated email from the ASF dual-hosted git repository. panxiaolei pushed a commit to branch dev_rec2 in repository https://gitbox.apache.org/repos/asf/doris.git
commit 8e2fda6d44a046765a3b325bfd49bf9a716de418 Author: BiteTheDDDDt <[email protected]> AuthorDate: Thu Sep 18 21:02:33 2025 +0800 add rec cte thrift struct update update thrift update thrift add result_expr_lists to TRecCTENode add TRecCTEScanNode --- gensrc/thrift/PlanNodes.thrift | 28 +++++++++++++++++++++++++++- 1 file changed, 27 insertions(+), 1 deletion(-) diff --git a/gensrc/thrift/PlanNodes.thrift b/gensrc/thrift/PlanNodes.thrift index e99f93b3ff1..4036ad7ea49 100644 --- a/gensrc/thrift/PlanNodes.thrift +++ b/gensrc/thrift/PlanNodes.thrift @@ -60,7 +60,9 @@ enum TPlanNodeType { TEST_EXTERNAL_SCAN_NODE = 31, PARTITION_SORT_NODE = 32, GROUP_COMMIT_SCAN_NODE = 33, - MATERIALIZATION_NODE = 34 + MATERIALIZATION_NODE = 34, + REC_CTE_NODE = 35, + REC_CTE_SCAN_NODE = 36 } struct TKeyRange { @@ -692,6 +694,27 @@ struct TFileScanNode { 2: optional string table_name } +struct TRecCTETarget { + 1: optional Types.TNetworkAddress addr + 2: optional Types.TUniqueId fragment_instance_id + 3: optional i32 node_id +} + +struct TRecCTEResetInfo { + 1: optional Types.TNetworkAddress addr + 2: optional i32 fragment_id +} + +struct TRecCTENode { + 1: optional bool is_union_all + 2: optional list<TRecCTETarget> targets + 3: optional list<TRecCTEResetInfo> fragments_to_reset + 4: optional list<list<Exprs.TExpr>> result_expr_lists +} + +struct TRecCTEScanNode { +} + struct TEsScanNode { 1: required Types.TTupleId tuple_id 2: optional map<string,string> properties @@ -1427,6 +1450,7 @@ struct TPlanNode { 36: optional list<TRuntimeFilterDesc> runtime_filters 37: optional TGroupCommitScanNode group_commit_scan_node 38: optional TMaterializationNode materialization_node + 39: optional TRecCTENode rec_cte_node // Use in vec exec engine 40: optional Exprs.TExpr vconjunct @@ -1449,6 +1473,8 @@ struct TPlanNode { 50: optional list<list<Exprs.TExpr>> distribute_expr_lists 51: optional bool is_serial_operator + 52: optional TRecCTEScanNode rec_cte_scan_node + // projections is final projections, which means projecting into results and materializing them into the output block. 101: optional list<Exprs.TExpr> projections 102: optional Types.TTupleId output_tuple_id --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
