From 718c251739b52c7b34d7d32fff15871c9209bf46 Mon Sep 17 00:00:00 2001 From: localvar Date: Mon, 4 May 2020 15:35:12 +0800 Subject: [PATCH] fix crash --- src/query/src/queryExecutor.c | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/src/query/src/queryExecutor.c b/src/query/src/queryExecutor.c index f0f96c15d5..047f1e2578 100644 --- a/src/query/src/queryExecutor.c +++ b/src/query/src/queryExecutor.c @@ -5476,8 +5476,15 @@ static int32_t convertQueryMsg(SQueryTableMsg *pQueryMsg, SArray **pTableIdList, static int32_t buildAirthmeticExprFromMsg(SExprInfo *pArithExprInfo, SQueryTableMsg *pQueryMsg) { qTrace("qmsg:%p create arithmetic expr from binary string", pQueryMsg, pArithExprInfo->base.arg[0].argValue.pz); - - tExprNode* pExprNode = exprTreeFromBinary(pArithExprInfo->base.arg[0].argValue.pz, pArithExprInfo->base.arg[0].argBytes); + + tExprNode* pExprNode = NULL; + TRY(32) { + pExprNode = exprTreeFromBinary(pArithExprInfo->base.arg[0].argValue.pz, pArithExprInfo->base.arg[0].argBytes); + } CATCH( code ) { + CLEANUP_EXECUTE(); + return code; + } END_TRY + if (pExprNode == NULL) { qError("qmsg:%p failed to create arithmetic expression string from:%s", pQueryMsg, pArithExprInfo->base.arg[0].argValue.pz); return TSDB_CODE_APP_ERROR; -- GitLab