diff --git a/src/dnode/src/dnodePeer.c b/src/dnode/src/dnodePeer.c index fe8b7442e040aa1866c6a1fa7722df68bd3695f5..7fe8225f1b5088be888b6000204ecff0766284f8 100644 --- a/src/dnode/src/dnodePeer.c +++ b/src/dnode/src/dnodePeer.c @@ -151,6 +151,12 @@ void dnodeCleanupClient() { } static void dnodeProcessRspFromDnode(SRpcMsg *pMsg, SRpcEpSet *pEpSet) { + if (dnodeGetRunStatus() != TSDB_RUN_STATUS_RUNING) { + rpcFreeCont(pMsg->pCont); + dDebug("RPC %p, msg:%s is ignored since dnode not running", pMsg->handle, taosMsg[pMsg->msgType]); + return; + } + if (pMsg->msgType == TSDB_MSG_TYPE_DM_STATUS_RSP && pEpSet) { dnodeUpdateEpSetForPeer(pEpSet); }