diff --git a/src/mnode/src/mgmtDb.c b/src/mnode/src/mgmtDb.c index 1924e85f7b..6a53b0d001 100644 --- a/src/mnode/src/mgmtDb.c +++ b/src/mnode/src/mgmtDb.c @@ -645,22 +645,18 @@ static int32_t mgmtRetrieveDbs(SShowObj *pShow, char *data, int32_t rows, void * void mgmtAddSuperTableIntoDb(SDbObj *pDb) { atomic_add_fetch_32(&pDb->numOfSuperTables, 1); - mgmtIncDbRef(pDb); } void mgmtRemoveSuperTableFromDb(SDbObj *pDb) { atomic_add_fetch_32(&pDb->numOfSuperTables, -1); - mgmtDecDbRef(pDb); } void mgmtAddTableIntoDb(SDbObj *pDb) { atomic_add_fetch_32(&pDb->numOfTables, 1); - mgmtIncDbRef(pDb); } void mgmtRemoveTableFromDb(SDbObj *pDb) { atomic_add_fetch_32(&pDb->numOfTables, -1); - mgmtDecDbRef(pDb); } static int32_t mgmtSetDbDirty(SDbObj *pDb) { diff --git a/src/mnode/src/mgmtTable.c b/src/mnode/src/mgmtTable.c index 492ceeff05..0a6c0109f8 100644 --- a/src/mnode/src/mgmtTable.c +++ b/src/mnode/src/mgmtTable.c @@ -987,7 +987,6 @@ int32_t mgmtRetrieveShowSuperTables(SShowObj *pShow, char *data, int32_t rows, v char stableName[TSDB_TABLE_NAME_LEN] = {0}; while (numOfRows < rows) { - mgmtDecTableRef(pTable); pShow->pNode = sdbFetchRow(tsSuperTableSdb, pShow->pNode, (void **) &pTable); if (pTable == NULL) break; if (strncmp(pTable->info.tableId, prefix, prefixLen)) { @@ -1024,6 +1023,8 @@ int32_t mgmtRetrieveShowSuperTables(SShowObj *pShow, char *data, int32_t rows, v cols++; numOfRows++; + mgmtDecTableRef(pTable); + } pShow->numOfReads += numOfRows; @@ -1887,7 +1888,6 @@ static int32_t mgmtRetrieveShowTables(SShowObj *pShow, char *data, int32_t rows, int32_t prefixLen = strlen(prefix); while (numOfRows < rows) { - mgmtDecTableRef(pTable); pShow->pNode = sdbFetchRow(tsChildTableSdb, pShow->pNode, (void **) &pTable); if (pTable == NULL) break; @@ -1933,6 +1933,7 @@ static int32_t mgmtRetrieveShowTables(SShowObj *pShow, char *data, int32_t rows, cols++; numOfRows++; + mgmtDecTableRef(pTable); } pShow->numOfReads += numOfRows; diff --git a/src/mnode/src/mgmtVgroup.c b/src/mnode/src/mgmtVgroup.c index ad12db8b11..b16b82cb4a 100644 --- a/src/mnode/src/mgmtVgroup.c +++ b/src/mnode/src/mgmtVgroup.c @@ -101,6 +101,7 @@ static int32_t mgmtVgroupActionInsert(SSdbOperDesc *pOper) { } mgmtAddVgroupIntoDb(pVgroup); + mgmtIncDbRef(pVgroup->pDb); return TSDB_CODE_SUCCESS; } @@ -455,7 +456,6 @@ void mgmtAddTableIntoVgroup(SVgObj *pVgroup, SChildTableObj *pTable) { pVgroup->numOfTables++; } - mgmtIncVgroupRef(pVgroup); if (pVgroup->numOfTables >= pVgroup->pDb->cfg.maxSessions) mgmtAddVgroupIntoDbTail(pVgroup); } @@ -467,7 +467,6 @@ void mgmtRemoveTableFromVgroup(SVgObj *pVgroup, SChildTableObj *pTable) { pVgroup->numOfTables--; } - mgmtDecVgroupRef(pVgroup); if (pVgroup->numOfTables >= pVgroup->pDb->cfg.maxSessions) mgmtAddVgroupIntoDbTail(pVgroup); }