fix memory leak
This commit is contained in:
parent
4a531f4bf5
commit
c32a340055
|
@ -62,6 +62,16 @@ int tsdbMemTableCreate(STsdb *pTsdb, STsdbMemTable **ppMemTable) {
|
||||||
void tsdbMemTableDestroy(STsdb *pTsdb, STsdbMemTable *pMemTable) {
|
void tsdbMemTableDestroy(STsdb *pTsdb, STsdbMemTable *pMemTable) {
|
||||||
if (pMemTable) {
|
if (pMemTable) {
|
||||||
taosHashCleanup(pMemTable->pHashIdx);
|
taosHashCleanup(pMemTable->pHashIdx);
|
||||||
|
SSkipListIterator *pIter = tSkipListCreateIter(pMemTable->pSlIdx);
|
||||||
|
SSkipListNode *pNode = NULL;
|
||||||
|
STbData *pTbData = NULL;
|
||||||
|
for (;;) {
|
||||||
|
if (!tSkipListIterNext(pIter)) break;
|
||||||
|
pNode = tSkipListIterGet(pIter);
|
||||||
|
pTbData = (STbData *)pNode->pData;
|
||||||
|
tsdbFreeTbData(pTbData);
|
||||||
|
}
|
||||||
|
tSkipListDestroyIter(pIter);
|
||||||
tSkipListDestroy(pMemTable->pSlIdx);
|
tSkipListDestroy(pMemTable->pSlIdx);
|
||||||
taosMemoryFree(pMemTable);
|
taosMemoryFree(pMemTable);
|
||||||
}
|
}
|
||||||
|
|
|
@ -114,6 +114,7 @@ int tdbBtreeOpen(int keyLen, int valLen, SPager *pPager, tdb_cmpr_fn_t kcmpr, SB
|
||||||
|
|
||||||
int tdbBtreeClose(SBTree *pBt) {
|
int tdbBtreeClose(SBTree *pBt) {
|
||||||
if (pBt) {
|
if (pBt) {
|
||||||
|
tdbFree(pBt->pBuf);
|
||||||
tdbOsFree(pBt);
|
tdbOsFree(pBt);
|
||||||
}
|
}
|
||||||
return 0;
|
return 0;
|
||||||
|
|
Loading…
Reference in New Issue