diff --git a/src/pool/PoolSQLCache.cc b/src/pool/PoolSQLCache.cc index a91d986bc3..5520fc095a 100644 --- a/src/pool/PoolSQLCache.cc +++ b/src/pool/PoolSQLCache.cc @@ -41,18 +41,12 @@ void PoolSQLCache::lock_line(int oid) { cl = new CacheLine(0); - cl->active++; - cache.insert(make_pair(oid, cl)); - - unlock(); - - cl->lock(); - - return; } - - cl = it->second; + else + { + cl = it->second; + } cl->active++; @@ -65,9 +59,9 @@ void PoolSQLCache::lock_line(int oid) cl->object->lock(); delete cl->object; - } - cl->object = 0; + cl->object = 0; + } return; }