From cbf994f04fe4e4ec07eed35fb9aa3b84734e37b7 Mon Sep 17 00:00:00 2001 From: Haojun Liao Date: Wed, 8 May 2024 22:28:49 +0800 Subject: [PATCH] fix(query): set correct length for json value. --- source/libs/executor/src/tsort.c | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/source/libs/executor/src/tsort.c b/source/libs/executor/src/tsort.c index 21e9e5a70d..daac98bbfc 100644 --- a/source/libs/executor/src/tsort.c +++ b/source/libs/executor/src/tsort.c @@ -1462,7 +1462,12 @@ static int32_t getPageBufIncForRow(SSDataBlock* pSrcBlock, int32_t srcRowIndex, if (IS_VAR_DATA_TYPE(pColInfoData->info.type)) { if ((pColInfoData->varmeta.offset[srcRowIndex] != -1) && (pColInfoData->pData)) { char* p = colDataGetData(pColInfoData, srcRowIndex); - size += varDataTLen(p); + + if (pColInfoData->info.type == TSDB_DATA_TYPE_JSON) { + size += getJsonValueLen(p); + } else { + size += varDataTLen(p); + } } size += sizeof(pColInfoData->varmeta.offset[0]);