atlas pool replacement

6
Developer workshop on I/O and persistence evolution LAL, Orsay, 20-22 Feb 2012 Marcin Nowak (PAS BNL) Atlas POOL Replacement

Upload: lowell

Post on 06-Jan-2016

31 views

Category:

Documents


2 download

DESCRIPTION

Atlas POOL Replacement. Developer workshop on I/O and persistence evolution LAL, Orsay, 20-22 Feb 2012 Marcin Nowak (PAS BNL). POOL Code Migration. POOL code was migrated into ATLAS offline codebase in Q3 2011 Location: SVN, AtlasCore, Database/APR New requirement files - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Atlas POOL Replacement

Developer workshop on I/O and persistence evolutionLAL, Orsay, 20-22 Feb 2012

Marcin Nowak (PAS BNL)

Atlas POOL Replacement

Page 2: Atlas POOL Replacement

POOL Code Migration

POOL code was migrated into ATLAS offline codebase in Q3 2011 Location: SVN, AtlasCore, Database/APR New requirement files

75% of the migration effort spent

Take from POOL only what ATLAS is actually using Package-level granularity – see next slide

Minimize changes to the files and code .cpp extensions!

Easier to keep in synch with LCG POOL Gradual progress instead of big bang approach

Safer and more practical

Migration of tests was tricky (CMT) Half of the integration tests is gone (no more DataSvc) All remaining are working and run nightly

but without full automatic results validation OVAL -> ?

2

Marcin Nowak BNL PAS GroupI/O and persistence evolution workshop,

Orsay Feb 2012

Page 3: Atlas POOL Replacement

POOL Packages

Migrated packagesPOOLCoreStorageSvcRootStorageSvc FileCatalog XMLCatalogPersistencySvcImplicitCollection

CollectionBase RootCollectionRelationalCollectionCollectionUtilities

Tests

3

Marcin Nowak BNL PAS Group

Packages not migratedObjectRelationalAccessRelationalStorageServiceRulesFileCatalogRelationalFileCatalogLFCCatalogDataSvcCollection

I/O and persistence evolution workshop, Orsay Feb 2012

Page 4: Atlas POOL Replacement

APR – Athena Integration

New package : Database/APR in AtlasCore Included in 17.5.0 release and 17.6.0 nightlies

Builds are based on LCG62 releases without POOL

External/AtlasPOOL glue package redirects to APR Simple and fully transparent for “all” client packages

3 packages using DataSvc for “trivial” purposes had to be adapted to PersistencySvc

A package importing LCG POOL directly were causing build process to freeze Python utility loading RootCollection library (dictionary) explicitly had to be modified

In summary: relatively smooth migration Developing and fixing of APR components much easier and faster now

But lack of any usable Athena release makes this a bit pointless still

4

Marcin Nowak BNL PAS GroupI/O and persistence evolution workshop,

Orsay Feb 2012

Page 5: Atlas POOL Replacement

The “old” POOL

“old” POOL code remains in the LCG CVS repository Still part of LCG60 and LCG61 nightly builds and new releases

LCG61 is used in Athena 17.1.X releases Repository remains open for as long as ATLAS continues to use LCG61

POOL and APR code is still identical We hope to get any necessary ROOT-related fixes to RootStorageSvc from

Markus and propagate them to APR has not happened so far

I am developing Collection packages in APR and porting changes back to POOL happens frequently

There are no Atlas-specific features introduced to APR yet

5

Marcin Nowak BNL PAS GroupI/O and persistence evolution workshop,

Orsay Feb 2012

Page 6: Atlas POOL Replacement

New Possibilities with APR

Things we can do now that APR is part of Athena: Move/merge TrigCollQuery with CollectionUtilities

Better integration Easier tag acceptance for releases

Integrate/expose file management (FileManager?) Collections, THistSvc

Do something about File Catalog Seems like we treat it more like a nuisance than a useful feature

Integrate/replace Token with Athena/Gaudi navigation Introduce dataset notion to navigation Try to remove unused POOL persistency features

Listing for completeness, but not recommending

I/O and persistence evolution workshop, Orsay Feb 2012

6

Marcin Nowak BNL PAS Group