From 7725aa1c9a690f343d983eecc0ef5447d6f2ea41 Mon Sep 17 00:00:00 2001 From: slguan Date: Fri, 22 Nov 2019 00:09:00 +0800 Subject: [PATCH] [TBASE-1129] --- src/inc/tstatus.h | 2 ++ src/system/detail/src/dnodeMgmt.c | 18 +++++++++--------- src/system/detail/src/mgmtDnodeInt.c | 5 +++-- src/system/detail/src/vnodeCache.c | 4 ++-- src/system/detail/src/vnodeFile.c | 10 ++++------ src/system/detail/src/vnodeStore.c | 18 +++++++++--------- src/system/detail/src/vnodeStream.c | 8 ++++---- src/system/lite/src/vnodeFile.spec.c | 2 +- src/system/lite/src/vnodePeer.spec.c | 2 +- src/util/src/tstatus.c | 20 ++++++++++++++++++++ 10 files changed, 55 insertions(+), 34 deletions(-) diff --git a/src/inc/tstatus.h b/src/inc/tstatus.h index 1584783078..53b5cb9547 100644 --- a/src/inc/tstatus.h +++ b/src/inc/tstatus.h @@ -78,6 +78,8 @@ enum _TSDB_VN_STREAM_STATUS { TSDB_VN_STREAM_STATUS_START }; +const char* taosGetVgroupStatusStr(int vgroupStatus); +const char* taosGetDbStatusStr(int dbStatus); const char* taosGetVnodeStatusStr(int vnodeStatus); const char* taosGetVnodeSyncStatusStr(int vnodeSyncStatus); const char* taosGetVnodeDropStatusStr(int dropping); diff --git a/src/system/detail/src/dnodeMgmt.c b/src/system/detail/src/dnodeMgmt.c index d9029db655..2d184afd41 100644 --- a/src/system/detail/src/dnodeMgmt.c +++ b/src/system/detail/src/dnodeMgmt.c @@ -350,33 +350,33 @@ int vnodeProcessVPeerCfg(char *msg, int msgLen, SMgmtObj *pMgmtObj) { pCfg->rowsInFileBlock = htonl(pCfg->rowsInFileBlock); if (pCfg->replications > 0) { - dTrace("vid:%d, vpeer cfg received, replica:%d session:%d, vnodeList replica:%d session:%d", + dPrint("vid:%d, vpeer cfg received, replica:%d session:%d, vnodeList replica:%d session:%d", vnode, pCfg->replications, pCfg->maxSessions, vnodeList[vnode].cfg.replications, vnodeList[vnode].cfg.maxSessions); for (i = 0; i < pCfg->replications; ++i) { pMsg->vpeerDesc[i].vnode = htonl(pMsg->vpeerDesc[i].vnode); pMsg->vpeerDesc[i].ip = htonl(pMsg->vpeerDesc[i].ip); - dTrace("vid:%d, vpeer:%d ip:0x%x vid:%d ", vnode, i, pMsg->vpeerDesc[i].ip, pMsg->vpeerDesc[i].vnode); + dPrint("vid:%d, vpeer:%d ip:0x%x vid:%d ", vnode, i, pMsg->vpeerDesc[i].ip, pMsg->vpeerDesc[i].vnode); } } if (vnodeList[vnode].cfg.maxSessions == 0) { - dTrace("vid:%d, vnode is empty", vnode); + dPrint("vid:%d, vnode is empty", vnode); if (pCfg->maxSessions > 0) { if (vnodeList[vnode].vnodeStatus == TSDB_VN_STATUS_OFFLINE) { - dTrace("vid:%d, status:%s, start to create vnode", vnode, taosGetVnodeStatusStr(vnodeList[vnode].vnodeStatus)); + dPrint("vid:%d, status:%s, start to create vnode", vnode, taosGetVnodeStatusStr(vnodeList[vnode].vnodeStatus)); return vnodeCreateVnode(vnode, pCfg, pMsg->vpeerDesc); } else { - dTrace("vid:%d, status:%s, cannot preform create vnode operation", vnode, taosGetVnodeStatusStr(vnodeList[vnode].vnodeStatus)); + dPrint("vid:%d, status:%s, cannot preform create vnode operation", vnode, taosGetVnodeStatusStr(vnodeList[vnode].vnodeStatus)); return TSDB_CODE_INVALID_VNODE_STATUS; } } } else { - dTrace("vid:%d, vnode is not empty", vnode); + dPrint("vid:%d, vnode is not empty", vnode); if (pCfg->maxSessions > 0) { if (vnodeList[vnode].vnodeStatus == TSDB_VN_STATUS_DELETING) { - dTrace("vid:%d, status:%s, wait vnode delete finished", vnode, taosGetVnodeStatusStr(vnodeList[vnode].vnodeStatus)); + dPrint("vid:%d, status:%s, wait vnode delete finished", vnode, taosGetVnodeStatusStr(vnodeList[vnode].vnodeStatus)); } else { - dTrace("vid:%d, status:%s, start to update vnode", vnode, taosGetVnodeStatusStr(vnodeList[vnode].vnodeStatus)); + dPrint("vid:%d, status:%s, start to update vnode", vnode, taosGetVnodeStatusStr(vnodeList[vnode].vnodeStatus)); if (pCfg->maxSessions != vnodeList[vnode].cfg.maxSessions) { vnodeCleanUpOneVnode(vnode); @@ -395,7 +395,7 @@ int vnodeProcessVPeerCfg(char *msg, int msgLen, SMgmtObj *pMgmtObj) { } return 0; } else { - dTrace("vid:%d, status:%s, start to delete vnode", vnode, taosGetVnodeStatusStr(vnodeList[vnode].vnodeStatus)); + dPrint("vid:%d, status:%s, start to delete vnode", vnode, taosGetVnodeStatusStr(vnodeList[vnode].vnodeStatus)); vnodeRemoveVnode(vnode); } } diff --git a/src/system/detail/src/mgmtDnodeInt.c b/src/system/detail/src/mgmtDnodeInt.c index 9310182a14..6390b7009f 100644 --- a/src/system/detail/src/mgmtDnodeInt.c +++ b/src/system/detail/src/mgmtDnodeInt.c @@ -99,7 +99,7 @@ int mgmtProcessVpeerCfgMsg(char *cont, int contLen, SDnodeObj *pObj) { *pMsg = 0; pMsg++; pMsg = mgmtBuildVpeersIe(pMsg, pVgroup, vnode); - mTrace("dnode:%s, vnode:%d, vgroup:%d, send create meter msg, code:%d", taosIpStr(pObj->privateIp), vnode, pVgroup->vgId, *pMsg); + mTrace("dnode:%s, vnode:%d, vgroup:%d, send create vnode msg, code:%d", taosIpStr(pObj->privateIp), vnode, pVgroup->vgId, *pMsg); } else { mTrace("dnode:%s, vnode:%d, no vgroup info, vgroup:%d", taosIpStr(pObj->privateIp), vnode, pObj->vload[vnode].vgId); *pMsg = TSDB_CODE_NOT_ACTIVE_VNODE; @@ -128,7 +128,8 @@ int mgmtProcessVPeersRsp(char *msg, int msgLen, SDnodeObj *pObj) { } if (pDb->vgStatus != TSDB_VG_STATUS_IN_PROGRESS) { - mTrace("dnode:%s, db:%s vpeer rsp already disposed, vgroup status:%d code:%d", taosIpStr(pObj->privateIp), pRsp->more, pDb->vgStatus, pRsp->code); + mTrace("dnode:%s, db:%s vpeer rsp already disposed, vgroup status:%s code:%d", + taosIpStr(pObj->privateIp), pRsp->more, taosGetVgroupStatusStr(pDb->vgStatus), pRsp->code); return 0; } diff --git a/src/system/detail/src/vnodeCache.c b/src/system/detail/src/vnodeCache.c index 71132b50ef..c88cbeee4b 100644 --- a/src/system/detail/src/vnodeCache.c +++ b/src/system/detail/src/vnodeCache.c @@ -78,7 +78,7 @@ void *vnodeOpenCachePool(int vnode) { } } - dTrace("vid:%d, cache pool is allocated:0x%x", vnode, pCachePool); + dPrint("vid:%d, cache pool is allocated:0x%x", vnode, pCachePool); return pCachePool; @@ -103,7 +103,7 @@ void vnodeCloseCachePool(int vnode) { taosTmrStopA(&pVnode->commitTimer); if (pVnode->commitInProcess) pthread_cancel(pVnode->commitThread); - dTrace("vid:%d, cache pool closed, count:%d", vnode, pCachePool->count); + dPrint("vid:%d, cache pool closed, count:%d", vnode, pCachePool->count); int maxAllocBlock = (1024 * 1024 * 1024) / pVnode->cfg.cacheBlockSize; while (blockId < pVnode->cfg.cacheNumOfBlocks.totalBlocks) { diff --git a/src/system/detail/src/vnodeFile.c b/src/system/detail/src/vnodeFile.c index c8c7d2debe..ae92ce44a3 100644 --- a/src/system/detail/src/vnodeFile.c +++ b/src/system/detail/src/vnodeFile.c @@ -125,10 +125,8 @@ int vnodeCreateHeadDataFile(int vnode, int fileId, char *headName, char *dataNam if (symlink(dDataName, dataName) != 0) return -1; if (symlink(dLastName, lastName) != 0) return -1; - dTrace( - "vid:%d, fileId:%d, empty header file:%s dataFile:%s lastFile:%s on " - "disk:%s is created ", - vnode, fileId, headName, dataName, lastName, path); + dPrint("vid:%d, fileId:%d, empty header file:%s dataFile:%s lastFile:%s on disk:%s is created ", + vnode, fileId, headName, dataName, lastName, path); return 0; } @@ -309,7 +307,7 @@ int vnodeOpenCommitFiles(SVnodeObj *pVnode, int noTempLast) { vnodeRecoverFromPeer(pVnode, fileId); goto _error; } else { - dTrace("vid:%d, data file:%s is opened to write", vnode, name); + dPrint("vid:%d, data file:%s is opened to write", vnode, name); } // open last file @@ -414,7 +412,7 @@ void vnodeRemoveFile(int vnode, int fileId) { remove(dDataName); remove(dLastName); - dTrace("vid:%d fileId:%d on disk: %s is removed, numOfFiles:%d maxFiles:%d", vnode, fileId, path, + dPrint("vid:%d fileId:%d on disk: %s is removed, numOfFiles:%d maxFiles:%d", vnode, fileId, path, pVnode->numOfFiles, pVnode->maxFiles); } diff --git a/src/system/detail/src/vnodeStore.c b/src/system/detail/src/vnodeStore.c index 49fcdfe467..ea64181577 100644 --- a/src/system/detail/src/vnodeStore.c +++ b/src/system/detail/src/vnodeStore.c @@ -59,7 +59,7 @@ static int vnodeInitStoreVnode(int vnode) { } pthread_mutex_init(&(pVnode->vmutex), NULL); - dTrace("vid:%d, storage initialized, version:%ld fileId:%d numOfFiles:%d", vnode, pVnode->version, pVnode->fileId, + dPrint("vid:%d, storage initialized, version:%ld fileId:%d numOfFiles:%d", vnode, pVnode->version, pVnode->fileId, pVnode->numOfFiles); return 0; @@ -83,7 +83,7 @@ int vnodeOpenVnode(int vnode) { return TSDB_CODE_INVALID_VNODE_STATUS; } - dTrace("vid:%d, status:%s, start to open", vnode, taosGetVnodeStatusStr(pVnode->vnodeStatus)); + dPrint("vid:%d, status:%s, start to open", vnode, taosGetVnodeStatusStr(pVnode->vnodeStatus)); pthread_mutex_lock(&dmutex); // not enough memory, abort @@ -104,7 +104,7 @@ int vnodeOpenVnode(int vnode) { vnodeOpenStreams(pVnode, NULL); #endif - dTrace("vid:%d, vnode is opened, openVnodes:%d, status:%s", vnode, tsOpenVnodes, taosGetVnodeStatusStr(pVnode->vnodeStatus)); + dPrint("vid:%d, vnode is opened, openVnodes:%d, status:%s", vnode, tsOpenVnodes, taosGetVnodeStatusStr(pVnode->vnodeStatus)); return TSDB_CODE_SUCCESS; } @@ -141,10 +141,10 @@ static int vnodeCloseVnode(int vnode) { } if (pVnode->vnodeStatus == TSDB_VN_STATUS_DELETING) { - dTrace("vid:%d, status:%s, another thread performed delete operation", vnode, taosGetVnodeStatusStr(pVnode->vnodeStatus)); + dPrint("vid:%d, status:%s, another thread performed delete operation", vnode, taosGetVnodeStatusStr(pVnode->vnodeStatus)); return TSDB_CODE_SUCCESS; } else { - dTrace("vid:%d, status:%s, enter close operation", vnode, taosGetVnodeStatusStr(pVnode->vnodeStatus)); + dPrint("vid:%d, status:%s, enter close operation", vnode, taosGetVnodeStatusStr(pVnode->vnodeStatus)); pVnode->vnodeStatus = TSDB_VN_STATUS_CLOSING; } @@ -154,7 +154,7 @@ static int vnodeCloseVnode(int vnode) { return TSDB_CODE_ACTION_IN_PROGRESS; } - dTrace("vid:%d, status:%s, enter delete operation", vnode, taosGetVnodeStatusStr(pVnode->vnodeStatus)); + dPrint("vid:%d, status:%s, enter delete operation", vnode, taosGetVnodeStatusStr(pVnode->vnodeStatus)); pVnode->vnodeStatus = TSDB_VN_STATUS_DELETING; vnodeCloseStream(vnodeList + vnode); @@ -235,7 +235,7 @@ static void vnodeRemoveDataFiles(int vnode) { if (tcode >= 0) { remove(dfilePath); - dTrace("Data file %s is removed, link file %s", dfilePath, linkFile); + dPrint("Data file %s is removed, link file %s", dfilePath, linkFile); } } else { remove(de->d_name); @@ -250,7 +250,7 @@ static void vnodeRemoveDataFiles(int vnode) { sprintf(vnodeDir, "%s/vnode%d", tsDirectory, vnode); rmdir(vnodeDir); - dTrace("vid:%d, vnode is removed!", vnode); + dPrint("vid:%d, vnode is removed!", vnode); } int vnodeRemoveVnode(int vnode) { @@ -273,7 +273,7 @@ int vnodeRemoveVnode(int vnode) { } } else { - dTrace("vid:%d, max sessions:%d, this vnode already dropped!!!", vnode, vnodeList[vnode].cfg.maxSessions); + dPrint("vid:%d, max sessions:%d, this vnode already dropped!!!", vnode, vnodeList[vnode].cfg.maxSessions); vnodeList[vnode].cfg.maxSessions = 0; //reset value vnodeCalcOpenVnodes(); } diff --git a/src/system/detail/src/vnodeStream.c b/src/system/detail/src/vnodeStream.c index 69a33acc54..00447cced8 100644 --- a/src/system/detail/src/vnodeStream.c +++ b/src/system/detail/src/vnodeStream.c @@ -155,7 +155,7 @@ void vnodeRemoveStream(SMeterObj *pObj) { // Close all streams in a vnode void vnodeCloseStream(SVnodeObj *pVnode) { SMeterObj *pObj; - dTrace("vid:%d, stream is closed, old role %s", pVnode->vnode, taosGetVnodeStreamStatusStr(pVnode->streamRole)); + dPrint("vid:%d, stream is closed, old role %s", pVnode->vnode, taosGetVnodeStreamStatusStr(pVnode->streamRole)); // stop stream computing for (int sid = 0; sid < pVnode->cfg.maxSessions; ++sid) { @@ -174,16 +174,16 @@ void vnodeUpdateStreamRole(SVnodeObj *pVnode) { int newRole = (pVnode->vnodeStatus == TSDB_VN_STATUS_MASTER) ? TSDB_VN_STREAM_STATUS_START : TSDB_VN_STREAM_STATUS_STOP; if (newRole != pVnode->streamRole) { - dTrace("vid:%d, stream role is changed from %s to %s", + dPrint("vid:%d, stream role is changed from %s to %s", pVnode->vnode, taosGetVnodeStreamStatusStr(pVnode->streamRole), taosGetVnodeStreamStatusStr(newRole)); pVnode->streamRole = newRole; - if (newRole) { + if (newRole == TSDB_VN_STREAM_STATUS_START) { vnodeOpenStreams(pVnode, NULL); } else { vnodeCloseStream(pVnode); } } else { - dTrace("vid:%d, stream role is keep to %s", pVnode->vnode, taosGetVnodeStreamStatusStr(newRole)); + dPrint("vid:%d, stream role is keep to %s", pVnode->vnode, taosGetVnodeStreamStatusStr(pVnode->streamRole)); } } diff --git a/src/system/lite/src/vnodeFile.spec.c b/src/system/lite/src/vnodeFile.spec.c index 53651a8cc9..7b26ed6c9f 100644 --- a/src/system/lite/src/vnodeFile.spec.c +++ b/src/system/lite/src/vnodeFile.spec.c @@ -97,7 +97,7 @@ int vnodeCheckNewHeaderFile(int fd, SVnodeObj *pVnode) { } _correct_exit: - dTrace("vid: %d new header file %s is correct", pVnode->vnode, pVnode->nfn); + dPrint("vid: %d new header file %s is correct", pVnode->vnode, pVnode->nfn); tfree(pBlocks); tfree(pHeader); return 0; diff --git a/src/system/lite/src/vnodePeer.spec.c b/src/system/lite/src/vnodePeer.spec.c index 2950547327..d7da8b66f4 100644 --- a/src/system/lite/src/vnodePeer.spec.c +++ b/src/system/lite/src/vnodePeer.spec.c @@ -32,7 +32,7 @@ void vnodeBroadcastStatusToUnsyncedPeer(SVnodeObj *pVnode) {} int vnodeOpenPeerVnode(int vnode) { SVnodeObj *pVnode = vnodeList + vnode; pVnode->vnodeStatus = (pVnode->cfg.replications > 1) ? TSDB_VN_STATUS_UNSYNCED : TSDB_VN_STATUS_MASTER; - dTrace("vid:%d, status:%s numOfPeers:%d", vnode, taosGetVnodeStatusStr(pVnode->vnodeStatus), pVnode->cfg.replications - 1); + dPrint("vid:%d, status:%s numOfPeers:%d", vnode, taosGetVnodeStatusStr(pVnode->vnodeStatus), pVnode->cfg.replications - 1); vnodeUpdateStreamRole(pVnode); return 0; } diff --git a/src/util/src/tstatus.c b/src/util/src/tstatus.c index 64f1c5d4f1..1ab007715d 100644 --- a/src/util/src/tstatus.c +++ b/src/util/src/tstatus.c @@ -17,6 +17,26 @@ #include "tsdb.h" #include "tstatus.h" +const char* taosGetVgroupStatusStr(int vgroupStatus) { + switch (vgroupStatus) { + case TSDB_VG_STATUS_READY: return "ready"; + case TSDB_VG_STATUS_IN_PROGRESS: return "inprogress"; + case TSDB_VG_STATUS_COMMITLOG_INIT_FAILED: return "commitlog_init_failed"; + case TSDB_VG_STATUS_INIT_FAILED: return "init_failed"; + case TSDB_VG_STATUS_FULL: return "full"; + default: return "undefined"; + } +} + +const char* taosGetDbStatusStr(int dbStatus) { + switch (dbStatus) { + case TSDB_DB_STATUS_READY: return "ready"; + case TSDB_DB_STATUS_DROPPING: return "dropping"; + case TSDB_DB_STATUS_DROP_FROM_SDB: return "drop_from_sdb"; + default: return "undefined"; + } +} + const char* taosGetVnodeStatusStr(int vnodeStatus) { switch (vnodeStatus) { case TSDB_VN_STATUS_OFFLINE: return "offline"; -- GitLab