From d6998dc1a8f6cb21860e6c79e636a2c6d0328599 Mon Sep 17 00:00:00 2001 From: Ganlin Zhao Date: Mon, 30 May 2022 14:57:29 +0300 Subject: [PATCH 1/2] fix(query): fix unique/last/first number of param check TD-16134 --- source/libs/function/src/builtins.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/source/libs/function/src/builtins.c b/source/libs/function/src/builtins.c index 88d12e38a1..ce846a6f22 100644 --- a/source/libs/function/src/builtins.c +++ b/source/libs/function/src/builtins.c @@ -688,7 +688,7 @@ static int32_t translateLastRow(SFunctionNode* pFunc, char* pErrBuf, int32_t len static int32_t translateFirstLast(SFunctionNode* pFunc, char* pErrBuf, int32_t len) { // first(col_list) will be rewritten as first(col) if (1 != LIST_LENGTH(pFunc->pParameterList)) { - return TSDB_CODE_SUCCESS; + return invaildFuncParaNumErrMsg(pErrBuf, len, pFunc->functionName); } SNode* pPara = nodesListGetNode(pFunc->pParameterList, 0); @@ -703,7 +703,7 @@ static int32_t translateFirstLast(SFunctionNode* pFunc, char* pErrBuf, int32_t l static int32_t translateUnique(SFunctionNode* pFunc, char* pErrBuf, int32_t len) { if (1 != LIST_LENGTH(pFunc->pParameterList)) { - return TSDB_CODE_SUCCESS; + return invaildFuncParaNumErrMsg(pErrBuf, len, pFunc->functionName); } SNode* pPara = nodesListGetNode(pFunc->pParameterList, 0); From c630f4265330abf5f334d3994a8ffd0138242b15 Mon Sep 17 00:00:00 2001 From: Ganlin Zhao Date: Mon, 30 May 2022 14:57:29 +0300 Subject: [PATCH 2/2] fix(query): fix unique function number of param check TD-16134 --- source/libs/function/src/builtins.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/source/libs/function/src/builtins.c b/source/libs/function/src/builtins.c index ce846a6f22..f5692cc3e5 100644 --- a/source/libs/function/src/builtins.c +++ b/source/libs/function/src/builtins.c @@ -688,7 +688,7 @@ static int32_t translateLastRow(SFunctionNode* pFunc, char* pErrBuf, int32_t len static int32_t translateFirstLast(SFunctionNode* pFunc, char* pErrBuf, int32_t len) { // first(col_list) will be rewritten as first(col) if (1 != LIST_LENGTH(pFunc->pParameterList)) { - return invaildFuncParaNumErrMsg(pErrBuf, len, pFunc->functionName); + return TSDB_CODE_SUCCESS; } SNode* pPara = nodesListGetNode(pFunc->pParameterList, 0);