From a8de040af21001ad4054bf2b691d8bce5b158e20 Mon Sep 17 00:00:00 2001 From: dapan1121 Date: Fri, 10 Nov 2023 16:13:23 +0800 Subject: [PATCH] fix: remove non sort usage for now --- source/libs/planner/src/planOptimizer.c | 4 ++-- source/libs/planner/src/planSpliter.c | 6 ++---- source/libs/planner/src/planValidator.c | 3 +++ 3 files changed, 7 insertions(+), 6 deletions(-) diff --git a/source/libs/planner/src/planOptimizer.c b/source/libs/planner/src/planOptimizer.c index 99fed47b92..4eda11a6a4 100644 --- a/source/libs/planner/src/planOptimizer.c +++ b/source/libs/planner/src/planOptimizer.c @@ -2878,7 +2878,7 @@ static int32_t splitCacheLastFuncOptimize(SOptimizeContext* pCxt, SLogicSubplan* } if (NULL == pAggFuncList) { - planError("empty agg func list while splite projections"); + planError("empty agg func list while splite projections, funcNum:%d", pAgg->pAggFuncs->length); return TSDB_CODE_PLAN_INTERNAL_ERROR; } @@ -2905,7 +2905,7 @@ static int32_t splitCacheLastFuncOptimize(SOptimizeContext* pCxt, SLogicSubplan* } if (NULL == pTargets) { - planError("empty target func list while splite projections"); + planError("empty target func list while splite projections, targetsNum:%d", pAgg->node.pTargets->length); nodesDestroyList(pAggFuncList); return TSDB_CODE_PLAN_INTERNAL_ERROR; } diff --git a/source/libs/planner/src/planSpliter.c b/source/libs/planner/src/planSpliter.c index fd6706e43e..43bd8a5589 100644 --- a/source/libs/planner/src/planSpliter.c +++ b/source/libs/planner/src/planSpliter.c @@ -1194,7 +1194,7 @@ static int32_t stbSplSplitScanNodeWithPartTags(SSplitContext* pCxt, SStableSplit SLogicNode* pSplitNode = NULL; int32_t code = stbSplGetSplitNodeForScan(pInfo, &pSplitNode); if (TSDB_CODE_SUCCESS == code) { - code = stbSplCreateMergeNode(pCxt, pInfo->pSubplan, pSplitNode, NULL, pSplitNode, true, pSplitNode->requireDataOrder >= DATA_ORDER_LEVEL_IN_GROUP); + code = stbSplCreateMergeNode(pCxt, pInfo->pSubplan, pSplitNode, NULL, pSplitNode, true, true); } if (TSDB_CODE_SUCCESS == code) { code = nodesListMakeStrictAppend(&pInfo->pSubplan->pChildren, @@ -1339,14 +1339,12 @@ static int32_t stbSplCreateMergeKeysForPartitionNode(SLogicNode* pPart, SNodeLis static int32_t stbSplSplitPartitionNode(SSplitContext* pCxt, SStableSplitInfo* pInfo) { int32_t code = TSDB_CODE_SUCCESS; - bool needSort = false; SNodeList* pMergeKeys = NULL; if (pInfo->pSplitNode->requireDataOrder >= DATA_ORDER_LEVEL_IN_GROUP) { - needSort = true; code = stbSplCreateMergeKeysForPartitionNode(pInfo->pSplitNode, &pMergeKeys); } if (TSDB_CODE_SUCCESS == code) { - code = stbSplCreateMergeNode(pCxt, pInfo->pSubplan, pInfo->pSplitNode, pMergeKeys, pInfo->pSplitNode, true, needSort); + code = stbSplCreateMergeNode(pCxt, pInfo->pSubplan, pInfo->pSplitNode, pMergeKeys, pInfo->pSplitNode, true, true); } if (TSDB_CODE_SUCCESS == code) { code = nodesListMakeStrictAppend(&pInfo->pSubplan->pChildren, diff --git a/source/libs/planner/src/planValidator.c b/source/libs/planner/src/planValidator.c index 7461ee4f9a..66e7defc1d 100755 --- a/source/libs/planner/src/planValidator.c +++ b/source/libs/planner/src/planValidator.c @@ -154,6 +154,9 @@ int32_t validateQueryPlan(SPlanContext* pCxt, SQueryPlan* pPlan) { break; } } + if (code) { + break; + } } destoryValidatePlanContext(&cxt);