From d0bea6f9270f5a52a7e1cd9f6db932a32a0757b9 Mon Sep 17 00:00:00 2001 From: Hongze Cheng Date: Fri, 7 Aug 2020 03:17:45 +0000 Subject: [PATCH] fix a coredump when rpc msgType is bad --- src/rpc/src/rpcMain.c | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/src/rpc/src/rpcMain.c b/src/rpc/src/rpcMain.c index 29afe8d2ab..37bf9c3f34 100644 --- a/src/rpc/src/rpcMain.c +++ b/src/rpc/src/rpcMain.c @@ -1007,9 +1007,15 @@ static void *rpcProcessMsgFromPeer(SRecvInfo *pRecv) { terrno = 0; pConn = rpcProcessMsgHead(pRpc, pRecv); - tDebug("%s %p %p, %s received from 0x%x:%hu, parse code:0x%x len:%d sig:0x%08x:0x%08x:%d code:0x%x", - pRpc->label, pConn, (void *)pHead->ahandle, taosMsg[pHead->msgType], pRecv->ip, pRecv->port, terrno, - pRecv->msgLen, pHead->sourceId, pHead->destId, pHead->tranId, pHead->code); + if (pHead->msgType >= 1 && pHead->msgType < TSDB_MSG_TYPE_MAX) { + tDebug("%s %p %p, %s received from 0x%x:%hu, parse code:0x%x len:%d sig:0x%08x:0x%08x:%d code:0x%x", pRpc->label, + pConn, (void *)pHead->ahandle, taosMsg[pHead->msgType], pRecv->ip, pRecv->port, terrno, pRecv->msgLen, + pHead->sourceId, pHead->destId, pHead->tranId, pHead->code); + } else { + tDebug("%s %p %p, %d received from 0x%x:%hu, parse code:0x%x len:%d sig:0x%08x:0x%08x:%d code:0x%x", pRpc->label, + pConn, (void *)pHead->ahandle, pHead->msgType, pRecv->ip, pRecv->port, terrno, pRecv->msgLen, + pHead->sourceId, pHead->destId, pHead->tranId, pHead->code); + } int32_t code = terrno; if (code != TSDB_CODE_RPC_ALREADY_PROCESSED) { -- GitLab