Skip to content
Snippets Groups Projects
Commit 3da69c10 authored by Johannes Junggeburth's avatar Johannes Junggeburth :dog2: Committed by Vakhtang Tsulaia
Browse files

GeoModel SQLite - Fix dictionary initialization with MuonGeoModelR4

Add RdbAccessSvcCfg

add rdb accessSvc config

Do not retrieve IdDictionary during initialize... Fix crash if dicitionaries don't exist

Apply 1 suggestion(s) to 1 file(s)

Revert GeomodelR4
parent c61daa03
No related branches found
No related tags found
No related merge requests found
Showing
with 166 additions and 197 deletions
......@@ -32,3 +32,6 @@ atlas_add_executable( geomdb2oracle
# Install files from the package:
atlas_install_joboptions( share/*.py )
# Install files from the package:
atlas_install_python_modules( python/*.py POST_BUILD_CMD ${ATLAS_FLAKE8} )
# Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
from AthenaConfiguration.ComponentAccumulator import ComponentAccumulator
from AthenaConfiguration.ComponentFactory import CompFactory
def RDBAccessSvcCfg(flags, name="RDBAccessSvc", **kwargs):
result = ComponentAccumulator()
result.addService(CompFactory.RDBAccessSvc(name,**kwargs), primary=True)
return result
\ No newline at end of file
......@@ -6,6 +6,13 @@ from AthenaConfiguration.Enums import ProductionStep
from AthenaCommon import Logging
def GeoDbTagSvcCfg(flags, name = "GeoDbTagSvc", **kwargs):
result =ComponentAccumulator()
from RDBAccessSvc.RDBAccessSvcConfig import RDBAccessSvcCfg
result.merge(RDBAccessSvcCfg(flags))
result.addService(CompFactory.GeoDbTagSvc(name, **kwargs))
return result
def GeoModelCfg(flags):
if not flags.GeoModel.AtlasVersion:
raise ValueError('No geometry tag specified')
......@@ -18,9 +25,14 @@ def GeoModelCfg(flags):
result=ComponentAccumulator()
from RDBAccessSvc.RDBAccessSvcConfig import RDBAccessSvcCfg
result.merge(RDBAccessSvcCfg(flags))
#Get DetDescrCnvSvc (for identifier dictionaries (identifier helpers)
from DetDescrCnvSvc.DetDescrCnvSvcConfig import DetDescrCnvSvcCfg
result.merge(GeoDbTagSvcCfg(flags))
result.merge(DetDescrCnvSvcCfg(flags))
#TagInfoMgr used by GeoModelSvc but no ServiceHandle. Relies on string-name
from EventInfoMgt.TagInfoMgrConfig import TagInfoMgrCfg
......
......@@ -6,7 +6,6 @@
#include "RDBMaterialManager.h"
#include "GaudiKernel/ServiceHandle.h"
#include "RDBAccessSvc/IRDBAccessSvc.h"
#include "RDBAccessSvc/IRDBRecordset.h"
#include "RDBAccessSvc/IRDBRecord.h"
......@@ -31,67 +30,61 @@ StatusCode GeoDbTagSvc::finalize()
StatusCode GeoDbTagSvc::setupTags()
{
ATH_MSG_DEBUG("setupTags()");
ATH_CHECK(m_rdbAccesSvc.retrieve());
// Check if the Atlas version has already been set
if(m_AtlasVersion.empty()) {
ATH_MSG_FATAL("ATLAS tag not set!");
return StatusCode::FAILURE;
}
// Get RDBAccessSvc
ServiceHandle<IRDBAccessSvc> rdbAccessSvc("RDBAccessSvc", name());
if(rdbAccessSvc.retrieve().isFailure()) {
ATH_MSG_FATAL("Failed to retrieve RDBAccessSvc");
return StatusCode::FAILURE;
}
// Get subsystem tags
m_InDetVersion = (m_InDetVersionOverride.empty()
? rdbAccessSvc->getChildTag("InnerDetector",m_AtlasVersion,"ATLAS")
: m_InDetVersionOverride);
?m_rdbAccesSvc->getChildTag("InnerDetector",m_AtlasVersion,"ATLAS")
: m_InDetVersionOverride);
m_PixelVersion = (m_PixelVersionOverride.empty()
? rdbAccessSvc->getChildTag("Pixel",m_InDetVersion,"InnerDetector")
: m_PixelVersionOverride);
?m_rdbAccesSvc->getChildTag("Pixel",m_InDetVersion,"InnerDetector")
: m_PixelVersionOverride);
m_SCT_Version = (m_SCT_VersionOverride.empty()
? rdbAccessSvc->getChildTag("SCT",m_InDetVersion,"InnerDetector")
: m_SCT_VersionOverride);
?m_rdbAccesSvc->getChildTag("SCT",m_InDetVersion,"InnerDetector")
: m_SCT_VersionOverride);
m_TRT_Version = (m_TRT_VersionOverride.empty()
? rdbAccessSvc->getChildTag("TRT",m_InDetVersion,"InnerDetector")
: m_TRT_VersionOverride);
?m_rdbAccesSvc->getChildTag("TRT",m_InDetVersion,"InnerDetector")
: m_TRT_VersionOverride);
m_LAr_Version = (m_LAr_VersionOverride.empty()
? rdbAccessSvc->getChildTag("LAr",m_AtlasVersion,"ATLAS")
: m_LAr_VersionOverride);
?m_rdbAccesSvc->getChildTag("LAr",m_AtlasVersion,"ATLAS")
: m_LAr_VersionOverride);
m_TileVersion = (m_TileVersionOverride.empty()
? rdbAccessSvc->getChildTag("TileCal",m_AtlasVersion,"ATLAS")
: m_TileVersionOverride);
?m_rdbAccesSvc->getChildTag("TileCal",m_AtlasVersion,"ATLAS")
: m_TileVersionOverride);
m_MuonVersion = (m_MuonVersionOverride.empty()
? rdbAccessSvc->getChildTag("MuonSpectrometer",m_AtlasVersion,"ATLAS")
: m_MuonVersionOverride);
?m_rdbAccesSvc->getChildTag("MuonSpectrometer",m_AtlasVersion,"ATLAS")
: m_MuonVersionOverride);
m_CaloVersion = (m_CaloVersionOverride.empty()
? rdbAccessSvc->getChildTag("Calorimeter",m_AtlasVersion,"ATLAS")
: m_CaloVersionOverride);
?m_rdbAccesSvc->getChildTag("Calorimeter",m_AtlasVersion,"ATLAS")
: m_CaloVersionOverride);
m_MagFieldVersion = (m_MagFieldVersionOverride.empty()
? rdbAccessSvc->getChildTag("MagneticField",m_AtlasVersion,"ATLAS")
: m_MagFieldVersionOverride);
?m_rdbAccesSvc->getChildTag("MagneticField",m_AtlasVersion,"ATLAS")
: m_MagFieldVersionOverride);
m_CavernInfraVersion = (m_CavernInfraVersionOverride.empty()
? rdbAccessSvc->getChildTag("CavernInfra",m_AtlasVersion,"ATLAS")
: m_CavernInfraVersionOverride);
?m_rdbAccesSvc->getChildTag("CavernInfra",m_AtlasVersion,"ATLAS")
: m_CavernInfraVersionOverride);
m_ForwardDetectorsVersion = (m_ForwardDetectorsVersionOverride.empty()
? rdbAccessSvc->getChildTag("ForwardDetectors",m_AtlasVersion,"ATLAS")
: m_ForwardDetectorsVersionOverride);
?m_rdbAccesSvc->getChildTag("ForwardDetectors",m_AtlasVersion,"ATLAS")
: m_ForwardDetectorsVersionOverride);
// Retrieve geometry config information (RUN1, RUN2, etc...)
IRDBRecordset_ptr atlasCommonRec = rdbAccessSvc->getRecordsetPtr("AtlasCommon",m_AtlasVersion,"ATLAS");
IRDBRecordset_ptr atlasCommonRec =m_rdbAccesSvc->getRecordsetPtr("AtlasCommon",m_AtlasVersion,"ATLAS");
if(atlasCommonRec->size()==0) {
m_geoConfig = GeoModel::GEO_RUN1;
}
......
/*
Copyright (C) 2002-2022 CERN for the benefit of the ATLAS collaboration
Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
*/
#ifndef GEOMODELSVC_GEODBTAGSVC_H
#define GEOMODELSVC_GEODBTAGSVC_H
#include "GeoModelInterfaces/IGeoDbTagSvc.h"
#include "RDBAccessSvc/IRDBAccessSvc.h"
#include "AthenaBaseComps/AthService.h"
template <class TYPE> class SvcFactory;
......@@ -22,7 +23,7 @@ class GeoDbTagSvc : public extends<AthService, IGeoDbTagSvc>
virtual ~GeoDbTagSvc() = default;
protected:
ServiceHandle<IRDBAccessSvc> m_rdbAccesSvc{this, "RDBAccessSvc", "RDBAccessSvc/RDBAccessSvc"};
void setAtlasVersion(const std::string& tag) { m_AtlasVersion=tag; }
void setInDetVersionOverride(const std::string& tag) { m_InDetVersionOverride=tag; }
void setPixelVersionOverride(const std::string& tag) { m_PixelVersionOverride=tag; }
......@@ -102,7 +103,7 @@ class GeoDbTagSvc : public extends<AthService, IGeoDbTagSvc>
GeoModel::GeoConfig m_geoConfig;
std::string m_paramSvcName;
std::string m_paramSvcName{"RDBAccessSvc"};
GeoModelIO::ReadGeoModel* m_sqliteReader{nullptr};
};
......
......@@ -170,8 +170,7 @@ StatusCode GeoModelSvc::geoInit()
m_sqliteDbManager = std::make_unique<GMDBManager>(sqliteDbPath);
if(m_sqliteDbManager->checkIsDBOpen()) {
ATH_MSG_INFO("Successfully opened SQLite DB file " << sqliteDbPath << " for reading in persistent GeoModel tree");
}
else {
} else {
ATH_MSG_FATAL("Failed to open SQLite database " << sqliteDbPath << " for reading in persistent GeoModel tree");
return StatusCode::FAILURE;
}
......@@ -190,8 +189,7 @@ StatusCode GeoModelSvc::geoInit()
if(!sqliteReadSvc->connect(sqliteDbPath)) {
ATH_MSG_FATAL("Failed to open SQLite database file " << sqliteDbPath << " for reading geometry parameters");
return StatusCode::FAILURE;
}
else {
} else {
ATH_MSG_INFO("Successfully opened SQLite DB file: " << sqliteDbPath << " for reading Det Descr parameters");
}
dbTagSvc->setParamSvcName("SqliteReadSvc");
......@@ -308,10 +306,7 @@ StatusCode GeoModelSvc::geoInit()
mem = GeoPerfUtils::getMem();
cpu = GeoPerfUtils::getCpu();
if(theTool->create().isFailure()) {
ATH_MSG_ERROR("Unable to create detector " << theTool->name());
return StatusCode::FAILURE;
}
ATH_CHECK(theTool->create());
if(m_statisticsToFile) {
*geoModelStats << theTool->name() << "\t SZ= "
......
......@@ -16,10 +16,8 @@
#include "AthenaKernel/StorableConversions.h"
#include "DetDescrCnvSvc/DetDescrAddress.h"
#include "DetDescrCnvSvc/DetDescrConverter.h"
#include "GeoModelInterfaces/IGeoDbTagSvc.h"
#include "GeoModelUtilities/DecodeVersionKey.h"
#include "IdDictDetDescr/IdDictManager.h"
#include "RDBAccessSvc/IRDBAccessSvc.h"
#include "RDBAccessSvc/IRDBRecord.h"
#include "RDBAccessSvc/IRDBRecordset.h"
......@@ -43,14 +41,10 @@ StatusCode IdDictDetDescrCnv::initialize() {
m_inDetIDTag = "EMPTY";
return StatusCode::SUCCESS;
}
//--------------------------------------------------------------------
StatusCode IdDictDetDescrCnv::finalize() {
ATH_MSG_INFO("in finalize");
return StatusCode::SUCCESS;
}
//--------------------------------------------------------------------
StatusCode IdDictDetDescrCnv::createObj(IOpaqueAddress *pAddr,
......@@ -154,14 +148,6 @@ StatusCode IdDictDetDescrCnv::parseXMLDescription() {
// if properties from JobOptions should be used.
ATH_CHECK(loadProperty("useGeomDB_InDet", m_useGeomDB_InDet));
if (m_idDictFromRDB && !serviceLocator()->existsService("GeoDbTagSvc")) {
ATH_MSG_WARNING(
"GeoDbTagSvc not part of this job. Falling back to files name from "
"job options");
m_idDictFromRDB = false;
m_doNeighbours = false;
}
if (m_idDictFromRDB)
ATH_MSG_DEBUG("Dictonary file name from DD database");
else
......@@ -315,13 +301,10 @@ StatusCode IdDictDetDescrCnv::getFileNamesFromProperties() {
// Calo ids
ATH_CHECK(loadProperty("CaloIDFileName", m_caloIDFileName));
// Calo neighbor files
ATH_CHECK(
loadProperty("FullAtlasNeighborsFileName", m_fullAtlasNeighborsName));
ATH_CHECK(loadProperty("FullAtlasNeighborsFileName", m_fullAtlasNeighborsName));
ATH_CHECK(loadProperty("FCAL2DNeighborsFileName", m_fcal2dNeighborsName));
ATH_CHECK(
loadProperty("FCAL3DNeighborsNextFileName", m_fcal3dNeighborsNextName));
ATH_CHECK(
loadProperty("FCAL3DNeighborsPrevFileName", m_fcal3dNeighborsPrevName));
ATH_CHECK(loadProperty("FCAL3DNeighborsNextFileName", m_fcal3dNeighborsNextName));
ATH_CHECK(loadProperty("FCAL3DNeighborsPrevFileName", m_fcal3dNeighborsPrevName));
ATH_CHECK(loadProperty("TileNeighborsFileName", m_tileNeighborsName));
// Muon ids
......@@ -334,13 +317,10 @@ StatusCode IdDictDetDescrCnv::getFileNamesFromProperties() {
//--------------------------------------------------------------------
StatusCode IdDictDetDescrCnv::getFileNamesFromTags() {
// Fetch file names and tags from the RDB
IGeoDbTagSvc *geoDbTagSvc{nullptr};
ATH_CHECK(service("GeoDbTagSvc", geoDbTagSvc));
ATH_MSG_DEBUG("Accessed GeoDbTagSvc.");
IRDBAccessSvc *rdbAccessSvc{nullptr};
ATH_CHECK(service(geoDbTagSvc->getParamSvcName(), rdbAccessSvc));
ATH_MSG_DEBUG("Accessed " << geoDbTagSvc->getParamSvcName());
ATH_CHECK(m_geoDbTagSvc.retrieve());
ATH_MSG_DEBUG("Accessed " << m_geoDbTagSvc->getParamSvcName());
m_rdbAccessSvc.setName(m_geoDbTagSvc->getParamSvcName());
ATH_CHECK(m_rdbAccessSvc.retrieve());
auto assignTagAndName = [this](const IRDBRecordset_ptr &idDictSet,
std::string &fileName,
......@@ -360,41 +340,39 @@ StatusCode IdDictDetDescrCnv::getFileNamesFromTags() {
<< ", with internal tag: " << m_inDetIDTag
<< ", dictionary tag: " << dictTag);
} else
ATH_MSG_WARNING(
" no record set found for dictionary - using default "
"dictionary ");
} else {
ATH_MSG_WARNING(" no record set found for dictionary"<<idDictSet->nodeName()<< " - using default dictionary ");
}
};
// Function for reading ID dictionary as a BLOB from SQLite
// and writing it on the disk in the run directory
auto getEmbeddedDict = [this](const std::string& dictName
, IRDBAccessSvc* rdbAccessSvc
, std::string &fileName
, std::string &dictTag) -> bool
auto getEmbeddedDict = [this](const std::string& dictName,
std::string &fileName,
std::string &dictTag) -> bool
{
IRDBRecordset_ptr rec = rdbAccessSvc->getRecordsetPtr(dictName,"","");
ATH_MSG_DEBUG("Try to access "<<dictName);
IRDBRecordset_ptr rec = m_rdbAccessSvc->getRecordsetPtr(dictName,"","");
if(rec->size()>0) {
const IRDBRecord *dictRecord = (*rec)[0];
std::string dictString = dictRecord->getString("CONTENTS");
// write to the temporary file
std::string dictFileName = dictName+"-fromSQLite.xml";
std::ofstream dictFile;
dictFile.open(dictFileName);
dictFile << dictString;
dictFile.close();
fileName = dictFileName;
dictTag = std::string(); // This may change in the future if we also write dict tags into SQLite
ATH_MSG_DEBUG(dictName << " read from the SQLite database as a BLOB");
return true;
const IRDBRecord *dictRecord = (*rec)[0];
std::string dictString = dictRecord->getString("CONTENTS");
// write to the temporary file
std::string dictFileName = dictName+"-fromSQLite.xml";
std::ofstream dictFile;
dictFile.open(dictFileName);
dictFile << dictString;
dictFile.close();
fileName = dictFileName;
dictTag.clear(); // This may change in the future if we also write dict tags into SQLite
ATH_MSG_DEBUG(dictName << " read from the SQLite database as a BLOB");
return true;
}
return false;
};
bool useGeomDB = (geoDbTagSvc->getSqliteReader() == nullptr);
bool useGeomDB = (m_geoDbTagSvc->getSqliteReader() == nullptr);
std::string detTag{""}, detNode{""}, dictName{""};
DecodeVersionKey detectorKey("ATLAS");
......@@ -406,12 +384,12 @@ StatusCode IdDictDetDescrCnv::getFileNamesFromTags() {
if (m_useGeomDB_InDet) {
// Get Innner Detector xml and write to the temporary file
// InDetIdDict.xml
detectorKey = DecodeVersionKey(geoDbTagSvc, "InnerDetector");
detectorKey = DecodeVersionKey(m_geoDbTagSvc.get(), "InnerDetector");
ATH_MSG_DEBUG("From Version Tag: " << detectorKey.tag() << " at Node: "
<< detectorKey.node());
detTag = detectorKey.tag();
detNode = detectorKey.node();
idDictSet = rdbAccessSvc->getRecordsetPtr("DICTXDD", detTag, detNode);
idDictSet = m_rdbAccessSvc->getRecordsetPtr("DICTXDD", detTag, detNode);
// Size == 0 if not found
if (idDictSet->size()) {
......@@ -423,147 +401,125 @@ StatusCode IdDictDetDescrCnv::getFileNamesFromTags() {
blobFile.open("InDetIdDict.xml");
blobFile << InDetString << std::endl;
blobFile.close();
} else
ATH_MSG_WARNING(
" no record set found for InDetIdentifier - using default "
"dictionary ");
} else {
ATH_MSG_WARNING(" no record set found for InDetIdentifier - using default dictionary ");
}
} else {
// Attempt to read the embedded disctionary from SQLite
embeddedDict = !useGeomDB && getEmbeddedDict("IdDictInnerDetector",rdbAccessSvc,m_inDetIDFileName,m_inDetIdDictTag);
embeddedDict = !useGeomDB && getEmbeddedDict("IdDictInnerDetector",m_inDetIDFileName,m_inDetIdDictTag);
if(!embeddedDict) {
// Fall back on getting file names from the database
// Fall back on getting file names from the database
if (useGeomDB) {
detectorKey = DecodeVersionKey(geoDbTagSvc, "InnerDetector");
ATH_MSG_DEBUG("From Version Tag: " << detectorKey.tag()
<< " at Node: "
<< detectorKey.node());
detTag = detectorKey.tag();
detNode = detectorKey.node();
detectorKey = DecodeVersionKey(m_geoDbTagSvc.get(), "InnerDetector");
ATH_MSG_DEBUG("From Version Tag: " << detectorKey.tag() << " at Node: " << detectorKey.node());
detTag = detectorKey.tag();
detNode = detectorKey.node();
}
idDictSet = rdbAccessSvc->getRecordsetPtr("InDetIdentifier", detTag, detNode);
idDictSet = m_rdbAccessSvc->getRecordsetPtr("InDetIdentifier", detTag, detNode);
assignTagAndName(idDictSet, m_inDetIDFileName, m_inDetIdDictTag);
}
}
// Get LAr
// Attempt to read the embedded disctionary from SQLite
embeddedDict = !useGeomDB && getEmbeddedDict("IdDictLArCalorimeter",rdbAccessSvc,m_larIDFileName,m_larIdDictTag);
embeddedDict = !useGeomDB && getEmbeddedDict("IdDictLArCalorimeter",m_larIDFileName,m_larIdDictTag);
if(!embeddedDict) {
// Fall back on getting file names from the database
if (useGeomDB) {
detectorKey = DecodeVersionKey(geoDbTagSvc, "LAr");
ATH_MSG_DEBUG( "From Version Tag: " << detectorKey.tag()
<< " at Node: " << detectorKey.node() );
detTag = detectorKey.tag();
detNode = detectorKey.node();
}
idDictSet = rdbAccessSvc->getRecordsetPtr("LArIdentifier", detTag, detNode);
assignTagAndName(idDictSet, m_larIDFileName, m_larIdDictTag);
// Fall back on getting file names from the database
if (useGeomDB) {
detectorKey = DecodeVersionKey(m_geoDbTagSvc.get(), "LAr");
ATH_MSG_DEBUG( "From Version Tag: " << detectorKey.tag() << " at Node: " << detectorKey.node() );
detTag = detectorKey.tag();
detNode = detectorKey.node();
}
idDictSet = m_rdbAccessSvc->getRecordsetPtr("LArIdentifier", detTag, detNode);
assignTagAndName(idDictSet, m_larIDFileName, m_larIdDictTag);
}
// Get Tile
// Attempt to read the embedded disctionary from SQLite
embeddedDict = !useGeomDB && getEmbeddedDict("IdDictTileCalorimeter",rdbAccessSvc,m_tileIDFileName,m_tileIdDictTag);
embeddedDict = !useGeomDB && getEmbeddedDict("IdDictTileCalorimeter",m_tileIDFileName,m_tileIdDictTag);
if(!embeddedDict) {
// Fall back on getting file names from the database
if (useGeomDB) {
detectorKey = DecodeVersionKey(geoDbTagSvc, "TileCal");
ATH_MSG_DEBUG( "From Version Tag: " << detectorKey.tag()
<< " at Node: " << detectorKey.node() );
detTag = detectorKey.tag();
detNode = detectorKey.node();
}
idDictSet = rdbAccessSvc->getRecordsetPtr("TileIdentifier", detTag, detNode);
assignTagAndName(idDictSet, m_tileIDFileName, m_tileIdDictTag);
// Fall back on getting file names from the database
if (useGeomDB) {
detectorKey = DecodeVersionKey(m_geoDbTagSvc.get(), "TileCal");
ATH_MSG_DEBUG( "From Version Tag: " << detectorKey.tag() << " at Node: " << detectorKey.node() );
detTag = detectorKey.tag();
detNode = detectorKey.node();
}
idDictSet = m_rdbAccessSvc->getRecordsetPtr("TileIdentifier", detTag, detNode);
assignTagAndName(idDictSet, m_tileIDFileName, m_tileIdDictTag);
}
// Get Calo
// Attempt to read the embedded disctionary from SQLite
embeddedDict = !useGeomDB && getEmbeddedDict("IdDictCalorimeter",rdbAccessSvc,m_caloIDFileName,m_caloIdDictTag);
embeddedDict = !useGeomDB && getEmbeddedDict("IdDictCalorimeter",m_caloIDFileName,m_caloIdDictTag);
if(!embeddedDict) {
// Fall back on getting file names from the database
if (useGeomDB) {
detectorKey = DecodeVersionKey(geoDbTagSvc, "Calorimeter");
ATH_MSG_DEBUG( "From Version Tag: " << detectorKey.tag()
<< " at Node: " << detectorKey.node() );
detectorKey = DecodeVersionKey(m_geoDbTagSvc.get(), "Calorimeter");
ATH_MSG_DEBUG( "From Version Tag: " << detectorKey.tag()<< " at Node: " << detectorKey.node() );
detTag = detectorKey.tag();
detNode = detectorKey.node();
}
idDictSet = rdbAccessSvc->getRecordsetPtr("CaloIdentifier", detTag, detNode);
idDictSet = m_rdbAccessSvc->getRecordsetPtr("CaloIdentifier", detTag, detNode);
assignTagAndName(idDictSet, m_caloIDFileName, m_caloIdDictTag);
}
// Calo neighbor files:
IRDBRecordset_ptr caloNeighborTable =
rdbAccessSvc->getRecordsetPtr("CaloNeighborTable", detTag, detNode);
IRDBRecordset_ptr caloNeighborTable = m_rdbAccessSvc->getRecordsetPtr("CaloNeighborTable", detTag, detNode);
if (caloNeighborTable->size() == 0 && useGeomDB) {
caloNeighborTable = rdbAccessSvc->getRecordsetPtr(
"CaloNeighborTable", "CaloNeighborTable-00");
caloNeighborTable = m_rdbAccessSvc->getRecordsetPtr("CaloNeighborTable", "CaloNeighborTable-00");
}
// Size == 0 if not found
if (caloNeighborTable->size()) {
const IRDBRecord *neighborTable = (*caloNeighborTable)[0];
m_fullAtlasNeighborsName =
neighborTable->getString("FULLATLASNEIGHBORS");
m_fullAtlasNeighborsName = neighborTable->getString("FULLATLASNEIGHBORS");
m_fcal2dNeighborsName = neighborTable->getString("FCAL2DNEIGHBORS");
m_fcal3dNeighborsNextName =
neighborTable->getString("FCAL3DNEIGHBORSNEXT");
m_fcal3dNeighborsPrevName =
neighborTable->getString("FCAL3DNEIGHBORSPREV");
m_fcal3dNeighborsNextName = neighborTable->getString("FCAL3DNEIGHBORSNEXT");
m_fcal3dNeighborsPrevName = neighborTable->getString("FCAL3DNEIGHBORSPREV");
m_tileNeighborsName = neighborTable->getString("TILENEIGHBORS");
ATH_MSG_DEBUG(" using neighbor files: ");
ATH_MSG_DEBUG(
" FullAtlasNeighborsFileName: " << m_fullAtlasNeighborsName);
ATH_MSG_DEBUG(
" FCAL2DNeighborsFileName: " << m_fcal2dNeighborsName);
ATH_MSG_DEBUG(
" FCAL3DNeighborsNextFileName: " << m_fcal3dNeighborsNextName);
ATH_MSG_DEBUG(
" FCAL3DNeighborsPrevFileName: " << m_fcal3dNeighborsPrevName);
ATH_MSG_DEBUG(
" TileNeighborsFileName: " << m_tileNeighborsName);
} else {
ATH_MSG_ERROR(" no record set found neighbour file ");
return StatusCode::FAILURE;
ATH_MSG_DEBUG(" FullAtlasNeighborsFileName: " << m_fullAtlasNeighborsName);
ATH_MSG_DEBUG(" FCAL2DNeighborsFileName: " << m_fcal2dNeighborsName);
ATH_MSG_DEBUG(" FCAL3DNeighborsNextFileName: " << m_fcal3dNeighborsNextName);
ATH_MSG_DEBUG(" FCAL3DNeighborsPrevFileName: " << m_fcal3dNeighborsPrevName);
ATH_MSG_DEBUG(" TileNeighborsFileName: " << m_tileNeighborsName);
}
// Get Muon
// Attempt to read the embedded disctionary from SQLite
embeddedDict = !useGeomDB && getEmbeddedDict("IdDictMuonSpectrometer",rdbAccessSvc,m_muonIDFileName,m_muonIdDictTag);
embeddedDict = !useGeomDB && getEmbeddedDict("IdDictMuonSpectrometer", m_muonIDFileName, m_muonIdDictTag);
if(!embeddedDict) {
// Fall back on getting file names from the database
if (useGeomDB) {
detectorKey = DecodeVersionKey(geoDbTagSvc, "MuonSpectrometer");
ATH_MSG_DEBUG( "From Version Tag: " << detectorKey.tag()
<< " at Node: " << detectorKey.node() );
detectorKey = DecodeVersionKey(m_geoDbTagSvc.get(), "MuonSpectrometer");
ATH_MSG_DEBUG( "From Version Tag: " << detectorKey.tag()<< " at Node: " << detectorKey.node() );
detTag = detectorKey.tag();
detNode = detectorKey.node();
}
idDictSet = rdbAccessSvc->getRecordsetPtr("MuonIdentifier", detTag, detNode);
idDictSet = m_rdbAccessSvc->getRecordsetPtr("MuonIdentifier", detTag, detNode);
assignTagAndName(idDictSet, m_muonIDFileName, m_muonIdDictTag);
}
// Get Forward
// Attempt to read the embedded disctionary from SQLite
embeddedDict = !useGeomDB && getEmbeddedDict("IdDictForwardDetectors",rdbAccessSvc,m_forwardIDFileName,m_forwardIdDictTag);
embeddedDict = !useGeomDB && getEmbeddedDict("IdDictForwardDetectors",m_forwardIDFileName,m_forwardIdDictTag);
if(!embeddedDict) {
// Fall back on getting file names from the database
if (useGeomDB) {
detectorKey = DecodeVersionKey(geoDbTagSvc, "ForwardDetectors");
ATH_MSG_DEBUG( "From Version Tag: " << detectorKey.tag()
<< " at Node: " << detectorKey.node() );
detectorKey = DecodeVersionKey(m_geoDbTagSvc.get(), "ForwardDetectors");
ATH_MSG_DEBUG( "From Version Tag: " << detectorKey.tag() << " at Node: " << detectorKey.node() );
detTag = detectorKey.tag();
detNode = detectorKey.node();
}
idDictSet = rdbAccessSvc->getRecordsetPtr("ForDetIdentifier", detTag, detNode);
idDictSet = m_rdbAccessSvc->getRecordsetPtr("ForDetIdentifier", detTag, detNode);
// For older datasets use ForDetIdentifier-00 as fallback
if (idDictSet->size() == 0 && useGeomDB) {
idDictSet = rdbAccessSvc->getRecordsetPtr("ForDetIdentifier",
idDictSet = m_rdbAccessSvc->getRecordsetPtr("ForDetIdentifier",
"ForDetIdentifier-00");
ATH_MSG_DEBUG(" explicitly requesting ForDetIdentifier-00 tag for pre-forward "
"detector data ");
"detector data ");
}
// Size == 0 if not found
assignTagAndName(idDictSet, m_forwardIDFileName, m_forwardIdDictTag);
......@@ -649,16 +605,12 @@ StatusCode IdDictDetDescrCnv::registerInfoWithDicts() {
return StatusCode::SUCCESS;
};
ATH_CHECK(setDictPaths("ATLAS", m_atlasIDFileName, m_atlasIdDictTag));
ATH_CHECK(
setDictPaths("InnerDetector", m_inDetIDFileName, m_inDetIdDictTag));
ATH_CHECK(setDictPaths("InnerDetector", m_inDetIDFileName, m_inDetIdDictTag));
ATH_CHECK(setDictPaths("LArCalorimeter", m_larIDFileName, m_larIdDictTag));
ATH_CHECK(
setDictPaths("TileCalorimeter", m_tileIDFileName, m_tileIdDictTag));
ATH_CHECK(setDictPaths("TileCalorimeter", m_tileIDFileName, m_tileIdDictTag));
ATH_CHECK(setDictPaths("Calorimeter", m_caloIDFileName, m_caloIdDictTag));
ATH_CHECK(
setDictPaths("MuonSpectrometer", m_muonIDFileName, m_muonIdDictTag));
ATH_CHECK(setDictPaths("ForwardDetectors", m_forwardIDFileName,
m_forwardIdDictTag));
ATH_CHECK(setDictPaths("MuonSpectrometer", m_muonIDFileName, m_muonIdDictTag));
ATH_CHECK(setDictPaths("ForwardDetectors", m_forwardIDFileName, m_forwardIdDictTag));
auto addMetaData = [&mgr, this](const std::string &key,
const std::string &value) {
......
/*
Copyright (C) 2002-2023 CERN for the benefit of the ATLAS collaboration
Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
*/
#ifndef IDDICTDETDESCRCNV_IDDICTDETDESCRCNV_H
......@@ -21,7 +21,10 @@
#include "AthenaBaseComps/AthMessaging.h"
#include "DetDescrCnvSvc/DetDescrConverter.h"
#include "RDBAccessSvc/IRDBAccessSvc.h"
#include "IdDictParser/IdDictParser.h"
#include "GaudiKernel/ServiceHandle.h"
#include "GeoModelInterfaces/IGeoDbTagSvc.h"
//<<<<<< PUBLIC TYPES >>>>>>
class IdDictManager;
......@@ -53,6 +56,10 @@ class IdDictDetDescrCnv : public DetDescrConverter, public AthMessaging {
IdDictDetDescrCnv(ISvcLocator *svcloc);
private:
ServiceHandle<IGeoDbTagSvc> m_geoDbTagSvc{"GeoDbTagSvc/GeoDbTagSvc", "IdDictDetDescrCnv"};
ServiceHandle<IRDBAccessSvc> m_rdbAccessSvc{"RDBAccessSvc/RDBAccessSvc", "IdDictDetDescrCnv"};
/// Propxy to the DetDescrCnvSvc
const IProperty *m_detDescrProxy{nullptr};
......
......@@ -161,10 +161,6 @@ def setupGeoR4TestCfg(args):
return flags, cfg
def executeTest(cfg, num_events = 1):
DetDescCnvSvc = cfg.getService("DetDescrCnvSvc")
DetDescCnvSvc.IdDictFromRDB = False
DetDescCnvSvc.MuonIDFileName="IdDictParser/IdDictMuonSpectrometer_R.10.00.xml"
DetDescCnvSvc.MuonIDFileName="IdDictParser/IdDictMuonSpectrometer_R.09.03.xml"
cfg.printConfig(withDetails=True, summariseProps=True)
if not cfg.run(num_events).isSuccess(): exit(1)
......
......@@ -24,7 +24,7 @@ Py:ComponentAccumulator INFO Condition Algorithms
Py:ComponentAccumulator INFO \__ CondInputLoader (cond alg)
Py:ComponentAccumulator INFO \__ TileHid2RESrcIDCondAlg (cond alg)
Py:ComponentAccumulator INFO Services
Py:ComponentAccumulator INFO ['ClassIDSvc', 'AlgContextSvc', 'AuditorSvc', 'StoreGateSvc', 'DetectorStore', 'HistoryStore', 'ConditionStore', 'MessageSvc', 'CoreDumpSvc', 'ExceptionSvc', 'AthenaEventLoopMgr', 'DetDescrCnvSvc', 'EventPersistencySvc', 'TagInfoMgr', 'GeoModelSvc', 'TileCablingSvc', 'ByteStreamCnvSvc', 'ByteStreamInputSvc', 'EventSelector', 'ROBDataProviderSvc', 'ByteStreamAddressProviderSvc', 'MetaDataStore', 'InputMetaDataStore', 'MetaDataSvc', 'ProxyProviderSvc', 'IOVDbSvc', 'PoolSvc', 'AthenaPoolCnvSvc', 'CondSvc', 'DBReplicaSvc', 'Athena::DelayedConditionsCleanerSvc', 'Athena::ConditionsCleanerSvc']
Py:ComponentAccumulator INFO ['ClassIDSvc', 'AlgContextSvc', 'AuditorSvc', 'StoreGateSvc', 'DetectorStore', 'HistoryStore', 'ConditionStore', 'MessageSvc', 'CoreDumpSvc', 'ExceptionSvc', 'AthenaEventLoopMgr', 'RDBAccessSvc', 'GeoDbTagSvc', 'DetDescrCnvSvc', 'EventPersistencySvc', 'TagInfoMgr', 'GeoModelSvc', 'TileCablingSvc', 'ByteStreamCnvSvc', 'ByteStreamInputSvc', 'EventSelector', 'ROBDataProviderSvc', 'ByteStreamAddressProviderSvc', 'MetaDataStore', 'InputMetaDataStore', 'MetaDataSvc', 'ProxyProviderSvc', 'IOVDbSvc', 'PoolSvc', 'AthenaPoolCnvSvc', 'CondSvc', 'DBReplicaSvc', 'Athena::DelayedConditionsCleanerSvc', 'Athena::ConditionsCleanerSvc']
Py:ComponentAccumulator INFO Public Tools
Py:ComponentAccumulator INFO [
Py:ComponentAccumulator INFO IOVDbMetaDataTool/IOVDbMetaDataTool,
......@@ -170,7 +170,7 @@ Py:ComponentAccumulator INFO Condition Algorithms
Py:ComponentAccumulator INFO \__ CondInputLoader (cond alg)
Py:ComponentAccumulator INFO \__ TileHid2RESrcIDCondAlg (cond alg)
Py:ComponentAccumulator INFO Services
Py:ComponentAccumulator INFO ['ClassIDSvc', 'AlgContextSvc', 'AuditorSvc', 'StoreGateSvc', 'DetectorStore', 'HistoryStore', 'ConditionStore', 'MessageSvc', 'CoreDumpSvc', 'ExceptionSvc', 'EventDataSvc', 'AlgResourcePool', 'AvalancheSchedulerSvc', 'AthenaHiveEventLoopMgr', 'DetDescrCnvSvc', 'EventPersistencySvc', 'TagInfoMgr', 'GeoModelSvc', 'TileCablingSvc', 'ByteStreamCnvSvc', 'ByteStreamInputSvc', 'EventSelector', 'ROBDataProviderSvc', 'ByteStreamAddressProviderSvc', 'MetaDataStore', 'InputMetaDataStore', 'MetaDataSvc', 'ProxyProviderSvc', 'IOVDbSvc', 'PoolSvc', 'AthenaPoolCnvSvc', 'CondSvc', 'DBReplicaSvc', 'Athena::DelayedConditionsCleanerSvc', 'Athena::ConditionsCleanerSvc']
Py:ComponentAccumulator INFO ['ClassIDSvc', 'AlgContextSvc', 'AuditorSvc', 'StoreGateSvc', 'DetectorStore', 'HistoryStore', 'ConditionStore', 'MessageSvc', 'CoreDumpSvc', 'ExceptionSvc', 'EventDataSvc', 'AlgResourcePool', 'AvalancheSchedulerSvc', 'AthenaHiveEventLoopMgr', 'RDBAccessSvc', 'GeoDbTagSvc', 'DetDescrCnvSvc', 'EventPersistencySvc', 'TagInfoMgr', 'GeoModelSvc', 'TileCablingSvc', 'ByteStreamCnvSvc', 'ByteStreamInputSvc', 'EventSelector', 'ROBDataProviderSvc', 'ByteStreamAddressProviderSvc', 'MetaDataStore', 'InputMetaDataStore', 'MetaDataSvc', 'ProxyProviderSvc', 'IOVDbSvc', 'PoolSvc', 'AthenaPoolCnvSvc', 'CondSvc', 'DBReplicaSvc', 'Athena::DelayedConditionsCleanerSvc', 'Athena::ConditionsCleanerSvc']
Py:ComponentAccumulator INFO Public Tools
Py:ComponentAccumulator INFO [
Py:ComponentAccumulator INFO IOVDbMetaDataTool/IOVDbMetaDataTool,
......
......@@ -26,7 +26,7 @@ Py:ComponentAccumulator INFO Condition Algorithms
Py:ComponentAccumulator INFO \__ CondInputLoader (cond alg)
Py:ComponentAccumulator INFO \__ TileHid2RESrcIDCondAlg (cond alg)
Py:ComponentAccumulator INFO Services
Py:ComponentAccumulator INFO ['ClassIDSvc', 'AlgContextSvc', 'AuditorSvc', 'StoreGateSvc', 'DetectorStore', 'HistoryStore', 'ConditionStore', 'MessageSvc', 'CoreDumpSvc', 'ExceptionSvc', 'AthenaEventLoopMgr', 'DetDescrCnvSvc', 'EventPersistencySvc', 'TagInfoMgr', 'GeoModelSvc', 'TileCablingSvc', 'ByteStreamCnvSvc', 'ByteStreamInputSvc', 'EventSelector', 'ROBDataProviderSvc', 'ByteStreamAddressProviderSvc', 'MetaDataStore', 'InputMetaDataStore', 'MetaDataSvc', 'ProxyProviderSvc', 'IOVDbSvc', 'PoolSvc', 'AthenaPoolCnvSvc', 'CondSvc', 'DBReplicaSvc', 'Athena::DelayedConditionsCleanerSvc', 'Athena::ConditionsCleanerSvc']
Py:ComponentAccumulator INFO ['ClassIDSvc', 'AlgContextSvc', 'AuditorSvc', 'StoreGateSvc', 'DetectorStore', 'HistoryStore', 'ConditionStore', 'MessageSvc', 'CoreDumpSvc', 'ExceptionSvc', 'AthenaEventLoopMgr', 'RDBAccessSvc', 'GeoDbTagSvc', 'DetDescrCnvSvc', 'EventPersistencySvc', 'TagInfoMgr', 'GeoModelSvc', 'TileCablingSvc', 'ByteStreamCnvSvc', 'ByteStreamInputSvc', 'EventSelector', 'ROBDataProviderSvc', 'ByteStreamAddressProviderSvc', 'MetaDataStore', 'InputMetaDataStore', 'MetaDataSvc', 'ProxyProviderSvc', 'IOVDbSvc', 'PoolSvc', 'AthenaPoolCnvSvc', 'CondSvc', 'DBReplicaSvc', 'Athena::DelayedConditionsCleanerSvc', 'Athena::ConditionsCleanerSvc']
Py:ComponentAccumulator INFO Public Tools
Py:ComponentAccumulator INFO [
Py:ComponentAccumulator INFO IOVDbMetaDataTool/IOVDbMetaDataTool,
......@@ -174,7 +174,7 @@ Py:ComponentAccumulator INFO Condition Algorithms
Py:ComponentAccumulator INFO \__ CondInputLoader (cond alg)
Py:ComponentAccumulator INFO \__ TileHid2RESrcIDCondAlg (cond alg)
Py:ComponentAccumulator INFO Services
Py:ComponentAccumulator INFO ['ClassIDSvc', 'AlgContextSvc', 'AuditorSvc', 'StoreGateSvc', 'DetectorStore', 'HistoryStore', 'ConditionStore', 'MessageSvc', 'CoreDumpSvc', 'ExceptionSvc', 'EventDataSvc', 'AlgResourcePool', 'AvalancheSchedulerSvc', 'AthenaHiveEventLoopMgr', 'DetDescrCnvSvc', 'EventPersistencySvc', 'TagInfoMgr', 'GeoModelSvc', 'TileCablingSvc', 'ByteStreamCnvSvc', 'ByteStreamInputSvc', 'EventSelector', 'ROBDataProviderSvc', 'ByteStreamAddressProviderSvc', 'MetaDataStore', 'InputMetaDataStore', 'MetaDataSvc', 'ProxyProviderSvc', 'IOVDbSvc', 'PoolSvc', 'AthenaPoolCnvSvc', 'CondSvc', 'DBReplicaSvc', 'Athena::DelayedConditionsCleanerSvc', 'Athena::ConditionsCleanerSvc']
Py:ComponentAccumulator INFO ['ClassIDSvc', 'AlgContextSvc', 'AuditorSvc', 'StoreGateSvc', 'DetectorStore', 'HistoryStore', 'ConditionStore', 'MessageSvc', 'CoreDumpSvc', 'ExceptionSvc', 'EventDataSvc', 'AlgResourcePool', 'AvalancheSchedulerSvc', 'AthenaHiveEventLoopMgr', 'RDBAccessSvc', 'GeoDbTagSvc', 'DetDescrCnvSvc', 'EventPersistencySvc', 'TagInfoMgr', 'GeoModelSvc', 'TileCablingSvc', 'ByteStreamCnvSvc', 'ByteStreamInputSvc', 'EventSelector', 'ROBDataProviderSvc', 'ByteStreamAddressProviderSvc', 'MetaDataStore', 'InputMetaDataStore', 'MetaDataSvc', 'ProxyProviderSvc', 'IOVDbSvc', 'PoolSvc', 'AthenaPoolCnvSvc', 'CondSvc', 'DBReplicaSvc', 'Athena::DelayedConditionsCleanerSvc', 'Athena::ConditionsCleanerSvc']
Py:ComponentAccumulator INFO Public Tools
Py:ComponentAccumulator INFO [
Py:ComponentAccumulator INFO IOVDbMetaDataTool/IOVDbMetaDataTool,
......
......@@ -24,7 +24,7 @@ Py:ComponentAccumulator INFO Condition Algorithms
Py:ComponentAccumulator INFO \__ CondInputLoader (cond alg)
Py:ComponentAccumulator INFO \__ TileHid2RESrcIDCondAlg (cond alg)
Py:ComponentAccumulator INFO Services
Py:ComponentAccumulator INFO ['ClassIDSvc', 'AlgContextSvc', 'AuditorSvc', 'StoreGateSvc', 'DetectorStore', 'HistoryStore', 'ConditionStore', 'MessageSvc', 'CoreDumpSvc', 'ExceptionSvc', 'AthenaEventLoopMgr', 'DetDescrCnvSvc', 'EventPersistencySvc', 'TagInfoMgr', 'GeoModelSvc', 'TileCablingSvc', 'ByteStreamCnvSvc', 'ByteStreamInputSvc', 'EventSelector', 'ROBDataProviderSvc', 'ByteStreamAddressProviderSvc', 'MetaDataStore', 'InputMetaDataStore', 'MetaDataSvc', 'ProxyProviderSvc', 'IOVDbSvc', 'PoolSvc', 'AthenaPoolCnvSvc', 'CondSvc', 'DBReplicaSvc', 'Athena::DelayedConditionsCleanerSvc', 'Athena::ConditionsCleanerSvc']
Py:ComponentAccumulator INFO ['ClassIDSvc', 'AlgContextSvc', 'AuditorSvc', 'StoreGateSvc', 'DetectorStore', 'HistoryStore', 'ConditionStore', 'MessageSvc', 'CoreDumpSvc', 'ExceptionSvc', 'AthenaEventLoopMgr', 'RDBAccessSvc', 'GeoDbTagSvc', 'DetDescrCnvSvc', 'EventPersistencySvc', 'TagInfoMgr', 'GeoModelSvc', 'TileCablingSvc', 'ByteStreamCnvSvc', 'ByteStreamInputSvc', 'EventSelector', 'ROBDataProviderSvc', 'ByteStreamAddressProviderSvc', 'MetaDataStore', 'InputMetaDataStore', 'MetaDataSvc', 'ProxyProviderSvc', 'IOVDbSvc', 'PoolSvc', 'AthenaPoolCnvSvc', 'CondSvc', 'DBReplicaSvc', 'Athena::DelayedConditionsCleanerSvc', 'Athena::ConditionsCleanerSvc']
Py:ComponentAccumulator INFO Public Tools
Py:ComponentAccumulator INFO [
Py:ComponentAccumulator INFO IOVDbMetaDataTool/IOVDbMetaDataTool,
......@@ -170,7 +170,7 @@ Py:ComponentAccumulator INFO Condition Algorithms
Py:ComponentAccumulator INFO \__ CondInputLoader (cond alg)
Py:ComponentAccumulator INFO \__ TileHid2RESrcIDCondAlg (cond alg)
Py:ComponentAccumulator INFO Services
Py:ComponentAccumulator INFO ['ClassIDSvc', 'AlgContextSvc', 'AuditorSvc', 'StoreGateSvc', 'DetectorStore', 'HistoryStore', 'ConditionStore', 'MessageSvc', 'CoreDumpSvc', 'ExceptionSvc', 'EventDataSvc', 'AlgResourcePool', 'AvalancheSchedulerSvc', 'AthenaHiveEventLoopMgr', 'DetDescrCnvSvc', 'EventPersistencySvc', 'TagInfoMgr', 'GeoModelSvc', 'TileCablingSvc', 'ByteStreamCnvSvc', 'ByteStreamInputSvc', 'EventSelector', 'ROBDataProviderSvc', 'ByteStreamAddressProviderSvc', 'MetaDataStore', 'InputMetaDataStore', 'MetaDataSvc', 'ProxyProviderSvc', 'IOVDbSvc', 'PoolSvc', 'AthenaPoolCnvSvc', 'CondSvc', 'DBReplicaSvc', 'Athena::DelayedConditionsCleanerSvc', 'Athena::ConditionsCleanerSvc']
Py:ComponentAccumulator INFO ['ClassIDSvc', 'AlgContextSvc', 'AuditorSvc', 'StoreGateSvc', 'DetectorStore', 'HistoryStore', 'ConditionStore', 'MessageSvc', 'CoreDumpSvc', 'ExceptionSvc', 'EventDataSvc', 'AlgResourcePool', 'AvalancheSchedulerSvc', 'AthenaHiveEventLoopMgr', 'RDBAccessSvc', 'GeoDbTagSvc', 'DetDescrCnvSvc', 'EventPersistencySvc', 'TagInfoMgr', 'GeoModelSvc', 'TileCablingSvc', 'ByteStreamCnvSvc', 'ByteStreamInputSvc', 'EventSelector', 'ROBDataProviderSvc', 'ByteStreamAddressProviderSvc', 'MetaDataStore', 'InputMetaDataStore', 'MetaDataSvc', 'ProxyProviderSvc', 'IOVDbSvc', 'PoolSvc', 'AthenaPoolCnvSvc', 'CondSvc', 'DBReplicaSvc', 'Athena::DelayedConditionsCleanerSvc', 'Athena::ConditionsCleanerSvc']
Py:ComponentAccumulator INFO Public Tools
Py:ComponentAccumulator INFO [
Py:ComponentAccumulator INFO IOVDbMetaDataTool/IOVDbMetaDataTool,
......
......@@ -23,7 +23,7 @@ Py:ComponentAccumulator INFO Condition Algorithms
Py:ComponentAccumulator INFO \__ CondInputLoader (cond alg)
Py:ComponentAccumulator INFO \__ TileHid2RESrcIDCondAlg (cond alg)
Py:ComponentAccumulator INFO Services
Py:ComponentAccumulator INFO ['ClassIDSvc', 'AlgContextSvc', 'AuditorSvc', 'StoreGateSvc', 'DetectorStore', 'HistoryStore', 'ConditionStore', 'MessageSvc', 'CoreDumpSvc', 'ExceptionSvc', 'AthenaEventLoopMgr', 'DetDescrCnvSvc', 'EventPersistencySvc', 'TagInfoMgr', 'GeoModelSvc', 'TileCablingSvc', 'ByteStreamCnvSvc', 'ByteStreamInputSvc', 'EventSelector', 'ROBDataProviderSvc', 'ByteStreamAddressProviderSvc', 'MetaDataStore', 'InputMetaDataStore', 'MetaDataSvc', 'ProxyProviderSvc', 'IOVDbSvc', 'PoolSvc', 'AthenaPoolCnvSvc', 'CondSvc', 'DBReplicaSvc', 'Athena::DelayedConditionsCleanerSvc', 'Athena::ConditionsCleanerSvc']
Py:ComponentAccumulator INFO ['ClassIDSvc', 'AlgContextSvc', 'AuditorSvc', 'StoreGateSvc', 'DetectorStore', 'HistoryStore', 'ConditionStore', 'MessageSvc', 'CoreDumpSvc', 'ExceptionSvc', 'AthenaEventLoopMgr', 'RDBAccessSvc', 'GeoDbTagSvc', 'DetDescrCnvSvc', 'EventPersistencySvc', 'TagInfoMgr', 'GeoModelSvc', 'TileCablingSvc', 'ByteStreamCnvSvc', 'ByteStreamInputSvc', 'EventSelector', 'ROBDataProviderSvc', 'ByteStreamAddressProviderSvc', 'MetaDataStore', 'InputMetaDataStore', 'MetaDataSvc', 'ProxyProviderSvc', 'IOVDbSvc', 'PoolSvc', 'AthenaPoolCnvSvc', 'CondSvc', 'DBReplicaSvc', 'Athena::DelayedConditionsCleanerSvc', 'Athena::ConditionsCleanerSvc']
Py:ComponentAccumulator INFO Public Tools
Py:ComponentAccumulator INFO [
Py:ComponentAccumulator INFO IOVDbMetaDataTool/IOVDbMetaDataTool,
......@@ -169,7 +169,7 @@ Py:ComponentAccumulator INFO Condition Algorithms
Py:ComponentAccumulator INFO \__ CondInputLoader (cond alg)
Py:ComponentAccumulator INFO \__ TileHid2RESrcIDCondAlg (cond alg)
Py:ComponentAccumulator INFO Services
Py:ComponentAccumulator INFO ['ClassIDSvc', 'AlgContextSvc', 'AuditorSvc', 'StoreGateSvc', 'DetectorStore', 'HistoryStore', 'ConditionStore', 'MessageSvc', 'CoreDumpSvc', 'ExceptionSvc', 'EventDataSvc', 'AlgResourcePool', 'AvalancheSchedulerSvc', 'AthenaHiveEventLoopMgr', 'DetDescrCnvSvc', 'EventPersistencySvc', 'TagInfoMgr', 'GeoModelSvc', 'TileCablingSvc', 'ByteStreamCnvSvc', 'ByteStreamInputSvc', 'EventSelector', 'ROBDataProviderSvc', 'ByteStreamAddressProviderSvc', 'MetaDataStore', 'InputMetaDataStore', 'MetaDataSvc', 'ProxyProviderSvc', 'IOVDbSvc', 'PoolSvc', 'AthenaPoolCnvSvc', 'CondSvc', 'DBReplicaSvc', 'Athena::DelayedConditionsCleanerSvc', 'Athena::ConditionsCleanerSvc']
Py:ComponentAccumulator INFO ['ClassIDSvc', 'AlgContextSvc', 'AuditorSvc', 'StoreGateSvc', 'DetectorStore', 'HistoryStore', 'ConditionStore', 'MessageSvc', 'CoreDumpSvc', 'ExceptionSvc', 'EventDataSvc', 'AlgResourcePool', 'AvalancheSchedulerSvc', 'AthenaHiveEventLoopMgr', 'RDBAccessSvc', 'GeoDbTagSvc', 'DetDescrCnvSvc', 'EventPersistencySvc', 'TagInfoMgr', 'GeoModelSvc', 'TileCablingSvc', 'ByteStreamCnvSvc', 'ByteStreamInputSvc', 'EventSelector', 'ROBDataProviderSvc', 'ByteStreamAddressProviderSvc', 'MetaDataStore', 'InputMetaDataStore', 'MetaDataSvc', 'ProxyProviderSvc', 'IOVDbSvc', 'PoolSvc', 'AthenaPoolCnvSvc', 'CondSvc', 'DBReplicaSvc', 'Athena::DelayedConditionsCleanerSvc', 'Athena::ConditionsCleanerSvc']
Py:ComponentAccumulator INFO Public Tools
Py:ComponentAccumulator INFO [
Py:ComponentAccumulator INFO IOVDbMetaDataTool/IOVDbMetaDataTool,
......
......@@ -23,7 +23,7 @@ Py:ComponentAccumulator INFO Condition Algorithms
Py:ComponentAccumulator INFO \__ CondInputLoader (cond alg)
Py:ComponentAccumulator INFO \__ TileHid2RESrcIDCondAlg (cond alg)
Py:ComponentAccumulator INFO Services
Py:ComponentAccumulator INFO ['ClassIDSvc', 'AlgContextSvc', 'AuditorSvc', 'StoreGateSvc', 'DetectorStore', 'HistoryStore', 'ConditionStore', 'MessageSvc', 'CoreDumpSvc', 'ExceptionSvc', 'AthenaEventLoopMgr', 'DetDescrCnvSvc', 'EventPersistencySvc', 'TagInfoMgr', 'GeoModelSvc', 'TileCablingSvc', 'ByteStreamCnvSvc', 'ByteStreamInputSvc', 'EventSelector', 'ROBDataProviderSvc', 'ByteStreamAddressProviderSvc', 'MetaDataStore', 'InputMetaDataStore', 'MetaDataSvc', 'ProxyProviderSvc', 'IOVDbSvc', 'PoolSvc', 'AthenaPoolCnvSvc', 'CondSvc', 'DBReplicaSvc', 'Athena::DelayedConditionsCleanerSvc', 'Athena::ConditionsCleanerSvc']
Py:ComponentAccumulator INFO ['ClassIDSvc', 'AlgContextSvc', 'AuditorSvc', 'StoreGateSvc', 'DetectorStore', 'HistoryStore', 'ConditionStore', 'MessageSvc', 'CoreDumpSvc', 'ExceptionSvc', 'AthenaEventLoopMgr', 'RDBAccessSvc', 'GeoDbTagSvc', 'DetDescrCnvSvc', 'EventPersistencySvc', 'TagInfoMgr', 'GeoModelSvc', 'TileCablingSvc', 'ByteStreamCnvSvc', 'ByteStreamInputSvc', 'EventSelector', 'ROBDataProviderSvc', 'ByteStreamAddressProviderSvc', 'MetaDataStore', 'InputMetaDataStore', 'MetaDataSvc', 'ProxyProviderSvc', 'IOVDbSvc', 'PoolSvc', 'AthenaPoolCnvSvc', 'CondSvc', 'DBReplicaSvc', 'Athena::DelayedConditionsCleanerSvc', 'Athena::ConditionsCleanerSvc']
Py:ComponentAccumulator INFO Public Tools
Py:ComponentAccumulator INFO [
Py:ComponentAccumulator INFO IOVDbMetaDataTool/IOVDbMetaDataTool,
......@@ -169,7 +169,7 @@ Py:ComponentAccumulator INFO Condition Algorithms
Py:ComponentAccumulator INFO \__ CondInputLoader (cond alg)
Py:ComponentAccumulator INFO \__ TileHid2RESrcIDCondAlg (cond alg)
Py:ComponentAccumulator INFO Services
Py:ComponentAccumulator INFO ['ClassIDSvc', 'AlgContextSvc', 'AuditorSvc', 'StoreGateSvc', 'DetectorStore', 'HistoryStore', 'ConditionStore', 'MessageSvc', 'CoreDumpSvc', 'ExceptionSvc', 'EventDataSvc', 'AlgResourcePool', 'AvalancheSchedulerSvc', 'AthenaHiveEventLoopMgr', 'DetDescrCnvSvc', 'EventPersistencySvc', 'TagInfoMgr', 'GeoModelSvc', 'TileCablingSvc', 'ByteStreamCnvSvc', 'ByteStreamInputSvc', 'EventSelector', 'ROBDataProviderSvc', 'ByteStreamAddressProviderSvc', 'MetaDataStore', 'InputMetaDataStore', 'MetaDataSvc', 'ProxyProviderSvc', 'IOVDbSvc', 'PoolSvc', 'AthenaPoolCnvSvc', 'CondSvc', 'DBReplicaSvc', 'Athena::DelayedConditionsCleanerSvc', 'Athena::ConditionsCleanerSvc']
Py:ComponentAccumulator INFO ['ClassIDSvc', 'AlgContextSvc', 'AuditorSvc', 'StoreGateSvc', 'DetectorStore', 'HistoryStore', 'ConditionStore', 'MessageSvc', 'CoreDumpSvc', 'ExceptionSvc', 'EventDataSvc', 'AlgResourcePool', 'AvalancheSchedulerSvc', 'AthenaHiveEventLoopMgr', 'RDBAccessSvc', 'GeoDbTagSvc', 'DetDescrCnvSvc', 'EventPersistencySvc', 'TagInfoMgr', 'GeoModelSvc', 'TileCablingSvc', 'ByteStreamCnvSvc', 'ByteStreamInputSvc', 'EventSelector', 'ROBDataProviderSvc', 'ByteStreamAddressProviderSvc', 'MetaDataStore', 'InputMetaDataStore', 'MetaDataSvc', 'ProxyProviderSvc', 'IOVDbSvc', 'PoolSvc', 'AthenaPoolCnvSvc', 'CondSvc', 'DBReplicaSvc', 'Athena::DelayedConditionsCleanerSvc', 'Athena::ConditionsCleanerSvc']
Py:ComponentAccumulator INFO Public Tools
Py:ComponentAccumulator INFO [
Py:ComponentAccumulator INFO IOVDbMetaDataTool/IOVDbMetaDataTool,
......
......@@ -26,7 +26,7 @@ Py:ComponentAccumulator INFO Condition Algorithms
Py:ComponentAccumulator INFO \__ CondInputLoader (cond alg)
Py:ComponentAccumulator INFO \__ TileHid2RESrcIDCondAlg (cond alg)
Py:ComponentAccumulator INFO Services
Py:ComponentAccumulator INFO ['ClassIDSvc', 'AlgContextSvc', 'AuditorSvc', 'StoreGateSvc', 'DetectorStore', 'HistoryStore', 'ConditionStore', 'MessageSvc', 'CoreDumpSvc', 'ExceptionSvc', 'AthenaEventLoopMgr', 'DetDescrCnvSvc', 'EventPersistencySvc', 'TagInfoMgr', 'GeoModelSvc', 'TileCablingSvc', 'ByteStreamCnvSvc', 'ByteStreamInputSvc', 'EventSelector', 'ROBDataProviderSvc', 'ByteStreamAddressProviderSvc', 'MetaDataStore', 'InputMetaDataStore', 'MetaDataSvc', 'ProxyProviderSvc', 'IOVDbSvc', 'PoolSvc', 'AthenaPoolCnvSvc', 'CondSvc', 'DBReplicaSvc', 'Athena::DelayedConditionsCleanerSvc', 'Athena::ConditionsCleanerSvc']
Py:ComponentAccumulator INFO ['ClassIDSvc', 'AlgContextSvc', 'AuditorSvc', 'StoreGateSvc', 'DetectorStore', 'HistoryStore', 'ConditionStore', 'MessageSvc', 'CoreDumpSvc', 'ExceptionSvc', 'AthenaEventLoopMgr', 'RDBAccessSvc', 'GeoDbTagSvc', 'DetDescrCnvSvc', 'EventPersistencySvc', 'TagInfoMgr', 'GeoModelSvc', 'TileCablingSvc', 'ByteStreamCnvSvc', 'ByteStreamInputSvc', 'EventSelector', 'ROBDataProviderSvc', 'ByteStreamAddressProviderSvc', 'MetaDataStore', 'InputMetaDataStore', 'MetaDataSvc', 'ProxyProviderSvc', 'IOVDbSvc', 'PoolSvc', 'AthenaPoolCnvSvc', 'CondSvc', 'DBReplicaSvc', 'Athena::DelayedConditionsCleanerSvc', 'Athena::ConditionsCleanerSvc']
Py:ComponentAccumulator INFO Public Tools
Py:ComponentAccumulator INFO [
Py:ComponentAccumulator INFO IOVDbMetaDataTool/IOVDbMetaDataTool,
......@@ -174,7 +174,7 @@ Py:ComponentAccumulator INFO Condition Algorithms
Py:ComponentAccumulator INFO \__ CondInputLoader (cond alg)
Py:ComponentAccumulator INFO \__ TileHid2RESrcIDCondAlg (cond alg)
Py:ComponentAccumulator INFO Services
Py:ComponentAccumulator INFO ['ClassIDSvc', 'AlgContextSvc', 'AuditorSvc', 'StoreGateSvc', 'DetectorStore', 'HistoryStore', 'ConditionStore', 'MessageSvc', 'CoreDumpSvc', 'ExceptionSvc', 'EventDataSvc', 'AlgResourcePool', 'AvalancheSchedulerSvc', 'AthenaHiveEventLoopMgr', 'DetDescrCnvSvc', 'EventPersistencySvc', 'TagInfoMgr', 'GeoModelSvc', 'TileCablingSvc', 'ByteStreamCnvSvc', 'ByteStreamInputSvc', 'EventSelector', 'ROBDataProviderSvc', 'ByteStreamAddressProviderSvc', 'MetaDataStore', 'InputMetaDataStore', 'MetaDataSvc', 'ProxyProviderSvc', 'IOVDbSvc', 'PoolSvc', 'AthenaPoolCnvSvc', 'CondSvc', 'DBReplicaSvc', 'Athena::DelayedConditionsCleanerSvc', 'Athena::ConditionsCleanerSvc']
Py:ComponentAccumulator INFO ['ClassIDSvc', 'AlgContextSvc', 'AuditorSvc', 'StoreGateSvc', 'DetectorStore', 'HistoryStore', 'ConditionStore', 'MessageSvc', 'CoreDumpSvc', 'ExceptionSvc', 'EventDataSvc', 'AlgResourcePool', 'AvalancheSchedulerSvc', 'AthenaHiveEventLoopMgr', 'RDBAccessSvc', 'GeoDbTagSvc', 'DetDescrCnvSvc', 'EventPersistencySvc', 'TagInfoMgr', 'GeoModelSvc', 'TileCablingSvc', 'ByteStreamCnvSvc', 'ByteStreamInputSvc', 'EventSelector', 'ROBDataProviderSvc', 'ByteStreamAddressProviderSvc', 'MetaDataStore', 'InputMetaDataStore', 'MetaDataSvc', 'ProxyProviderSvc', 'IOVDbSvc', 'PoolSvc', 'AthenaPoolCnvSvc', 'CondSvc', 'DBReplicaSvc', 'Athena::DelayedConditionsCleanerSvc', 'Athena::ConditionsCleanerSvc']
Py:ComponentAccumulator INFO Public Tools
Py:ComponentAccumulator INFO [
Py:ComponentAccumulator INFO IOVDbMetaDataTool/IOVDbMetaDataTool,
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment