[TD-374] optimize module management

This commit is contained in:
Shengliang Guan 2020-05-20 09:08:18 +00:00
parent 574147a83a
commit e635598794
2 changed files with 16 additions and 14 deletions

View File

@ -114,18 +114,20 @@ void dnodeStartModules() {
} }
void dnodeProcessModuleStatus(uint32_t moduleStatus) { void dnodeProcessModuleStatus(uint32_t moduleStatus) {
bool enableMgmtModule = moduleStatus & (1 << TSDB_MOD_MGMT); for (int32_t module = 0; module < TSDB_MOD_MAX; ++module) {
if (!tsModule[TSDB_MOD_MGMT].enable && enableMgmtModule) { bool enableModule = moduleStatus & (1 << module);
dPrint("module status is received, start mgmt module", tsModuleStatus, moduleStatus); if (!tsModule[module].enable && enableModule) {
tsModule[TSDB_MOD_MGMT].enable = true; dPrint("module status:%u is received, start %s module", tsModuleStatus, tsModule[module].name);
dnodeSetModuleStatus(TSDB_MOD_MGMT); tsModule[module].enable = true;
(*tsModule[TSDB_MOD_MGMT].startFp)(); dnodeSetModuleStatus(module);
} (*tsModule[module].startFp)();
}
if (tsModule[TSDB_MOD_MGMT].enable && !enableMgmtModule) { if (tsModule[module].enable && !enableModule) {
dPrint("module status is received, stop mgmt module", tsModuleStatus, moduleStatus); dPrint("module status:%u is received, stop %s module", tsModuleStatus, tsModule[module].name);
tsModule[TSDB_MOD_MGMT].enable = false; tsModule[module].enable = false;
dnodeUnSetModuleStatus(TSDB_MOD_MGMT); dnodeUnSetModuleStatus(module);
(*tsModule[TSDB_MOD_MGMT].stopFp)(); (*tsModule[module].stopFp)();
}
} }
} }

View File

@ -442,8 +442,8 @@ static int32_t sdbInsertHash(SSdbTable *pTable, SSdbOper *pOper) {
pthread_mutex_unlock(&pTable->mutex); pthread_mutex_unlock(&pTable->mutex);
sdbTrace("table:%s, insert record:%s to hash, numOfRows:%d version:%" PRIu64, pTable->tableName, sdbTrace("table:%s, insert record:%s to hash, rowSize:%d vnumOfRows:%d version:%" PRIu64, pTable->tableName,
sdbGetKeyStrFromObj(pTable, pOper->pObj), pTable->numOfRows, sdbGetVersion()); sdbGetKeyStrFromObj(pTable, pOper->pObj), pOper->rowSize, pTable->numOfRows, sdbGetVersion());
(*pTable->insertFp)(pOper); (*pTable->insertFp)(pOper);
return TSDB_CODE_SUCCESS; return TSDB_CODE_SUCCESS;