diff options
author | unknown <tomas@poseidon.ndb.mysql.com> | 2006-05-15 20:24:50 +0200 |
---|---|---|
committer | unknown <tomas@poseidon.ndb.mysql.com> | 2006-05-15 20:24:50 +0200 |
commit | 32b3a9fed23342cc28b57170c69e5e6892b87d1a (patch) | |
tree | 5dfb4ba7d988a01b35aeaa3d2b701a3968437c5e | |
parent | 811fcf8626d9a9a9abbdac7d74f5fdcbb8a36100 (diff) | |
download | mariadb-git-32b3a9fed23342cc28b57170c69e5e6892b87d1a.tar.gz |
ndb: dict cache reference not released as it should
storage/ndb/src/ndbapi/DictCache.cpp:
changed dbug printout
-rw-r--r-- | storage/ndb/src/ndbapi/DictCache.cpp | 4 | ||||
-rw-r--r-- | storage/ndb/src/ndbapi/NdbDictionaryImpl.cpp | 7 |
2 files changed, 7 insertions, 4 deletions
diff --git a/storage/ndb/src/ndbapi/DictCache.cpp b/storage/ndb/src/ndbapi/DictCache.cpp index 43913d6c5be..47e48974449 100644 --- a/storage/ndb/src/ndbapi/DictCache.cpp +++ b/storage/ndb/src/ndbapi/DictCache.cpp @@ -134,8 +134,8 @@ void GlobalDictCache::printCache() const unsigned sz = vers->size(); for(unsigned i = 0; i<sz ; i++){ TableVersion tv= (*vers)[i]; - DBUG_PRINT(" ", ("vers[%d]: ver: %d, refCount: %d, status: %d", - sz, tv.m_version, tv.m_refCount, tv.m_status)); + DBUG_PRINT(" ", ("impl: %p vers[%d]: ver: %d, refCount: %d, status: %d", + tv.m_impl, i, tv.m_version, tv.m_refCount, tv.m_status)); if(tv.m_impl != 0) { DBUG_PRINT(" ", ("m_impl: internalname: %s", diff --git a/storage/ndb/src/ndbapi/NdbDictionaryImpl.cpp b/storage/ndb/src/ndbapi/NdbDictionaryImpl.cpp index 104d2ffc8bb..5a842d1ecc5 100644 --- a/storage/ndb/src/ndbapi/NdbDictionaryImpl.cpp +++ b/storage/ndb/src/ndbapi/NdbDictionaryImpl.cpp @@ -3725,9 +3725,12 @@ NdbDictionaryImpl::getEvent(const char * eventName, NdbTableImpl* tab) DBUG_RETURN(NULL); } } + ev->setTable(tab); + releaseTableGlobal(*tab, 0); } - - ev->setTable(tab); + else + ev->setTable(tab); + tab = 0; ev->setTable(m_ndb.externalizeTableName(ev->getTableName())); // get the columns from the attrListBitmask |