From b68a24b31ca06fe253ad550dd2b67bcadc8ad595 Mon Sep 17 00:00:00 2001 From: cvetan Date: Mon, 26 Oct 2009 03:37:57 +0000 Subject: [PATCH] Bug #57513: Speed-up of CDB query. --- STEER/AliCDBGrid.cxx | 26 +++++++++++++++++--------- 1 file changed, 17 insertions(+), 9 deletions(-) diff --git a/STEER/AliCDBGrid.cxx b/STEER/AliCDBGrid.cxx index c91ca2abc9e..f62e17fa53c 100644 --- a/STEER/AliCDBGrid.cxx +++ b/STEER/AliCDBGrid.cxx @@ -870,15 +870,23 @@ void AliCDBGrid::QueryValidFiles() return; } - AliCDBId validFileId; - for(int i=0; iGetEntries(); i++){ - TString filename = res->GetKey(i, "lfn"); - if(filename == "") continue; - AliDebug(2,Form("Found valid file: %s", filename.Data())); - Bool_t result = FilenameToId(filename, validFileId); - if(result) { - fValidFileIds.AddLast(validFileId.Clone()); - } + TIter next(res); + TMap *map; + while ((map = (TMap*)next())) { + TObjString *entry; + if ((entry = (TObjString *) ((TMap *)map)->GetValue("lfn"))) { + TString& filename = entry->String(); + if(filename.IsNull()) continue; + AliDebug(2,Form("Found valid file: %s", filename.Data())); + AliCDBId *validFileId = new AliCDBId; + Bool_t result = FilenameToId(filename, *validFileId); + if(result) { + fValidFileIds.AddLast(validFileId); + } + else { + delete validFileId; + } + } } delete res; -- 2.39.3