From 8472f25a6ea71d985951777b44ae9710a2c9053b Mon Sep 17 00:00:00 2001 From: Haojun Liao Date: Fri, 9 Aug 2024 00:46:20 +0800 Subject: [PATCH 1/2] fix(stream): send kill checkpoint trans msg before close task. --- source/libs/stream/src/streamMeta.c | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/source/libs/stream/src/streamMeta.c b/source/libs/stream/src/streamMeta.c index 321027c293..2285784c97 100644 --- a/source/libs/stream/src/streamMeta.c +++ b/source/libs/stream/src/streamMeta.c @@ -1140,6 +1140,16 @@ void streamMetaNotifyClose(SStreamMeta* pMeta) { taosMsleep(100); } + SArray* pTaskList = NULL; + int32_t code = streamMetaSendMsgBeforeCloseTasks(pMeta, &pTaskList); + if (code != TSDB_CODE_SUCCESS) { +// return code; + } + + if (pTaskList != NULL) { + taosArrayDestroy(pTaskList); + } + int64_t el = taosGetTimestampMs() - st; stDebug("vgId:%d all stream tasks are not in timer, continue close, elapsed time:%" PRId64 " ms", pMeta->vgId, el); } From e3a2733feede060e5d594c9be78f1b90219688d3 Mon Sep 17 00:00:00 2001 From: Haojun Liao Date: Fri, 9 Aug 2024 00:47:42 +0800 Subject: [PATCH 2/2] fix(stream): send kill checkpoint trans msg before close task. --- source/libs/stream/src/streamMeta.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/source/libs/stream/src/streamMeta.c b/source/libs/stream/src/streamMeta.c index 2285784c97..fbcc338f09 100644 --- a/source/libs/stream/src/streamMeta.c +++ b/source/libs/stream/src/streamMeta.c @@ -1140,12 +1140,16 @@ void streamMetaNotifyClose(SStreamMeta* pMeta) { taosMsleep(100); } + streamMetaRLock(pMeta); + SArray* pTaskList = NULL; int32_t code = streamMetaSendMsgBeforeCloseTasks(pMeta, &pTaskList); if (code != TSDB_CODE_SUCCESS) { // return code; } + streamMetaRUnLock(pMeta); + if (pTaskList != NULL) { taosArrayDestroy(pTaskList); }