From 0d1b2e4b5af07a8c1569e7cda1ee444143f1fd2e Mon Sep 17 00:00:00 2001 From: Haojun Liao Date: Fri, 10 Mar 2023 10:31:53 +0800 Subject: [PATCH] fix(tmq): use before remove hash item. --- source/dnode/vnode/src/tq/tqPush.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/source/dnode/vnode/src/tq/tqPush.c b/source/dnode/vnode/src/tq/tqPush.c index 03bb14e447..c0ed787176 100644 --- a/source/dnode/vnode/src/tq/tqPush.c +++ b/source/dnode/vnode/src/tq/tqPush.c @@ -383,11 +383,11 @@ int32_t tqRemovePushEntry(STQ* pTq, const char* pKey, int32_t keyLen, uint64_t c tqDebug("tmq poll: consumer:0x%" PRIx64 ", subkey %s vgId:%d remove from push mgr, remains:%d", consumerId, (*pEntry)->subKey, vgId, taosHashGetSize(pTq->pPushMgr) - 1); - taosHashRemove(pTq->pPushMgr, pKey, keyLen); - if (rspConsumer) { // rsp the old consumer with empty block. tqPushDataRsp(pTq, *pEntry); } + + taosHashRemove(pTq->pPushMgr, pKey, keyLen); } return 0;