From 8c89c41d0a6dc15365bcf2ac796bc2e1585038ef Mon Sep 17 00:00:00 2001 From: Minghao Li Date: Tue, 10 May 2022 23:20:35 +0800 Subject: [PATCH] fix(sync): display OFFLINE when show vgroups --- source/dnode/mnode/impl/src/mndVgroup.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/source/dnode/mnode/impl/src/mndVgroup.c b/source/dnode/mnode/impl/src/mndVgroup.c index 48a475ec63..4cc65579d5 100644 --- a/source/dnode/mnode/impl/src/mndVgroup.c +++ b/source/dnode/mnode/impl/src/mndVgroup.c @@ -682,7 +682,11 @@ static int32_t mndRetrieveVgroups(SNodeMsg *pReq, SShowObj *pShow, SSDataBlock * colDataAppend(pColInfo, numOfRows, (const char *)&pVgroup->vnodeGid[i].dnodeId, false); char buf1[20] = {0}; - const char *role = syncStr(pVgroup->vnodeGid[i].role); + SDnodeObj *pDnodeObj = mndAcquireDnode(pMnode, pVgroup->vnodeGid[i].dnodeId); + ASSERT(pDnodeObj != NULL); + bool isOffLine = !mndIsDnodeOnline(pMnode, pDnodeObj, taosGetTimestampMs()); + const char *role = isOffLine ? "OFFLINE" : syncStr(pVgroup->vnodeGid[i].role); + STR_WITH_MAXSIZE_TO_VARSTR(buf1, role, pShow->pMeta->pSchemas[cols].bytes); pColInfo = taosArrayGet(pBlock->pDataBlock, cols++);