From 8296199bb7e89c2ae751cf6dbc8f5288b7bfef2a Mon Sep 17 00:00:00 2001 From: "Ruben S. Montero" Date: Fri, 12 Apr 2013 21:15:36 +0200 Subject: [PATCH] bug updates name index when an object has been deleted (cherry picked from commit 4c298351d7d7d3b99cb44d3b110ef9f020444e16) --- src/pool/PoolSQL.cc | 26 +++++++++++++------------- 1 file changed, 13 insertions(+), 13 deletions(-) diff --git a/src/pool/PoolSQL.cc b/src/pool/PoolSQL.cc index 530d9bfd29..a971f836de 100644 --- a/src/pool/PoolSQL.cc +++ b/src/pool/PoolSQL.cc @@ -306,19 +306,6 @@ PoolObjectSQL * PoolSQL::get(const string& name, int ouid, bool olock) } else { - objectsql = create(); - - rc = objectsql->select(db,name,ouid); - - if ( rc != 0 ) - { - delete objectsql; - - unlock(); - - return 0; - } - if ( index != name_pool.end() && index->second->isValid() == false ) { index->second->lock(); @@ -332,6 +319,19 @@ PoolObjectSQL * PoolSQL::get(const string& name, int ouid, bool olock) delete tmp_ptr; } + objectsql = create(); + + rc = objectsql->select(db,name,ouid); + + if ( rc != 0 ) + { + delete objectsql; + + unlock(); + + return 0; + } + string okey = key(objectsql->name,objectsql->uid); pool.insert(make_pair(objectsql->oid, objectsql));