diff --git a/AtlasTest/ControlTest/share/StoreGateSvcClient_test.ref b/AtlasTest/ControlTest/share/StoreGateSvcClient_test.ref index e03744dc20780df313c5941d13d751f3e88bf5bb..fe3f98945df0a962eddae077f2108bf43dcdd962 100644 --- a/AtlasTest/ControlTest/share/StoreGateSvcClient_test.ref +++ b/AtlasTest/ControlTest/share/StoreGateSvcClient_test.ref @@ -1,7 +1,7 @@ Initializing Gaudi ApplicationMgr using job opts ../share/StoreGateSvcClient_test.txt -JobOptionsSvc INFO # =======> /home/sss/atlas/dvtest/build/joboptions/ControlTest/StoreGateTestCommon.txt +JobOptionsSvc INFO # =======> /afs/cern.ch/work/s/ssnyder/builds/atlas-work7/build-x86_64-slc6-gcc62-dbg/x86_64-slc6-gcc62-dbg/jobOptions/ControlTest/StoreGateTestCommon.txt JobOptionsSvc INFO # (5,1): ApplicationMgr.ExtSvc += ["StoreGateSvc/DetectorStore", "StoreGateSvc/HistoryStore", "StoreGateSvc/ConditionsStore"] JobOptionsSvc INFO # (6,1): AuditorSvc.Auditors += ["AlgContextAuditor"] JobOptionsSvc INFO # (7,1): StoreGateSvc.OutputLevel = 1 @@ -11,11 +11,11 @@ JobOptionsSvc INFO # (10,1): MessageSvc.useColors = 1 JobOptionsSvc INFO Job options successfully read in from ../share/StoreGateSvcClient_test.txt ApplicationMgr SUCCESS ==================================================================================================================================== - Welcome to ApplicationMgr (GaudiCoreSvc v27r1p99) - running on karma on Tue Dec 13 22:18:59 2016 + Welcome to ApplicationMgr (GaudiCoreSvc v28r1) + running on lxplus042.cern.ch on Fri Apr 7 05:56:41 2017 ====================================================================================================================================[m ApplicationMgr INFO Application Manager Configured successfully[m -ClassIDSvc INFO getRegistryEntries: read 1216 CLIDRegistry entries for module ALL[m +ClassIDSvc INFO getRegistryEntries: read 270 CLIDRegistry entries for module ALL[m [93;1mEventLoopMgr WARNING Unable to locate service "EventSelector" [m [93;1mEventLoopMgr WARNING No events will be processed from external input.[m [93;1mHistogramPersis...WARNING Histograms saving not required.[m @@ -23,103 +23,108 @@ ApplicationMgr INFO Application Manager Initialized successfully[m ApplicationMgr Ready StoreGateSvc DEBUG Property update for OutputLevel : new value = 1[m StoreGateSvc DEBUG Service base class initialized successfully[m -StoreGateSvc VERBOSE ServiceLocatorHelper::service: found service EventPersistencySvc[m -StoreGateSvc VERBOSE ServiceLocatorHelper::service: found service ClassIDSvc[m +StoreGateSvc VERBOSE Initializing StoreGateSvc - package version StoreGate-00-00-00[m +StoreGateSvc DEBUG trying to create store SGImplSvc/StoreGateSvc_Impl[m +StoreGateSvc_Impl DEBUG Property update for OutputLevel : new value = 1[m +StoreGateSvc_Impl VERBOSE Initializing StoreGateSvc_Impl - package version StoreGate-00-00-00[m +StoreGateSvc_Impl DEBUG Service base class initialized successfully[m +StoreGateSvc_Impl VERBOSE ServiceLocatorHelper::service: found service EventPersistencySvc[m +StoreGateSvc_Impl VERBOSE ServiceLocatorHelper::service: found service ClassIDSvc[m *** StoreGateSvcClient_test record BEGINS *** -StoreGateSvc DEBUG Recorded object @0x1121730 with key pFoo1 of type Foo(CLID 8101) - in DataObject @0x11245b0 +ClassIDSvc INFO getRegistryEntries: read 867 CLIDRegistry entries for module ALL[m +StoreGateSvc_Impl DEBUG Recorded object @0x1875630 with key pFoo1 of type Foo(CLID 8101) + in DataObject @0x1875930 object modifiable when retrieved[m Now we expect to see an error message: ----Error Message Starts--->> -[93;1mStoreGateSvc WARNING setupProxy:: error setting up proxy for key pFoo1 and clid 8101 - Pre-existing valid DataProxy @0x11244e0 found in Store for key pFoo1 with clid 8101[m -ClassIDSvc INFO getRegistryEntries: read 357 CLIDRegistry entries for module ALL[m -[93;1mStoreGateSvc WARNING record_impl: Problem setting up the proxy for object @0x1124a30 - recorded with key pFoo1 of type Foo (CLID 8101) in DataObject @0x1124690[m +[93;1mStoreGateSvc_Impl WARNING setupProxy:: error setting up proxy for key pFoo1 and clid 8101 + Pre-existing valid DataProxy @0x1875ce0 found in Store for key pFoo1 with clid 8101[m +[93;1mStoreGateSvc_Impl WARNING record_impl: Problem setting up the proxy for object @0x17f28f0 + recorded with key pFoo1 of type Foo (CLID 8101) in DataObject @0x1875f60[m <<---Error Message Ends------- Now we expect to see an error message: ----Error Message Starts--->> -[93;1mStoreGateSvc WARNING record_impl: failed for key=pFoo2, type Foo (CLID 8101) - object @0x1121730 already in store with key=pFoo1. Will not record a duplicate! [m +[93;1mStoreGateSvc_Impl WARNING record_impl: failed for key=pFoo2, type Foo (CLID 8101) + object @0x1875630 already in store with key=pFoo1. Will not record a duplicate! [m <<---Error Message Ends------- -StoreGateSvc DEBUG Recorded object @0x10dfb70 with key pFoo2 of type Foo(CLID 8101) - in DataObject @0x10f0b50 +StoreGateSvc_Impl DEBUG Recorded object @0x1865df0 with key pFoo2 of type Foo(CLID 8101) + in DataObject @0x17ec190 object modifiable when retrieved[m -StoreGateSvc DEBUG Recorded object @0x10eee50 with key cpFoo of type Foo(CLID 8101) - in DataObject @0x10e6650 +StoreGateSvc_Impl DEBUG Recorded object @0x1875e20 with key cpFoo of type Foo(CLID 8101) + in DataObject @0x18761e0 object not modifiable when retrieved[m -StoreGateSvc DEBUG Recorded object @0x10ca3b0 with key silly of type Foo(CLID 8101) - in DataObject @0x1125980 +StoreGateSvc_Impl DEBUG Recorded object @0x1875bb0 with key silly of type Foo(CLID 8101) + in DataObject @0x1876920 object modifiable when retrieved[m Now we expect to see an error message: ----Error Message Starts--->> -[93;1mStoreGateSvc WARNING setupProxy:: error setting up proxy for key silly and clid 8101 - Pre-existing valid DataProxy @0x10eb590 found in Store for key silly with clid 8101[m -[93;1mStoreGateSvc WARNING record_impl: Problem setting up the proxy for object @0x10e6d50 - recorded with key silly of type Foo (CLID 8101) in DataObject @0x10e6da0[m +[93;1mStoreGateSvc_Impl WARNING setupProxy:: error setting up proxy for key silly and clid 8101 + Pre-existing valid DataProxy @0x1876ab0 found in Store for key silly with clid 8101[m +[93;1mStoreGateSvc_Impl WARNING record_impl: Problem setting up the proxy for object @0x1866350 + recorded with key silly of type Foo (CLID 8101) in DataObject @0x1876c20[m <<---Error Message Ends------- Now we expect to see an error message: ----Error Message Starts--->> -[93;1mStoreGateSvc WARNING setupProxy:: error setting up proxy for key silly and clid 8101 - Pre-existing valid DataProxy @0x10eb590 found in Store for key silly with clid 8101[m -[93;1mStoreGateSvc WARNING record_impl: Problem setting up the proxy for object @0x1124c30 - recorded with key silly of type Foo (CLID 8101) in DataObject @0x10e6200[m +[93;1mStoreGateSvc_Impl WARNING setupProxy:: error setting up proxy for key silly and clid 8101 + Pre-existing valid DataProxy @0x1876ab0 found in Store for key silly with clid 8101[m +[93;1mStoreGateSvc_Impl WARNING record_impl: Problem setting up the proxy for object @0x1876da0 + recorded with key silly of type Foo (CLID 8101) in DataObject @0x1876d00[m <<---Error Message Ends------- Now we expect to see an error message: ----Error Message Starts--->> -[93;1mStoreGateSvc WARNING setupProxy:: error setting up proxy for key silly and clid 8101 - Pre-existing valid DataProxy @0x10eb590 found in Store for key silly with clid 8101[m -[93;1mStoreGateSvc WARNING record_impl: Problem setting up the proxy for object @0x10e6250 - recorded with key silly of type Foo (CLID 8101) in DataObject @0x1124d80[m +[93;1mStoreGateSvc_Impl WARNING setupProxy:: error setting up proxy for key silly and clid 8101 + Pre-existing valid DataProxy @0x1876ab0 found in Store for key silly with clid 8101[m +[93;1mStoreGateSvc_Impl WARNING record_impl: Problem setting up the proxy for object @0x1876250 + recorded with key silly of type Foo (CLID 8101) in DataObject @0x1876d50[m <<---Error Message Ends------- -StoreGateSvc DEBUG Recorded object @0x10e6290 with key UnLocked of type Foo(CLID 8101) - in DataObject @0x1124e50 +StoreGateSvc_Impl DEBUG Recorded object @0x1876c90 with key UnLocked of type Foo(CLID 8101) + in DataObject @0x1876df0 object modifiable when retrieved[m -StoreGateSvc DEBUG Recorded object @0x1125310 with key Locked of type Foo(CLID 8101) - in DataObject @0x102d780 +StoreGateSvc_Impl DEBUG Recorded object @0x1876430 with key Locked of type Foo(CLID 8101) + in DataObject @0x18771d0 object not modifiable when retrieved[m -StoreGateSvc DEBUG Recorded object @0x1125d10 with key LockedReset of type Foo(CLID 8101) - in DataObject @0x1125c80 +StoreGateSvc_Impl DEBUG Recorded object @0x1865c70 with key LockedReset of type Foo(CLID 8101) + in DataObject @0x1877520 object not modifiable when retrieved[m -StoreGateSvc DEBUG Recorded object @0x11261d0 with key UnLockedReset of type Foo(CLID 8101) - in DataObject @0x10ee2b0 +StoreGateSvc_Impl DEBUG Recorded object @0x1877260 with key UnLockedReset of type Foo(CLID 8101) + in DataObject @0x18778d0 object modifiable when retrieved[m -StoreGateSvc DEBUG Recorded object @0x1126430 with key LockedDelete of type Foo(CLID 8101) - in DataObject @0x1126380 +StoreGateSvc_Impl DEBUG Recorded object @0x18775b0 with key LockedDelete of type Foo(CLID 8101) + in DataObject @0x1877c80 object not modifiable when retrieved[m -StoreGateSvc DEBUG Recorded object @0x1126730 with key UnLockedDelete of type Foo(CLID 8101) - in DataObject @0x1126680 +StoreGateSvc_Impl DEBUG Recorded object @0x1877960 with key UnLockedDelete of type Foo(CLID 8101) + in DataObject @0x1878030 object modifiable when retrieved[m -StoreGateSvc DEBUG Recorded object @0x1126a30 with key Const of type Foo(CLID 8101) - in DataObject @0x1126980 +StoreGateSvc_Impl DEBUG Recorded object @0x1877d10 with key Const of type Foo(CLID 8101) + in DataObject @0x18783e0 object not modifiable when retrieved[m -StoreGateSvc DEBUG Recorded object @0x1126d30 with key Const2 of type Foo(CLID 8101) - in DataObject @0x1126c80 +StoreGateSvc_Impl DEBUG Recorded object @0x18780c0 with key Const2 of type Foo(CLID 8101) + in DataObject @0x1878a90 object not modifiable when retrieved[m Now we expect to see an error message: ----Error Message Starts--->> -[93;1mStoreGateSvc WARNING setupProxy:: error setting up proxy for key Const and clid 8101 - Pre-existing valid DataProxy @0x1126b60 found in Store for key Const with clid 8101[m -[93;1mStoreGateSvc WARNING record_impl: Problem setting up the proxy for object @0x1127030 - recorded with key Const of type Foo (CLID 8101) in DataObject @0x1126f80[m +[93;1mStoreGateSvc_Impl WARNING setupProxy:: error setting up proxy for key Const and clid 8101 + Pre-existing valid DataProxy @0x18786e0 found in Store for key Const with clid 8101[m +[93;1mStoreGateSvc_Impl WARNING record_impl: Problem setting up the proxy for object @0x1878470 + recorded with key Const of type Foo (CLID 8101) in DataObject @0x1878e40[m <<---Error Message Ends------- -StoreGateSvc DEBUG Recorded object @0x1127110 with key ow of type Foo(CLID 8101) - in DataObject @0x1127050 +StoreGateSvc_Impl DEBUG Recorded object @0x1878fe0 with key ow of type Foo(CLID 8101) + in DataObject @0x1878f40 object modifiable when retrieved[m -StoreGateSvc DEBUG overwrite: Recorded object @0x11273f0 with key ow of type Foo(CLID 8101) - in DataObject @0x1127340 +StoreGateSvc_Impl DEBUG overwrite: Recorded object @0x1878b20 with key ow of type Foo(CLID 8101) + in DataObject @0x1879290 object modifiable when retrieved[m -StoreGateSvc DEBUG overwrite: Recorded object @0x1127550 with key ow of type Foo(CLID 8101) - in DataObject @0x1127050 +StoreGateSvc_Impl DEBUG overwrite: Recorded object @0x1878fe0 with key ow of type Foo(CLID 8101) + in DataObject @0x1878f40 object modifiable when retrieved[m -StoreGateSvc DEBUG Recorded object @0x11273f0 with key ow2 of type Foo(CLID 8101) - in DataObject @0x11274d0 +StoreGateSvc_Impl DEBUG Recorded object @0x1878b20 with key ow2 of type Foo(CLID 8101) + in DataObject @0x1879290 object not modifiable when retrieved[m -StoreGateSvc DEBUG overwrite: Recorded object @0x1127720 with key ow2 of type Foo(CLID 8101) - in DataObject @0x1127670 +StoreGateSvc_Impl DEBUG overwrite: Recorded object @0x1879320 with key ow2 of type Foo(CLID 8101) + in DataObject @0x1879660 object not modifiable when retrieved[m -StoreGateSvc DEBUG overwrite: Recorded object @0x11273f0 with key ow2 of type Foo(CLID 8101) - in DataObject @0x1127570 +StoreGateSvc_Impl DEBUG overwrite: Recorded object @0x1878b20 with key ow2 of type Foo(CLID 8101) + in DataObject @0x1879290 object not modifiable when retrieved[m *** StoreGateSvcClient_test records OK *** @@ -131,473 +136,542 @@ StoreGateSvc DEBUG overwrite: Recorded object @0x11273f0 with key ow2 of *** StoreGateSvcClient_test retrieve BEGINS *** Now we expect to see an error message: ----Error Message Starts--->> -[93;1mStoreGateSvc WARNING retrieve(default): No valid proxy for default object +[93;1mStoreGateSvc_Impl WARNING retrieve(default): No valid proxy for default object of type Foo(CLID 8101)[m <<---Error Message Ends------- Now we expect to see an error message: ----Error Message Starts--->> -[93;1mStoreGateSvc WARNING retrieve(default): No valid proxy for default object +[93;1mStoreGateSvc_Impl WARNING retrieve(default): No valid proxy for default object of type NotThere(CLID 8103)[m <<---Error Message Ends------- Now we expect to see an error message: ----Error Message Starts--->> -[93;1mStoreGateSvc WARNING retrieve(default): No valid proxy for default object of type Foo(CLID 8101) +[93;1mStoreGateSvc_Impl WARNING retrieve(default): No valid proxy for default object of type Foo(CLID 8101) Try to use a const DataHandle [m <<---Error Message Ends------- Now we expect to see an error message: ----Error Message Starts--->> -[93;1mStoreGateSvc WARNING retrieve(default): No valid proxy for default object +[93;1mStoreGateSvc_Impl WARNING retrieve(default): No valid proxy for default object of type Foo(CLID 8101)[m <<---Error Message Ends------- -StoreGateSvc DEBUG Retrieved const handle to object UnLocked of type Foo(CLID 8101)[m -StoreGateSvc DEBUG Retrieved const handle to object UnLocked of type Foo(CLID 8101)[m +StoreGateSvc_Impl DEBUG Retrieved const handle to object UnLocked of type Foo(CLID 8101)[m +StoreGateSvc_Impl DEBUG Retrieved const handle to object UnLocked of type Foo(CLID 8101)[m Now we expect to see an error message: ----Error Message Starts--->> -[93;1mStoreGateSvc WARNING retrieve(const): No valid proxy for object UnLockedxxx of type Foo(CLID 8101)[m +[93;1mStoreGateSvc_Impl WARNING retrieve(const): No valid proxy for object UnLockedxxx of type Foo(CLID 8101)[m <<---Error Message Ends------- -StoreGateSvc DEBUG retrieve(range): no object found of type NotThere(CLID 8103)[m -StoreGateSvc DEBUG retrieve(range): Can't set DataHandle for object range of type NotThere(CLID 8103)[m +StoreGateSvc_Impl DEBUG retrieve(range): no object found of type NotThere(CLID 8103)[m +StoreGateSvc_Impl DEBUG retrieve(range): Can't set DataHandle for object range of type NotThere(CLID 8103)[m *** StoreGateSvcClient_test retrieve OK *** *** StoreGateSvcClient_test tryRetrieve BEGINS *** we should see no WARNING message for failed retrieves -StoreGateSvc DEBUG Retrieved const handle to object UnLocked of type Foo(CLID 8101)[m -StoreGateSvc DEBUG Retrieved const handle to object UnLocked of type Foo(CLID 8101)[m +StoreGateSvc_Impl DEBUG Retrieved const handle to object UnLocked of type Foo(CLID 8101)[m +StoreGateSvc_Impl DEBUG Retrieved const handle to object UnLocked of type Foo(CLID 8101)[m *** StoreGateSvcClient_test tryRetrieve OK *** *** StoreGateSvcClient_test symlinks BEGINS *** Now we expect to see an error message: ----Error Message Starts--->> -[93;1mStoreGateSvc WARNING retrieve(default): No valid proxy for default object +[93;1mStoreGateSvc_Impl WARNING retrieve(default): No valid proxy for default object of type Foo(CLID 8101)[m <<---Error Message Ends------- Now we expect to see an error message: ----Error Message Starts--->> -[93;1mStoreGateSvc WARNING addSymLink: no target DataProxy found. Sorry, can't link to a non-existing data object[m +[93;1mStoreGateSvc_Impl WARNING addSymLink: no target DataProxy found. Sorry, can't link to a non-existing data object[m <<---Error Message Ends------- Now we expect to see an error message: ----Error Message Starts--->> -[93;1mStoreGateSvc WARNING addSymLink: no target DataProxy found. Sorry, can't link to a non-existing data object[m +[93;1mStoreGateSvc_Impl WARNING addSymLink: no target DataProxy found. Sorry, can't link to a non-existing data object[m <<---Error Message Ends------- -StoreGateSvc DEBUG Retrieved non-const handle to object UnLocked of type Base(CLID 8100)[m +StoreGateSvc_Impl DEBUG Retrieved non-const handle to object UnLocked of type Base(CLID 8100)[m Now we expect to see an error message: ----Error Message Starts--->> -[93;1mStoreGateSvc WARNING addSymLink: no target DataProxy found. Sorry, can't link to a non-existing data object[m +[93;1mStoreGateSvc_Impl WARNING addSymLink: no target DataProxy found. Sorry, can't link to a non-existing data object[m <<---Error Message Ends------- -StoreGateSvc DEBUG retrieve(default): Retrieved const handle to default object +StoreGateSvc_Impl DEBUG retrieve(default): Retrieved const handle to default object of type Base(CLID 8100)[m -StoreGateSvc DEBUG Retrieved const handle to object UnLocked of type Base(CLID 8100)[m +StoreGateSvc_Impl DEBUG Retrieved const handle to object UnLocked of type Base(CLID 8100)[m Now we expect to see an error message: ----Error Message Starts--->> -[93;1mStoreGateSvc WARNING retrieve(const): No valid proxy for object modSully of type Base(CLID 8100)[m +[93;1mStoreGateSvc_Impl WARNING retrieve(const): No valid proxy for object modSully of type Base(CLID 8100)[m <<---Error Message Ends------- *** StoreGateSvcClient_test symlinks OK *** *** StoreGateSvcClient_test readPrivateCopy BEGINS *** -StoreGateSvc DEBUG Retrieved const handle to object silly of type Foo(CLID 8101)[m -[93;1mStoreGateSvc WARNING SGImplSvc::typeless_readPrivateCopy: did not find object of type Foo with key silly[m +StoreGateSvc_Impl DEBUG Retrieved const handle to object silly of type Foo(CLID 8101)[m +[93;1mStoreGateSvc_Impl WARNING SGImplSvc::typeless_readPrivateCopy: did not find object of type Foo with key silly[m [93;1mSG::fromStorable WARNING null input pointer [m -StoreGateSvc DEBUG Retrieved const handle to object silly of type Foo(CLID 8101)[m +StoreGateSvc_Impl DEBUG Retrieved const handle to object silly of type Foo(CLID 8101)[m *** StoreGateSvcClient_test readPrivateCopy OK *** *** StoreGateSvcClient_test retrievePrivateCopy BEGINS *** -StoreGateSvc DEBUG Retrieved const handle to object silly of type Foo(CLID 8101)[m -StoreGateSvc DEBUG Retrieved const handle to object silly of type Foo(CLID 8101)[m +StoreGateSvc_Impl DEBUG Retrieved const handle to object silly of type Foo(CLID 8101)[m +StoreGateSvc_Impl DEBUG Retrieved const handle to object silly of type Foo(CLID 8101)[m Now we expect to see an error message: ----Error Message Starts--->> -[93;1mStoreGateSvc WARNING retrieve(const): No valid proxy for object silly of type Foo(CLID 8101)[m +[93;1mStoreGateSvc_Impl WARNING retrieve(const): No valid proxy for object silly of type Foo(CLID 8101)[m <<---Error Message Ends------- *** StoreGateSvcClient_test retrievePrivateCopy OK *** *** StoreGateSvcClient_test remove BEGINS *** Now we expect to see an error message: ----Error Message Starts--->> -[93;1mStoreGateSvc WARNING retrieve(default): No valid proxy for default object of type Foo(CLID 8101) +[93;1mStoreGateSvc_Impl WARNING retrieve(default): No valid proxy for default object of type Foo(CLID 8101) Try to use a const DataHandle [m <<---Error Message Ends------- Now we expect to see an error message: ----Error Message Starts--->> -[93;1mStoreGateSvc WARNING retrieve(non-const): No valid proxy for object of type Foo(CLID 8101) +[93;1mStoreGateSvc_Impl WARNING retrieve(non-const): No valid proxy for object of type Foo(CLID 8101) Try to use a const DataHandle[m <<---Error Message Ends------- -StoreGateSvc DEBUG Recorded object @0x1127370 with key pFooKey of type Foo(CLID 8101) - in DataObject @0x1127aa0 +StoreGateSvc_Impl DEBUG Recorded object @0x1875bb0 with key pFooKey of type Foo(CLID 8101) + in DataObject @0x1876920 object modifiable when retrieved[m Now we expect to see an error for invalid proxy >>> -[93;1mStoreGateSvc WARNING retrieve(non-const): No valid proxy for object pFooKey of type Foo(CLID 8101) +[93;1mStoreGateSvc_Impl WARNING retrieve(non-const): No valid proxy for object pFooKey of type Foo(CLID 8101) Try to use a const DataHandle[m end of error >>>>>>>>>>>>> -StoreGateSvc DEBUG Recorded object @0x10ca3b0 with key pFooKey of type Foo(CLID 8101) - in DataObject @0x1127aa0 +StoreGateSvc_Impl DEBUG Recorded object @0x1875bb0 with key pFooKey of type Foo(CLID 8101) + in DataObject @0x1876920 object modifiable when retrieved[m -StoreGateSvc DEBUG Recorded object @0x10ca3b0 with key pFooKey of type Foo(CLID 8101) - in DataObject @0x1127aa0 +StoreGateSvc_Impl DEBUG Recorded object @0x1875bb0 with key pFooKey of type Foo(CLID 8101) + in DataObject @0x1876920 object modifiable when retrieved[m *** StoreGateSvcClient_test removes OK *** *** StoreGateSvcClient_test testCreate BEGINS *** -StoreGateSvc DEBUG Recorded object @0x1127370 with key pCreateFooDefault of type Foo(CLID 8101) - in DataObject @0x1127aa0 +StoreGateSvc_Impl DEBUG Recorded object @0x1875bb0 with key pCreateFooDefault of type Foo(CLID 8101) + in DataObject @0x1876920 object modifiable when retrieved[m -StoreGateSvc DEBUG Recorded object @0x10ca3b0 with key pCreateFoo1 of type Foo(CLID 8101) - in DataObject @0x1127dc0 +StoreGateSvc_Impl DEBUG Recorded object @0x1879320 with key pCreateFoo1 of type Foo(CLID 8101) + in DataObject @0x1879fb0 object modifiable when retrieved[m Now we expect to see an error message: ----Error Message Starts--->> -[93;1mStoreGateSvc WARNING setupProxy:: error setting up proxy for key pCreateFoo1 and clid 8101 - Pre-existing valid DataProxy @0x1127fc0 found in Store for key pCreateFoo1 with clid 8101[m -[93;1mStoreGateSvc WARNING record_impl: Problem setting up the proxy for object @0x1127d70 - recorded with key pCreateFoo1 of type Foo (CLID 8101) in DataObject @0x1126000[m -[97;101;1mStoreGateSvc ERROR create: problem recording created object @0x1127d70 using key pCreateFoo1[m +[93;1mStoreGateSvc_Impl WARNING setupProxy:: error setting up proxy for key pCreateFoo1 and clid 8101 + Pre-existing valid DataProxy @0x1879950 found in Store for key pCreateFoo1 with clid 8101[m +[93;1mStoreGateSvc_Impl WARNING record_impl: Problem setting up the proxy for object @0x187a050 + recorded with key pCreateFoo1 of type Foo (CLID 8101) in DataObject @0x187a280[m +[97;101;1mStoreGateSvc ERROR create: problem recording created object @0x187a050 using key pCreateFoo1[m <<---Error Message Ends------- -StoreGateSvc DEBUG Retrieved non-const handle to object pCreateFoo1 of type Foo(CLID 8101)[m +StoreGateSvc_Impl DEBUG Retrieved non-const handle to object pCreateFoo1 of type Foo(CLID 8101)[m *** StoreGateSvcClient_test testCreate OK *** *** StoreGateSvcClient_test bind BEGINS *** -StoreGateSvc DEBUG Recorded object @0x1127e40 with key fooKey of type Foo(CLID 8101) - in DataObject @0x11283b0 +StoreGateSvc_Impl DEBUG Recorded object @0x1878ed0 with key fooKey of type Foo(CLID 8101) + in DataObject @0x187a460 object modifiable when retrieved[m -StoreGateSvc DEBUG Bound handle 0x7ffdb61b13a0 to proxy 0x1128540[m +StoreGateSvc_Impl DEBUG Bound handle 0x7ffeb61928a0 to proxy 0x187a5f0[m *** StoreGateSvcClient_test bind OK *** Testing dump: -------->> <<<<<<<<<<<<<<<<< Data Store Dump >>>>>>>>>>>>>>> -SGImplSvc(StoreGateSvc)::dump(): +SGImplSvc(StoreGateSvc_Impl)::dump(): Found 1 proxy for ClassID 8100 (Base): - flags: ( valid, UNLOCKED, reset) --- data: 0x1124e50 --- key: UnLocked + flags: ( valid, UNLOCKED, reset) --- data: 0x1876df0 --- key: UnLocked Found 17 proxies for ClassID 8101 (Foo): - flags: ( valid, locked, reset) --- data: 0x1126980 --- key: Const - flags: ( valid, locked, reset) --- data: 0x1126c80 --- key: Const2 - flags: ( valid, locked, reset) --- data: 0x102d780 --- key: Locked - flags: ( valid, locked, DELETE) --- data: 0x1126380 --- key: LockedDelete - flags: ( valid, locked, reset) --- data: 0x1125c80 --- key: LockedReset - flags: ( valid, UNLOCKED, reset) --- data: 0x1124e50 --- key: UnLocked - flags: ( valid, UNLOCKED, DELETE) --- data: 0x1126680 --- key: UnLockedDelete - flags: ( valid, UNLOCKED, reset) --- data: 0x10ee2b0 --- key: UnLockedReset - flags: ( valid, locked, reset) --- data: 0x10e6650 --- key: cpFoo - flags: ( valid, UNLOCKED, reset) --- data: 0x11283b0 --- key: fooKey - flags: ( valid, UNLOCKED, DELETE) --- data: 0x1127050 --- key: ow - flags: ( valid, locked, DELETE) --- data: 0x1127570 --- key: ow2 - flags: ( valid, UNLOCKED, reset) --- data: 0x1127dc0 --- key: pCreateFoo1 - flags: ( valid, UNLOCKED, reset) --- data: 0x1127aa0 --- key: pCreateFooDefault - flags: ( valid, UNLOCKED, reset) --- data: 0x11245b0 --- key: pFoo1 - flags: ( valid, UNLOCKED, reset) --- data: 0x10f0b50 --- key: pFoo2 + flags: ( valid, locked, reset) --- data: 0x18783e0 --- key: Const + flags: ( valid, locked, reset) --- data: 0x1878a90 --- key: Const2 + flags: ( valid, locked, reset) --- data: 0x18771d0 --- key: Locked + flags: ( valid, locked, DELETE) --- data: 0x1877c80 --- key: LockedDelete + flags: ( valid, locked, reset) --- data: 0x1877520 --- key: LockedReset + flags: ( valid, UNLOCKED, reset) --- data: 0x1876df0 --- key: UnLocked + flags: ( valid, UNLOCKED, DELETE) --- data: 0x1878030 --- key: UnLockedDelete + flags: ( valid, UNLOCKED, reset) --- data: 0x18778d0 --- key: UnLockedReset + flags: ( valid, locked, reset) --- data: 0x18761e0 --- key: cpFoo + flags: ( valid, UNLOCKED, reset) --- data: 0x187a460 --- key: fooKey + flags: ( valid, UNLOCKED, DELETE) --- data: 0x1878f40 --- key: ow + flags: ( valid, locked, DELETE) --- data: 0x1879290 --- key: ow2 + flags: ( valid, UNLOCKED, reset) --- data: 0x1879fb0 --- key: pCreateFoo1 + flags: ( valid, UNLOCKED, reset) --- data: 0x1876920 --- key: pCreateFooDefault + flags: ( valid, UNLOCKED, reset) --- data: 0x1875930 --- key: pFoo1 + flags: ( valid, UNLOCKED, reset) --- data: 0x17ec190 --- key: pFoo2 flags: (INVALID, UNLOCKED, reset) --- data: 0 --- key: silly <<<<<<<<<<<<<<<<<<<<<<<<<>>>>>>>>>>>>>>>>>>>>>>>> <<-------- -StoreGateSvc DEBUG Clearing store with forceRemove=1[m -StoreGateSvc VERBOSE DataStore::clearStore() forcing release of DataProxy @0x1125180, recorded with key=UnLocked, CLID=8101, containing data object @0x1124e50 ... -> DONE[m -StoreGateSvc VERBOSE DataStore::clearStore() forcing release of DataProxy @0x1126b60, recorded with key=Const, CLID=8101, containing data object @0x1126980 ... -> DONE[m -StoreGateSvc VERBOSE DataStore::clearStore() forcing release of DataProxy @0x1126e60, recorded with key=Const2, CLID=8101, containing data object @0x1126c80 ... -> DONE[m -StoreGateSvc VERBOSE DataStore::clearStore() forcing release of DataProxy @0x1125280, recorded with key=Locked, CLID=8101, containing data object @0x102d780 ... -> DONE[m -StoreGateSvc VERBOSE DataStore::clearStore() forcing release of DataProxy @0x1126560, recorded with key=LockedDelete, CLID=8101, containing data object @0x1126380 ... -> DONE[m -StoreGateSvc VERBOSE DataStore::clearStore() forcing release of DataProxy @0x1125f00, recorded with key=LockedReset, CLID=8101, containing data object @0x1125c80 ... -> DONE[m -StoreGateSvc VERBOSE DataStore::clearStore() forcing release of DataProxy @0x1125180, recorded with key=UnLocked, CLID=8101, containing data object @0x1124e50 ... -> DONE[m -StoreGateSvc VERBOSE DataStore::clearStore() forcing release of DataProxy @0x1126860, recorded with key=UnLockedDelete, CLID=8101, containing data object @0x1126680 ... -> DONE[m -StoreGateSvc VERBOSE DataStore::clearStore() forcing release of DataProxy @0x11262b0, recorded with key=UnLockedReset, CLID=8101, containing data object @0x10ee2b0 ... -> DONE[m -StoreGateSvc VERBOSE DataStore::clearStore() forcing release of DataProxy @0x10e4e70, recorded with key=cpFoo, CLID=8101, containing data object @0x10e6650 ... -> DONE[m -StoreGateSvc VERBOSE DataStore::clearStore() forcing release of DataProxy @0x1128540, recorded with key=fooKey, CLID=8101, containing data object @0x11283b0 ... -> DONE[m -StoreGateSvc VERBOSE DataStore::clearStore() forcing release of DataProxy @0x1127220, recorded with key=ow, CLID=8101, containing data object @0x1127050 ... -> DONE[m -StoreGateSvc VERBOSE DataStore::clearStore() forcing release of DataProxy @0x11272f0, recorded with key=ow2, CLID=8101, containing data object @0x1127570 ... -> DONE[m -StoreGateSvc VERBOSE DataStore::clearStore() forcing release of DataProxy @0x1127fc0, recorded with key=pCreateFoo1, CLID=8101, containing data object @0x1127dc0 ... -> DONE[m -StoreGateSvc VERBOSE DataStore::clearStore() forcing release of DataProxy @0x1127be0, recorded with key=pCreateFooDefault, CLID=8101, containing data object @0x1127aa0 ... -> DONE[m -StoreGateSvc VERBOSE DataStore::clearStore() forcing release of DataProxy @0x11244e0, recorded with key=pFoo1, CLID=8101, containing data object @0x11245b0 ... -> DONE[m -StoreGateSvc VERBOSE DataStore::clearStore() forcing release of DataProxy @0x1124a50, recorded with key=pFoo2, CLID=8101, containing data object @0x10f0b50 ... -> DONE[m -StoreGateSvc VERBOSE DataStore::clearStore() forcing release of DataProxy @0x10eb590, recorded with key=silly, CLID=8101, containing data object @0 ... -> DONE[m -StoreGateSvc DEBUG Recorded object @0x1125c50 with key d1 of type D1(CLID 8112) - in DataObject @0x10f23f0 - object modifiable when retrieved[m -StoreGateSvc DEBUG Retrieved non-const handle to object d1 of type B1(CLID 8111)[m -0x1122cb0 -0x1122aa0StoreGateSvc -StoreGateSvc DEBUG Retrieved non-const handle to object d1Alias of type D1(CLID 8112)[m -StoreGateSvc DEBUG Retrieved non-const handle to object d1AnotherAlias of type D1(CLID 8112)[m -StoreGateSvc DEBUG Recorded object @0x1128610 with key d2 of type D1(CLID 8112) - in DataObject @0x11272a0 - object modifiable when retrieved[m -StoreGateSvc DEBUG Retrieved non-const handle to object d2 of type D1(CLID 8112)[m -StoreGateSvc DEBUG Retrieved non-const handle to object d1Alias of type D1(CLID 8112)[m +StoreGateSvc_Impl DEBUG Clearing store with forceRemove=1[m +StoreGateSvc_Impl VERBOSE DataStore::clearStore() forcing release of DataProxy @0x1876fd0, recorded with key=UnLocked, CLID=8101, containing data object @0x1876df0 ... -> DONE[m +StoreGateSvc_Impl VERBOSE DataStore::clearStore() forcing release of DataProxy @0x18786e0, recorded with key=Const, CLID=8101, containing data object @0x18783e0 ... -> DONE[m +StoreGateSvc_Impl VERBOSE DataStore::clearStore() forcing release of DataProxy @0x1878cd0, recorded with key=Const2, CLID=8101, containing data object @0x1878a90 ... -> DONE[m +StoreGateSvc_Impl VERBOSE DataStore::clearStore() forcing release of DataProxy @0x18773b0, recorded with key=Locked, CLID=8101, containing data object @0x18771d0 ... -> DONE[m +StoreGateSvc_Impl VERBOSE DataStore::clearStore() forcing release of DataProxy @0x1877ec0, recorded with key=LockedDelete, CLID=8101, containing data object @0x1877c80 ... -> DONE[m +StoreGateSvc_Impl VERBOSE DataStore::clearStore() forcing release of DataProxy @0x1877760, recorded with key=LockedReset, CLID=8101, containing data object @0x1877520 ... -> DONE[m +StoreGateSvc_Impl VERBOSE DataStore::clearStore() forcing release of DataProxy @0x1876fd0, recorded with key=UnLocked, CLID=8101, containing data object @0x1876df0 ... -> DONE[m +StoreGateSvc_Impl VERBOSE DataStore::clearStore() forcing release of DataProxy @0x1878270, recorded with key=UnLockedDelete, CLID=8101, containing data object @0x1878030 ... -> DONE[m +StoreGateSvc_Impl VERBOSE DataStore::clearStore() forcing release of DataProxy @0x1877b10, recorded with key=UnLockedReset, CLID=8101, containing data object @0x18778d0 ... -> DONE[m +StoreGateSvc_Impl VERBOSE DataStore::clearStore() forcing release of DataProxy @0x17b88c0, recorded with key=cpFoo, CLID=8101, containing data object @0x18761e0 ... -> DONE[m +StoreGateSvc_Impl VERBOSE DataStore::clearStore() forcing release of DataProxy @0x187a5f0, recorded with key=fooKey, CLID=8101, containing data object @0x187a460 ... -> DONE[m +StoreGateSvc_Impl VERBOSE DataStore::clearStore() forcing release of DataProxy @0x1879120, recorded with key=ow, CLID=8101, containing data object @0x1878f40 ... -> DONE[m +StoreGateSvc_Impl VERBOSE DataStore::clearStore() forcing release of DataProxy @0x1879430, recorded with key=ow2, CLID=8101, containing data object @0x1879290 ... -> DONE[m +StoreGateSvc_Impl VERBOSE DataStore::clearStore() forcing release of DataProxy @0x1879950, recorded with key=pCreateFoo1, CLID=8101, containing data object @0x1879fb0 ... -> DONE[m +StoreGateSvc_Impl VERBOSE DataStore::clearStore() forcing release of DataProxy @0x1879800, recorded with key=pCreateFooDefault, CLID=8101, containing data object @0x1876920 ... -> DONE[m +StoreGateSvc_Impl VERBOSE DataStore::clearStore() forcing release of DataProxy @0x1875ce0, recorded with key=pFoo1, CLID=8101, containing data object @0x1875930 ... -> DONE[m +StoreGateSvc_Impl VERBOSE DataStore::clearStore() forcing release of DataProxy @0x18760a0, recorded with key=pFoo2, CLID=8101, containing data object @0x17ec190 ... -> DONE[m +StoreGateSvc_Impl VERBOSE DataStore::clearStore() forcing release of DataProxy @0x1876ab0, recorded with key=silly, CLID=8101, containing data object @0 ... -> DONE[m +StoreGateSvc_Impl DEBUG Recorded object @0x1878340 with key d1 of type D1(CLID 8112) + in DataObject @0x1876b30 + object modifiable when retrieved[m +StoreGateSvc_Impl DEBUG Retrieved non-const handle to object d1 of type B1(CLID 8111)[m +0x18747e0 +0x1418150StoreGateSvc +StoreGateSvc_Impl DEBUG Retrieved non-const handle to object d1Alias of type D1(CLID 8112)[m +StoreGateSvc_Impl DEBUG Retrieved non-const handle to object d1AnotherAlias of type D1(CLID 8112)[m +StoreGateSvc_Impl DEBUG Recorded object @0x1878da0 with key d2 of type D1(CLID 8112) + in DataObject @0x18791a0 + object modifiable when retrieved[m +StoreGateSvc_Impl DEBUG Retrieved non-const handle to object d2 of type D1(CLID 8112)[m +StoreGateSvc_Impl DEBUG Retrieved non-const handle to object d1Alias of type D1(CLID 8112)[m Found key = d1Alias for object D1 in StoreGate Found key = d2 for object D1 in StoreGate -StoreGateSvc DEBUG Retrieved non-const handle to object dd of type D1(CLID 8112)[m -StoreGateSvc DEBUG Retrieved non-const handle to object dd of type B1(CLID 8111)[m -StoreGateSvc DEBUG Clearing store with forceRemove=0[m -StoreGateSvc VERBOSE DataStore::clearStore() requesting release of DataProxy @0x1126f80, recorded with key=d2, CLID=8112, containing data object @0x11272a0 ... -> DONE[m -StoreGateSvc VERBOSE DataStore::clearStore() requesting release of DataProxy @0x11244e0, recorded with key=dd, CLID=8112, containing data object @0x11275f0 ... -> DONE[m -StoreGateSvc VERBOSE DataStore::clearStore() requesting release of DataProxy @0x1126f80, recorded with key=d2, CLID=8112, containing data object @0x11272a0 ... -> DONE[m -StoreGateSvc VERBOSE DataStore::clearStore() requesting release of DataProxy @0x1126f80, recorded with key=d2, CLID=8112, containing data object @0x11272a0 ... -> DONE[m -StoreGateSvc VERBOSE DataStore::clearStore() requesting release of DataProxy @0x1124a50, recorded with key=dd, CLID=8112, containing data object @0x10f0b50 ... -> DONE[m -StoreGateSvc DEBUG Retrieved non-const handle to object dd of type D1(CLID 8112)[m -StoreGateSvc DEBUG Retrieved non-const handle to object dd of type B1(CLID 8111)[m -StoreGateSvc DEBUG Clearing store with forceRemove=1[m +StoreGateSvc_Impl DEBUG Retrieved non-const handle to object dd of type D1(CLID 8112)[m +StoreGateSvc_Impl DEBUG Retrieved non-const handle to object dd of type B1(CLID 8111)[m +StoreGateSvc_Impl DEBUG Clearing store with forceRemove=0[m +StoreGateSvc_Impl VERBOSE DataStore::clearStore() requesting release of DataProxy @0x1875ce0, recorded with key=d2, CLID=8112, containing data object @0x18791a0 ... -> DONE[m +StoreGateSvc_Impl VERBOSE DataStore::clearStore() requesting release of DataProxy @0x1879800, recorded with key=dd, CLID=8112, containing data object @0x18795a0 ... -> DONE[m +StoreGateSvc_Impl VERBOSE DataStore::clearStore() requesting release of DataProxy @0x1875ce0, recorded with key=d2, CLID=8112, containing data object @0x18791a0 ... -> DONE[m +StoreGateSvc_Impl VERBOSE DataStore::clearStore() requesting release of DataProxy @0x1875ce0, recorded with key=d2, CLID=8112, containing data object @0x18791a0 ... -> DONE[m +StoreGateSvc_Impl VERBOSE DataStore::clearStore() requesting release of DataProxy @0x18760a0, recorded with key=dd, CLID=8112, containing data object @0x17ec190 ... -> DONE[m +StoreGateSvc_Impl DEBUG Retrieved non-const handle to object dd of type D1(CLID 8112)[m +StoreGateSvc_Impl DEBUG Retrieved non-const handle to object dd of type B1(CLID 8111)[m +StoreGateSvc_Impl DEBUG Clearing store with forceRemove=1[m *** StoreGateSvcClient_test transientSwap BEGINS *** -StoreGateSvc DEBUG Recorded object @0x10dfb70 with key pSwapFoo1 of type Foo(CLID 8101) - in DataObject @0x10e27d0 +StoreGateSvc_Impl DEBUG Recorded object @0x1875bb0 with key pSwapFoo1 of type Foo(CLID 8101) + in DataObject @0x187a670 object modifiable when retrieved[m -StoreGateSvc DEBUG Recorded object @0x1127550 with key pSwapFoo2 of type Foo(CLID 8101) - in DataObject @0x10f0b50 +StoreGateSvc_Impl DEBUG Recorded object @0x1865df0 with key pSwapFoo2 of type Foo(CLID 8101) + in DataObject @0x1879fb0 object modifiable when retrieved[m -StoreGateSvc DEBUG Retrieved non-const handle to object pSwapFoo1 of type Foo(CLID 8101)[m -StoreGateSvc DEBUG Retrieved non-const handle to object pSwapFoo2 of type Foo(CLID 8101)[m +StoreGateSvc_Impl DEBUG Retrieved non-const handle to object pSwapFoo1 of type Foo(CLID 8101)[m +StoreGateSvc_Impl DEBUG Retrieved non-const handle to object pSwapFoo2 of type Foo(CLID 8101)[m *** StoreGateSvcClient_test transientSwap OK *** *** StoreGateSvcClient_test VersionedKey BEGINS *** -StoreGateSvc DEBUG Recorded object @0x1127460 with key aVersObj of type Foo(CLID 8101) - in DataObject @0x1128250 +StoreGateSvc_Impl DEBUG Recorded object @0x1879ea0 with key aVersObj of type Foo(CLID 8101) + in DataObject @0x1876920 object modifiable when retrieved[m -StoreGateSvc DEBUG Retrieved non-const handle to object aVersObj of type Foo(CLID 8101)[m -StoreGateSvc DEBUG Recorded object @0x104d070 with key ;77;aVersObj of type Foo(CLID 8101) - in DataObject @0x11275c0 +StoreGateSvc_Impl DEBUG Retrieved non-const handle to object aVersObj of type Foo(CLID 8101)[m +StoreGateSvc_Impl DEBUG Recorded object @0x1875de0 with key ;77;aVersObj of type Foo(CLID 8101) + in DataObject @0x1877b90 object modifiable when retrieved[m -StoreGateSvc DEBUG Retrieved non-const handle to object ;77;aVersObj of type Foo(CLID 8101)[m -StoreGateSvc DEBUG Retrieved non-const handle to object aVersObj of type Foo(CLID 8101)[m -StoreGateSvc DEBUG Retrieved non-const handle to object ;00;aVersObj of type Foo(CLID 8101)[m -StoreGateSvc DEBUG Recorded object @0x11282a0 with key ;88;aVersObj of type Foo(CLID 8101) - in DataObject @0x1127000 +StoreGateSvc_Impl DEBUG Retrieved non-const handle to object ;77;aVersObj of type Foo(CLID 8101)[m +StoreGateSvc_Impl DEBUG Retrieved non-const handle to object aVersObj of type Foo(CLID 8101)[m +StoreGateSvc_Impl DEBUG Retrieved non-const handle to object ;00;aVersObj of type Foo(CLID 8101)[m +StoreGateSvc_Impl DEBUG Recorded object @0x1879b10 with key ;88;aVersObj of type Foo(CLID 8101) + in DataObject @0x1877520 object modifiable when retrieved[m -StoreGateSvc DEBUG Retrieved non-const handle to object ;88;aVersObj of type Foo(CLID 8101)[m +StoreGateSvc_Impl DEBUG Retrieved non-const handle to object ;88;aVersObj of type Foo(CLID 8101)[m Now we expect to see an error message: ----Error Message Starts--->> -[93;1mStoreGateSvc WARNING setupProxy:: error setting up proxy for key ;88;aVersObj and clid 8101 - Pre-existing valid DataProxy @0x11279f0 found in Store for key ;88;aVersObj with clid 8101[m -[93;1mStoreGateSvc WARNING record_impl: Problem setting up the proxy for object @0x1125640 - recorded with key ;88;aVersObj of type Foo (CLID 8101) in DataObject @0x11255b0[m +[93;1mStoreGateSvc_Impl WARNING setupProxy:: error setting up proxy for key ;88;aVersObj and clid 8101 + Pre-existing valid DataProxy @0x1879430 found in Store for key ;88;aVersObj with clid 8101[m +[93;1mStoreGateSvc_Impl WARNING record_impl: Problem setting up the proxy for object @0x18796f0 + recorded with key ;88;aVersObj of type Foo (CLID 8101) in DataObject @0x1877430[m <<---Error Message Ends------- -StoreGateSvc DEBUG Recorded object @0x10ca3b0 with key ;66;aVersObj of type Foo(CLID 8101) - in DataObject @0x1127fd0 +StoreGateSvc_Impl DEBUG Recorded object @0x1877220 with key ;66;aVersObj of type Foo(CLID 8101) + in DataObject @0x18771d0 object modifiable when retrieved[m -StoreGateSvc DEBUG Retrieved non-const handle to object aVersObj of type Foo(CLID 8101)[m +StoreGateSvc_Impl DEBUG Retrieved non-const handle to object aVersObj of type Foo(CLID 8101)[m *** StoreGateSvcClient_test VersionedKey OK *** -StoreGateSvc DEBUG Clearing store with forceRemove=1[m -StoreGateSvc VERBOSE DataStore::clearStore() forcing release of DataProxy @0x1127be0, recorded with key=aVersObj, CLID=8101, containing data object @0x1128250 ... -> DONE[m -StoreGateSvc VERBOSE DataStore::clearStore() forcing release of DataProxy @0x1126e90, recorded with key=;66;aVersObj, CLID=8101, containing data object @0x1127fd0 ... -> DONE[m -StoreGateSvc VERBOSE DataStore::clearStore() forcing release of DataProxy @0x1124980, recorded with key=;77;aVersObj, CLID=8101, containing data object @0x11275c0 ... -> DONE[m -StoreGateSvc VERBOSE DataStore::clearStore() forcing release of DataProxy @0x11279f0, recorded with key=;88;aVersObj, CLID=8101, containing data object @0x1127000 ... -> DONE[m -StoreGateSvc VERBOSE DataStore::clearStore() forcing release of DataProxy @0x1126e90, recorded with key=;66;aVersObj, CLID=8101, containing data object @0x1127fd0 ... -> DONE[m -StoreGateSvc VERBOSE DataStore::clearStore() forcing release of DataProxy @0x11244e0, recorded with key=pSwapFoo1, CLID=8101, containing data object @0x10f0b50 ... -> DONE[m -StoreGateSvc VERBOSE DataStore::clearStore() forcing release of DataProxy @0x1124a50, recorded with key=pSwapFoo2, CLID=8101, containing data object @0x10e27d0 ... -> DONE[m +StoreGateSvc_Impl DEBUG Clearing store with forceRemove=1[m +StoreGateSvc_Impl VERBOSE DataStore::clearStore() forcing release of DataProxy @0x1875ce0, recorded with key=aVersObj, CLID=8101, containing data object @0x1876920 ... -> DONE[m +StoreGateSvc_Impl VERBOSE DataStore::clearStore() forcing release of DataProxy @0x1879120, recorded with key=;66;aVersObj, CLID=8101, containing data object @0x18771d0 ... -> DONE[m +StoreGateSvc_Impl VERBOSE DataStore::clearStore() forcing release of DataProxy @0x1879950, recorded with key=;77;aVersObj, CLID=8101, containing data object @0x1877b90 ... -> DONE[m +StoreGateSvc_Impl VERBOSE DataStore::clearStore() forcing release of DataProxy @0x1879430, recorded with key=;88;aVersObj, CLID=8101, containing data object @0x1877520 ... -> DONE[m +StoreGateSvc_Impl VERBOSE DataStore::clearStore() forcing release of DataProxy @0x1879120, recorded with key=;66;aVersObj, CLID=8101, containing data object @0x18771d0 ... -> DONE[m +StoreGateSvc_Impl VERBOSE DataStore::clearStore() forcing release of DataProxy @0x1879800, recorded with key=pSwapFoo1, CLID=8101, containing data object @0x1879fb0 ... -> DONE[m +StoreGateSvc_Impl VERBOSE DataStore::clearStore() forcing release of DataProxy @0x18760a0, recorded with key=pSwapFoo2, CLID=8101, containing data object @0x187a670 ... -> DONE[m *** test_DVL_conversions -StoreGateSvc DEBUG Recorded object @0x1125d80 with key contd of type CV(CLID 82734625) - in DataObject @0x1124a50 - object modifiable when retrieved[m -StoreGateSvc DEBUG Retrieved non-const handle to object contd of type DataVector<C>(CLID 82734623)[m -StoreGateSvc DEBUG Retrieved non-const handle to object contd of type DataVector<B>(CLID 82734621)[m -StoreGateSvc DEBUG Retrieved non-const handle to object contd of type DataVector<A>(CLID 82734619)[m -StoreGateSvc DEBUG Retrieved non-const handle to object contd of type DataVector<A>(CLID 82734619)[m -StoreGateSvc DEBUG Recorded object @0x1126050 with key contd of type CL(CLID 82734626) - in DataObject @0x1126e90 - object modifiable when retrieved[m -StoreGateSvc DEBUG Retrieved non-const handle to object contd of type DataList<C>(CLID 82734624)[m -StoreGateSvc DEBUG Retrieved non-const handle to object contd of type DataList<B>(CLID 82734622)[m -StoreGateSvc DEBUG Retrieved non-const handle to object contd of type DataList<A>(CLID 82734620)[m -StoreGateSvc DEBUG Retrieved non-const handle to object contd of type DataList<A>(CLID 82734620)[m +StoreGateSvc_Impl DEBUG Recorded object @0x187acb0 with key contd of type CV(CLID 82734625) + in DataObject @0x18760a0 + object modifiable when retrieved[m +StoreGateSvc_Impl DEBUG Retrieved non-const handle to object contd of type DataVector<C>(CLID 82734623)[m +StoreGateSvc_Impl DEBUG Retrieved non-const handle to object contd of type DataVector<B>(CLID 82734621)[m +StoreGateSvc_Impl DEBUG Retrieved non-const handle to object contd of type DataVector<A>(CLID 82734619)[m +StoreGateSvc_Impl DEBUG Retrieved non-const handle to object contd of type DataVector<A>(CLID 82734619)[m +StoreGateSvc_Impl DEBUG Recorded object @0x1878ae0 with key contd of type CL(CLID 82734626) + in DataObject @0x1879120 + object modifiable when retrieved[m +StoreGateSvc_Impl DEBUG Retrieved non-const handle to object contd of type DataList<C>(CLID 82734624)[m +StoreGateSvc_Impl DEBUG Retrieved non-const handle to object contd of type DataList<B>(CLID 82734622)[m +StoreGateSvc_Impl DEBUG Retrieved non-const handle to object contd of type DataList<A>(CLID 82734620)[m +StoreGateSvc_Impl DEBUG Retrieved non-const handle to object contd of type DataList<A>(CLID 82734620)[m *** test_const_DVL -StoreGateSvc DEBUG Recorded object @0x1125090 with key dvl of type CV(CLID 82734625) - in DataObject @0x1124980 +StoreGateSvc_Impl DEBUG Recorded object @0x187b580 with key dvl of type CV(CLID 82734625) + in DataObject @0x1879950 object not modifiable when retrieved[m -[93;1mStoreGateSvc WARNING retrieve(non-const): No valid proxy for object dvl of type CV(CLID 82734625) +[93;1mStoreGateSvc_Impl WARNING retrieve(non-const): No valid proxy for object dvl of type CV(CLID 82734625) Try to use a const DataHandle[m -StoreGateSvc DEBUG Retrieved const handle to object dvl of type CV(CLID 82734625)[m -StoreGateSvc DEBUG Recorded object @0x1128690 with key dvl2 of type CV(CLID 82734625) - in DataObject @0x1128590 +StoreGateSvc_Impl DEBUG Retrieved const handle to object dvl of type CV(CLID 82734625)[m +StoreGateSvc_Impl DEBUG Recorded object @0x187bbb0 with key dvl2 of type CV(CLID 82734625) + in DataObject @0x187a5f0 object not modifiable when retrieved[m -StoreGateSvc DEBUG Retrieved const handle to object dvl2 of type CV(CLID 82734625)[m -StoreGateSvc DEBUG Recorded object @0x1128a20 with key dvl of type CL(CLID 82734626) - in DataObject @0x1128e60 +StoreGateSvc_Impl DEBUG Retrieved const handle to object dvl2 of type CV(CLID 82734625)[m +StoreGateSvc_Impl DEBUG Recorded object @0x1878430 with key dvl of type CL(CLID 82734626) + in DataObject @0x1877b10 object not modifiable when retrieved[m -[93;1mStoreGateSvc WARNING retrieve(non-const): No valid proxy for object dvl of type CL(CLID 82734626) +[93;1mStoreGateSvc_Impl WARNING retrieve(non-const): No valid proxy for object dvl of type CL(CLID 82734626) Try to use a const DataHandle[m -StoreGateSvc DEBUG Retrieved const handle to object dvl of type CL(CLID 82734626)[m -StoreGateSvc DEBUG Recorded object @0x1129350 with key dvl2 of type CL(CLID 82734626) - in DataObject @0x11293d0 +StoreGateSvc_Impl DEBUG Retrieved const handle to object dvl of type CL(CLID 82734626)[m +StoreGateSvc_Impl DEBUG Recorded object @0x180f230 with key dvl2 of type CL(CLID 82734626) + in DataObject @0x1876fd0 object not modifiable when retrieved[m -StoreGateSvc DEBUG Retrieved const handle to object dvl2 of type CL(CLID 82734626)[m +StoreGateSvc_Impl DEBUG Retrieved const handle to object dvl2 of type CL(CLID 82734626)[m *** test_copy_conversions -StoreGateSvc DEBUG Recorded object @0x11299f0 with key x of type Athena_test::X(CLID 82734627) - in DataObject @0x1129960 +StoreGateSvc_Impl DEBUG Recorded object @0x187cb60 with key x of type Athena_test::X(CLID 82734627) + in DataObject @0x187cb10 object modifiable when retrieved[m -StoreGateSvc DEBUG Retrieved non-const handle to object x of type Athena_test::Y(CLID 82734628)[m +StoreGateSvc_Impl DEBUG Retrieved non-const handle to object x of type Athena_test::Y(CLID 82734628)[m [93;1mSG::DataProxy_castWARNING Request for a non-const object via copying conversion; requested CLID = 82734628, proxy primary ID is 82734627[m -StoreGateSvc DEBUG Retrieved const handle to object x of type Athena_test::Y(CLID 82734628)[m -[93;1mStoreGateSvc WARNING retrieve(const): No valid proxy for object x of type Athena_test::A(CLID 82734609)[m +StoreGateSvc_Impl DEBUG Retrieved const handle to object x of type Athena_test::Y(CLID 82734628)[m +[93;1mStoreGateSvc_Impl WARNING retrieve(const): No valid proxy for object x of type Athena_test::A(CLID 82734609)[m *** StoreGateSvcClient_test Keys BEGINS *** -StoreGateSvc DEBUG Clearing store with forceRemove=0[m -StoreGateSvc VERBOSE DataStore::clearStore() requesting release of DataProxy @0x11244e0, recorded with key=contd, CLID=82734625, containing data object @0x1124a50 ... -> DONE[m -StoreGateSvc VERBOSE DataStore::clearStore() requesting release of DataProxy @0x11279f0, recorded with key=contd, CLID=82734626, containing data object @0x1126e90 ... -> DONE[m -StoreGateSvc VERBOSE DataStore::clearStore() requesting release of DataProxy @0x11244e0, recorded with key=contd, CLID=82734625, containing data object @0 ... -> DONE[m -StoreGateSvc VERBOSE DataStore::clearStore() requesting release of DataProxy @0x1127be0, recorded with key=dvl, CLID=82734625, containing data object @0x1124980 ... -> DONE[m -StoreGateSvc VERBOSE DataStore::clearStore() requesting release of DataProxy @0x1128610, recorded with key=dvl2, CLID=82734625, containing data object @0x1128590 ... -> DONE[m -StoreGateSvc VERBOSE DataStore::clearStore() requesting release of DataProxy @0x11279f0, recorded with key=contd, CLID=82734626, containing data object @0 ... -> DONE[m -StoreGateSvc VERBOSE DataStore::clearStore() requesting release of DataProxy @0x1129000, recorded with key=dvl, CLID=82734626, containing data object @0x1128e60 ... -> DONE[m -StoreGateSvc VERBOSE DataStore::clearStore() requesting release of DataProxy @0x1129590, recorded with key=dvl2, CLID=82734626, containing data object @0x11293d0 ... -> DONE[m -StoreGateSvc VERBOSE DataStore::clearStore() requesting release of DataProxy @0x11244e0, recorded with key=contd, CLID=82734625, containing data object @0 ... -> DONE[m -StoreGateSvc VERBOSE DataStore::clearStore() requesting release of DataProxy @0x1127be0, recorded with key=dvl, CLID=82734625, containing data object @0 ... -> DONE[m -StoreGateSvc VERBOSE DataStore::clearStore() requesting release of DataProxy @0x1128610, recorded with key=dvl2, CLID=82734625, containing data object @0 ... -> DONE[m -StoreGateSvc VERBOSE DataStore::clearStore() requesting release of DataProxy @0x11279f0, recorded with key=contd, CLID=82734626, containing data object @0 ... -> DONE[m -StoreGateSvc VERBOSE DataStore::clearStore() requesting release of DataProxy @0x1129000, recorded with key=dvl, CLID=82734626, containing data object @0 ... -> DONE[m -StoreGateSvc VERBOSE DataStore::clearStore() requesting release of DataProxy @0x1129590, recorded with key=dvl2, CLID=82734626, containing data object @0 ... -> DONE[m -StoreGateSvc VERBOSE DataStore::clearStore() requesting release of DataProxy @0x11244e0, recorded with key=contd, CLID=82734625, containing data object @0 ... -> DONE[m -StoreGateSvc VERBOSE DataStore::clearStore() requesting release of DataProxy @0x1127be0, recorded with key=dvl, CLID=82734625, containing data object @0 ... -> DONE[m -StoreGateSvc VERBOSE DataStore::clearStore() requesting release of DataProxy @0x1128610, recorded with key=dvl2, CLID=82734625, containing data object @0 ... -> DONE[m -StoreGateSvc VERBOSE DataStore::clearStore() requesting release of DataProxy @0x11279f0, recorded with key=contd, CLID=82734626, containing data object @0 ... -> DONE[m -StoreGateSvc VERBOSE DataStore::clearStore() requesting release of DataProxy @0x1129000, recorded with key=dvl, CLID=82734626, containing data object @0 ... -> DONE[m -StoreGateSvc VERBOSE DataStore::clearStore() requesting release of DataProxy @0x1129590, recorded with key=dvl2, CLID=82734626, containing data object @0 ... -> DONE[m -StoreGateSvc VERBOSE DataStore::clearStore() requesting release of DataProxy @0x1129b50, recorded with key=x, CLID=82734627, containing data object @0x1129960 ... -> DONE[m -StoreGateSvc VERBOSE DataStore::clearStore() requesting release of DataProxy @0x1129b50, recorded with key=x, CLID=82734627, containing data object @0 ... -> DONE[m -StoreGateSvc DEBUG Recorded object @0x11299f0 with key LockReset of type Foo(CLID 8101) - in DataObject @0x1129960 +StoreGateSvc_Impl DEBUG Clearing store with forceRemove=0[m +StoreGateSvc_Impl VERBOSE DataStore::clearStore() requesting release of DataProxy @0x1879800, recorded with key=contd, CLID=82734625, containing data object @0x18760a0 ... -> DONE[m +StoreGateSvc_Impl VERBOSE DataStore::clearStore() requesting release of DataProxy @0x1879430, recorded with key=contd, CLID=82734626, containing data object @0x1879120 ... -> DONE[m +StoreGateSvc_Impl VERBOSE DataStore::clearStore() requesting release of DataProxy @0x1879800, recorded with key=contd, CLID=82734625, containing data object @0 ... -> DONE[m +StoreGateSvc_Impl VERBOSE DataStore::clearStore() requesting release of DataProxy @0x1875ce0, recorded with key=dvl, CLID=82734625, containing data object @0x1879950 ... -> DONE[m +StoreGateSvc_Impl VERBOSE DataStore::clearStore() requesting release of DataProxy @0x17b88c0, recorded with key=dvl2, CLID=82734625, containing data object @0x187a5f0 ... -> DONE[m +StoreGateSvc_Impl VERBOSE DataStore::clearStore() requesting release of DataProxy @0x1879430, recorded with key=contd, CLID=82734626, containing data object @0 ... -> DONE[m +StoreGateSvc_Impl VERBOSE DataStore::clearStore() requesting release of DataProxy @0x1878270, recorded with key=dvl, CLID=82734626, containing data object @0x1877b10 ... -> DONE[m +StoreGateSvc_Impl VERBOSE DataStore::clearStore() requesting release of DataProxy @0x1877760, recorded with key=dvl2, CLID=82734626, containing data object @0x1876fd0 ... -> DONE[m +StoreGateSvc_Impl VERBOSE DataStore::clearStore() requesting release of DataProxy @0x1879800, recorded with key=contd, CLID=82734625, containing data object @0 ... -> DONE[m +StoreGateSvc_Impl VERBOSE DataStore::clearStore() requesting release of DataProxy @0x1875ce0, recorded with key=dvl, CLID=82734625, containing data object @0 ... -> DONE[m +StoreGateSvc_Impl VERBOSE DataStore::clearStore() requesting release of DataProxy @0x17b88c0, recorded with key=dvl2, CLID=82734625, containing data object @0 ... -> DONE[m +StoreGateSvc_Impl VERBOSE DataStore::clearStore() requesting release of DataProxy @0x1879430, recorded with key=contd, CLID=82734626, containing data object @0 ... -> DONE[m +StoreGateSvc_Impl VERBOSE DataStore::clearStore() requesting release of DataProxy @0x1878270, recorded with key=dvl, CLID=82734626, containing data object @0 ... -> DONE[m +StoreGateSvc_Impl VERBOSE DataStore::clearStore() requesting release of DataProxy @0x1877760, recorded with key=dvl2, CLID=82734626, containing data object @0 ... -> DONE[m +StoreGateSvc_Impl VERBOSE DataStore::clearStore() requesting release of DataProxy @0x1879800, recorded with key=contd, CLID=82734625, containing data object @0 ... -> DONE[m +StoreGateSvc_Impl VERBOSE DataStore::clearStore() requesting release of DataProxy @0x1875ce0, recorded with key=dvl, CLID=82734625, containing data object @0 ... -> DONE[m +StoreGateSvc_Impl VERBOSE DataStore::clearStore() requesting release of DataProxy @0x17b88c0, recorded with key=dvl2, CLID=82734625, containing data object @0 ... -> DONE[m +StoreGateSvc_Impl VERBOSE DataStore::clearStore() requesting release of DataProxy @0x1879430, recorded with key=contd, CLID=82734626, containing data object @0 ... -> DONE[m +StoreGateSvc_Impl VERBOSE DataStore::clearStore() requesting release of DataProxy @0x1878270, recorded with key=dvl, CLID=82734626, containing data object @0 ... -> DONE[m +StoreGateSvc_Impl VERBOSE DataStore::clearStore() requesting release of DataProxy @0x1877760, recorded with key=dvl2, CLID=82734626, containing data object @0 ... -> DONE[m +StoreGateSvc_Impl VERBOSE DataStore::clearStore() requesting release of DataProxy @0x1877ec0, recorded with key=x, CLID=82734627, containing data object @0x187cb10 ... -> DONE[m +StoreGateSvc_Impl VERBOSE DataStore::clearStore() requesting release of DataProxy @0x1877ec0, recorded with key=x, CLID=82734627, containing data object @0 ... -> DONE[m +StoreGateSvc_Impl DEBUG Recorded object @0x187cfb0 with key LockReset of type Foo(CLID 8101) + in DataObject @0x187cb10 object not modifiable when retrieved[m -StoreGateSvc DEBUG Recorded object @0x1129940 with key UnLockReset of type Foo(CLID 8101) - in DataObject @0x1128a80 +StoreGateSvc_Impl DEBUG Recorded object @0x187caf0 with key UnLockReset of type Foo(CLID 8101) + in DataObject @0x187bec0 object modifiable when retrieved[m -StoreGateSvc DEBUG Recorded object @0x1129870 with key LockDelete of type Foo(CLID 8101) - in DataObject @0x1126af0 +StoreGateSvc_Impl DEBUG Recorded object @0x187cb60 with key LockDelete of type Foo(CLID 8101) + in DataObject @0x187ae50 object not modifiable when retrieved[m -StoreGateSvc DEBUG Recorded object @0x1129830 with key UnLockDelete of type Foo(CLID 8101) - in DataObject @0x112a020 - object modifiable when retrieved[m -StoreGateSvc DEBUG Clearing store with forceRemove=0[m -StoreGateSvc VERBOSE DataStore::clearStore() requesting release of DataProxy @0x1128590, recorded with key=LockDelete, CLID=8101, containing data object @0x1126af0 ... -> DONE[m -StoreGateSvc VERBOSE DataStore::clearStore() requesting release of DataProxy @0x11293d0, recorded with key=LockReset, CLID=8101, containing data object @0x1129960 ... -> DONE[m -StoreGateSvc VERBOSE DataStore::clearStore() requesting release of DataProxy @0x1124980, recorded with key=UnLockDelete, CLID=8101, containing data object @0x112a020 ... -> DONE[m -StoreGateSvc VERBOSE DataStore::clearStore() requesting release of DataProxy @0x1128e60, recorded with key=UnLockReset, CLID=8101, containing data object @0x1128a80 ... -> DONE[m -StoreGateSvc VERBOSE DataStore::clearStore() requesting release of DataProxy @0x1124980, recorded with key=UnLockDelete, CLID=8101, containing data object @0x112a020 ... -> DONE[m -StoreGateSvc VERBOSE DataStore::clearStore() requesting release of DataProxy @0x11244e0, recorded with key=contd, CLID=82734625, containing data object @0 ... -> DONE[m -StoreGateSvc VERBOSE DataStore::clearStore() requesting release of DataProxy @0x11279f0, recorded with key=contd, CLID=82734626, containing data object @0 ... -> DONE[m -StoreGateSvc VERBOSE DataStore::clearStore() requesting release of DataProxy @0x11244e0, recorded with key=contd, CLID=82734625, containing data object @0 ... -> DONE[m -StoreGateSvc VERBOSE DataStore::clearStore() requesting release of DataProxy @0x1127be0, recorded with key=dvl, CLID=82734625, containing data object @0 ... -> DONE[m -StoreGateSvc VERBOSE DataStore::clearStore() requesting release of DataProxy @0x1128610, recorded with key=dvl2, CLID=82734625, containing data object @0 ... -> DONE[m -StoreGateSvc VERBOSE DataStore::clearStore() requesting release of DataProxy @0x11279f0, recorded with key=contd, CLID=82734626, containing data object @0 ... -> DONE[m -StoreGateSvc VERBOSE DataStore::clearStore() requesting release of DataProxy @0x1129000, recorded with key=dvl, CLID=82734626, containing data object @0 ... -> DONE[m -StoreGateSvc VERBOSE DataStore::clearStore() requesting release of DataProxy @0x1129590, recorded with key=dvl2, CLID=82734626, containing data object @0 ... -> DONE[m -StoreGateSvc VERBOSE DataStore::clearStore() requesting release of DataProxy @0x11244e0, recorded with key=contd, CLID=82734625, containing data object @0 ... -> DONE[m -StoreGateSvc VERBOSE DataStore::clearStore() requesting release of DataProxy @0x1127be0, recorded with key=dvl, CLID=82734625, containing data object @0 ... -> DONE[m -StoreGateSvc VERBOSE DataStore::clearStore() requesting release of DataProxy @0x1128610, recorded with key=dvl2, CLID=82734625, containing data object @0 ... -> DONE[m -StoreGateSvc VERBOSE DataStore::clearStore() requesting release of DataProxy @0x11279f0, recorded with key=contd, CLID=82734626, containing data object @0 ... -> DONE[m -StoreGateSvc VERBOSE DataStore::clearStore() requesting release of DataProxy @0x1129000, recorded with key=dvl, CLID=82734626, containing data object @0 ... -> DONE[m -StoreGateSvc VERBOSE DataStore::clearStore() requesting release of DataProxy @0x1129590, recorded with key=dvl2, CLID=82734626, containing data object @0 ... -> DONE[m -StoreGateSvc VERBOSE DataStore::clearStore() requesting release of DataProxy @0x11244e0, recorded with key=contd, CLID=82734625, containing data object @0 ... -> DONE[m -StoreGateSvc VERBOSE DataStore::clearStore() requesting release of DataProxy @0x1127be0, recorded with key=dvl, CLID=82734625, containing data object @0 ... -> DONE[m -StoreGateSvc VERBOSE DataStore::clearStore() requesting release of DataProxy @0x1128610, recorded with key=dvl2, CLID=82734625, containing data object @0 ... -> DONE[m -StoreGateSvc VERBOSE DataStore::clearStore() requesting release of DataProxy @0x11279f0, recorded with key=contd, CLID=82734626, containing data object @0 ... -> DONE[m -StoreGateSvc VERBOSE DataStore::clearStore() requesting release of DataProxy @0x1129000, recorded with key=dvl, CLID=82734626, containing data object @0 ... -> DONE[m -StoreGateSvc VERBOSE DataStore::clearStore() requesting release of DataProxy @0x1129590, recorded with key=dvl2, CLID=82734626, containing data object @0 ... -> DONE[m -StoreGateSvc VERBOSE DataStore::clearStore() requesting release of DataProxy @0x1129b50, recorded with key=x, CLID=82734627, containing data object @0 ... -> DONE[m -StoreGateSvc VERBOSE DataStore::clearStore() requesting release of DataProxy @0x1129b50, recorded with key=x, CLID=82734627, containing data object @0 ... -> DONE[m -StoreGateSvc DEBUG Clearing store with forceRemove=1[m -StoreGateSvc VERBOSE DataStore::clearStore() forcing release of DataProxy @0x11293d0, recorded with key=LockReset, CLID=8101, containing data object @0 ... -> DONE[m -StoreGateSvc VERBOSE DataStore::clearStore() forcing release of DataProxy @0x1128e60, recorded with key=UnLockReset, CLID=8101, containing data object @0 ... -> DONE[m -StoreGateSvc VERBOSE DataStore::clearStore() forcing release of DataProxy @0x11244e0, recorded with key=contd, CLID=82734625, containing data object @0 ... -> DONE[m -StoreGateSvc VERBOSE DataStore::clearStore() forcing release of DataProxy @0x11279f0, recorded with key=contd, CLID=82734626, containing data object @0 ... -> DONE[m -StoreGateSvc VERBOSE DataStore::clearStore() forcing release of DataProxy @0x11244e0, recorded with key=contd, CLID=82734625, containing data object @0 ... -> DONE[m -StoreGateSvc VERBOSE DataStore::clearStore() forcing release of DataProxy @0x1127be0, recorded with key=dvl, CLID=82734625, containing data object @0 ... -> DONE[m -StoreGateSvc VERBOSE DataStore::clearStore() forcing release of DataProxy @0x1128610, recorded with key=dvl2, CLID=82734625, containing data object @0 ... -> DONE[m -StoreGateSvc VERBOSE DataStore::clearStore() forcing release of DataProxy @0x11279f0, recorded with key=contd, CLID=82734626, containing data object @0 ... -> DONE[m -StoreGateSvc VERBOSE DataStore::clearStore() forcing release of DataProxy @0x1129000, recorded with key=dvl, CLID=82734626, containing data object @0 ... -> DONE[m -StoreGateSvc VERBOSE DataStore::clearStore() forcing release of DataProxy @0x1129590, recorded with key=dvl2, CLID=82734626, containing data object @0 ... -> DONE[m -StoreGateSvc VERBOSE DataStore::clearStore() forcing release of DataProxy @0x11244e0, recorded with key=contd, CLID=82734625, containing data object @0 ... -> DONE[m -StoreGateSvc VERBOSE DataStore::clearStore() forcing release of DataProxy @0x1127be0, recorded with key=dvl, CLID=82734625, containing data object @0 ... -> DONE[m -StoreGateSvc VERBOSE DataStore::clearStore() forcing release of DataProxy @0x1128610, recorded with key=dvl2, CLID=82734625, containing data object @0 ... -> DONE[m -StoreGateSvc VERBOSE DataStore::clearStore() forcing release of DataProxy @0x11279f0, recorded with key=contd, CLID=82734626, containing data object @0 ... -> DONE[m -StoreGateSvc VERBOSE DataStore::clearStore() forcing release of DataProxy @0x1129000, recorded with key=dvl, CLID=82734626, containing data object @0 ... -> DONE[m -StoreGateSvc VERBOSE DataStore::clearStore() forcing release of DataProxy @0x1129590, recorded with key=dvl2, CLID=82734626, containing data object @0 ... -> DONE[m -StoreGateSvc VERBOSE DataStore::clearStore() forcing release of DataProxy @0x11244e0, recorded with key=contd, CLID=82734625, containing data object @0 ... -> DONE[m -StoreGateSvc VERBOSE DataStore::clearStore() forcing release of DataProxy @0x1127be0, recorded with key=dvl, CLID=82734625, containing data object @0 ... -> DONE[m -StoreGateSvc VERBOSE DataStore::clearStore() forcing release of DataProxy @0x1128610, recorded with key=dvl2, CLID=82734625, containing data object @0 ... -> DONE[m -StoreGateSvc VERBOSE DataStore::clearStore() forcing release of DataProxy @0x11279f0, recorded with key=contd, CLID=82734626, containing data object @0 ... -> DONE[m -StoreGateSvc VERBOSE DataStore::clearStore() forcing release of DataProxy @0x1129000, recorded with key=dvl, CLID=82734626, containing data object @0 ... -> DONE[m -StoreGateSvc VERBOSE DataStore::clearStore() forcing release of DataProxy @0x1129590, recorded with key=dvl2, CLID=82734626, containing data object @0 ... -> DONE[m -StoreGateSvc VERBOSE DataStore::clearStore() forcing release of DataProxy @0x1129b50, recorded with key=x, CLID=82734627, containing data object @0 ... -> DONE[m -StoreGateSvc VERBOSE DataStore::clearStore() forcing release of DataProxy @0x1129b50, recorded with key=x, CLID=82734627, containing data object @0 ... -> DONE[m -StoreGateSvc DEBUG Recorded object @0x11299d0 with key LockReset of type Foo(CLID 8101) - in DataObject @0x1129df0 +StoreGateSvc_Impl DEBUG Recorded object @0x187ca00 with key UnLockDelete of type Foo(CLID 8101) + in DataObject @0x187acb0 + object modifiable when retrieved[m +StoreGateSvc_Impl DEBUG Clearing store with forceRemove=0[m +StoreGateSvc_Impl VERBOSE DataStore::clearStore() requesting release of DataProxy @0x187a5f0, recorded with key=LockDelete, CLID=8101, containing data object @0x187ae50 ... -> DONE[m +StoreGateSvc_Impl VERBOSE DataStore::clearStore() requesting release of DataProxy @0x1876fd0, recorded with key=LockReset, CLID=8101, containing data object @0x187cb10 ... -> DONE[m +StoreGateSvc_Impl VERBOSE DataStore::clearStore() requesting release of DataProxy @0x1879950, recorded with key=UnLockDelete, CLID=8101, containing data object @0x187acb0 ... -> DONE[m +StoreGateSvc_Impl VERBOSE DataStore::clearStore() requesting release of DataProxy @0x1877b10, recorded with key=UnLockReset, CLID=8101, containing data object @0x187bec0 ... -> DONE[m +StoreGateSvc_Impl VERBOSE DataStore::clearStore() requesting release of DataProxy @0x1879950, recorded with key=UnLockDelete, CLID=8101, containing data object @0x187acb0 ... -> DONE[m +StoreGateSvc_Impl VERBOSE DataStore::clearStore() requesting release of DataProxy @0x1879800, recorded with key=contd, CLID=82734625, containing data object @0 ... -> DONE[m +StoreGateSvc_Impl VERBOSE DataStore::clearStore() requesting release of DataProxy @0x1879430, recorded with key=contd, CLID=82734626, containing data object @0 ... -> DONE[m +StoreGateSvc_Impl VERBOSE DataStore::clearStore() requesting release of DataProxy @0x1879800, recorded with key=contd, CLID=82734625, containing data object @0 ... -> DONE[m +StoreGateSvc_Impl VERBOSE DataStore::clearStore() requesting release of DataProxy @0x1875ce0, recorded with key=dvl, CLID=82734625, containing data object @0 ... -> DONE[m +StoreGateSvc_Impl VERBOSE DataStore::clearStore() requesting release of DataProxy @0x17b88c0, recorded with key=dvl2, CLID=82734625, containing data object @0 ... -> DONE[m +StoreGateSvc_Impl VERBOSE DataStore::clearStore() requesting release of DataProxy @0x1879430, recorded with key=contd, CLID=82734626, containing data object @0 ... -> DONE[m +StoreGateSvc_Impl VERBOSE DataStore::clearStore() requesting release of DataProxy @0x1878270, recorded with key=dvl, CLID=82734626, containing data object @0 ... -> DONE[m +StoreGateSvc_Impl VERBOSE DataStore::clearStore() requesting release of DataProxy @0x1877760, recorded with key=dvl2, CLID=82734626, containing data object @0 ... -> DONE[m +StoreGateSvc_Impl VERBOSE DataStore::clearStore() requesting release of DataProxy @0x1879800, recorded with key=contd, CLID=82734625, containing data object @0 ... -> DONE[m +StoreGateSvc_Impl VERBOSE DataStore::clearStore() requesting release of DataProxy @0x1875ce0, recorded with key=dvl, CLID=82734625, containing data object @0 ... -> DONE[m +StoreGateSvc_Impl VERBOSE DataStore::clearStore() requesting release of DataProxy @0x17b88c0, recorded with key=dvl2, CLID=82734625, containing data object @0 ... -> DONE[m +StoreGateSvc_Impl VERBOSE DataStore::clearStore() requesting release of DataProxy @0x1879430, recorded with key=contd, CLID=82734626, containing data object @0 ... -> DONE[m +StoreGateSvc_Impl VERBOSE DataStore::clearStore() requesting release of DataProxy @0x1878270, recorded with key=dvl, CLID=82734626, containing data object @0 ... -> DONE[m +StoreGateSvc_Impl VERBOSE DataStore::clearStore() requesting release of DataProxy @0x1877760, recorded with key=dvl2, CLID=82734626, containing data object @0 ... -> DONE[m +StoreGateSvc_Impl VERBOSE DataStore::clearStore() requesting release of DataProxy @0x1879800, recorded with key=contd, CLID=82734625, containing data object @0 ... -> DONE[m +StoreGateSvc_Impl VERBOSE DataStore::clearStore() requesting release of DataProxy @0x1875ce0, recorded with key=dvl, CLID=82734625, containing data object @0 ... -> DONE[m +StoreGateSvc_Impl VERBOSE DataStore::clearStore() requesting release of DataProxy @0x17b88c0, recorded with key=dvl2, CLID=82734625, containing data object @0 ... -> DONE[m +StoreGateSvc_Impl VERBOSE DataStore::clearStore() requesting release of DataProxy @0x1879430, recorded with key=contd, CLID=82734626, containing data object @0 ... -> DONE[m +StoreGateSvc_Impl VERBOSE DataStore::clearStore() requesting release of DataProxy @0x1878270, recorded with key=dvl, CLID=82734626, containing data object @0 ... -> DONE[m +StoreGateSvc_Impl VERBOSE DataStore::clearStore() requesting release of DataProxy @0x1877760, recorded with key=dvl2, CLID=82734626, containing data object @0 ... -> DONE[m +StoreGateSvc_Impl VERBOSE DataStore::clearStore() requesting release of DataProxy @0x1877ec0, recorded with key=x, CLID=82734627, containing data object @0 ... -> DONE[m +StoreGateSvc_Impl VERBOSE DataStore::clearStore() requesting release of DataProxy @0x1877ec0, recorded with key=x, CLID=82734627, containing data object @0 ... -> DONE[m +StoreGateSvc_Impl DEBUG Clearing store with forceRemove=1[m +StoreGateSvc_Impl VERBOSE DataStore::clearStore() forcing release of DataProxy @0x1876fd0, recorded with key=LockReset, CLID=8101, containing data object @0 ... -> DONE[m +StoreGateSvc_Impl VERBOSE DataStore::clearStore() forcing release of DataProxy @0x1877b10, recorded with key=UnLockReset, CLID=8101, containing data object @0 ... -> DONE[m +StoreGateSvc_Impl VERBOSE DataStore::clearStore() forcing release of DataProxy @0x1879800, recorded with key=contd, CLID=82734625, containing data object @0 ... -> DONE[m +StoreGateSvc_Impl VERBOSE DataStore::clearStore() forcing release of DataProxy @0x1879430, recorded with key=contd, CLID=82734626, containing data object @0 ... -> DONE[m +StoreGateSvc_Impl VERBOSE DataStore::clearStore() forcing release of DataProxy @0x1879800, recorded with key=contd, CLID=82734625, containing data object @0 ... -> DONE[m +StoreGateSvc_Impl VERBOSE DataStore::clearStore() forcing release of DataProxy @0x1875ce0, recorded with key=dvl, CLID=82734625, containing data object @0 ... -> DONE[m +StoreGateSvc_Impl VERBOSE DataStore::clearStore() forcing release of DataProxy @0x17b88c0, recorded with key=dvl2, CLID=82734625, containing data object @0 ... -> DONE[m +StoreGateSvc_Impl VERBOSE DataStore::clearStore() forcing release of DataProxy @0x1879430, recorded with key=contd, CLID=82734626, containing data object @0 ... -> DONE[m +StoreGateSvc_Impl VERBOSE DataStore::clearStore() forcing release of DataProxy @0x1878270, recorded with key=dvl, CLID=82734626, containing data object @0 ... -> DONE[m +StoreGateSvc_Impl VERBOSE DataStore::clearStore() forcing release of DataProxy @0x1877760, recorded with key=dvl2, CLID=82734626, containing data object @0 ... -> DONE[m +StoreGateSvc_Impl VERBOSE DataStore::clearStore() forcing release of DataProxy @0x1879800, recorded with key=contd, CLID=82734625, containing data object @0 ... -> DONE[m +StoreGateSvc_Impl VERBOSE DataStore::clearStore() forcing release of DataProxy @0x1875ce0, recorded with key=dvl, CLID=82734625, containing data object @0 ... -> DONE[m +StoreGateSvc_Impl VERBOSE DataStore::clearStore() forcing release of DataProxy @0x17b88c0, recorded with key=dvl2, CLID=82734625, containing data object @0 ... -> DONE[m +StoreGateSvc_Impl VERBOSE DataStore::clearStore() forcing release of DataProxy @0x1879430, recorded with key=contd, CLID=82734626, containing data object @0 ... -> DONE[m +StoreGateSvc_Impl VERBOSE DataStore::clearStore() forcing release of DataProxy @0x1878270, recorded with key=dvl, CLID=82734626, containing data object @0 ... -> DONE[m +StoreGateSvc_Impl VERBOSE DataStore::clearStore() forcing release of DataProxy @0x1877760, recorded with key=dvl2, CLID=82734626, containing data object @0 ... -> DONE[m +StoreGateSvc_Impl VERBOSE DataStore::clearStore() forcing release of DataProxy @0x1879800, recorded with key=contd, CLID=82734625, containing data object @0 ... -> DONE[m +StoreGateSvc_Impl VERBOSE DataStore::clearStore() forcing release of DataProxy @0x1875ce0, recorded with key=dvl, CLID=82734625, containing data object @0 ... -> DONE[m +StoreGateSvc_Impl VERBOSE DataStore::clearStore() forcing release of DataProxy @0x17b88c0, recorded with key=dvl2, CLID=82734625, containing data object @0 ... -> DONE[m +StoreGateSvc_Impl VERBOSE DataStore::clearStore() forcing release of DataProxy @0x1879430, recorded with key=contd, CLID=82734626, containing data object @0 ... -> DONE[m +StoreGateSvc_Impl VERBOSE DataStore::clearStore() forcing release of DataProxy @0x1878270, recorded with key=dvl, CLID=82734626, containing data object @0 ... -> DONE[m +StoreGateSvc_Impl VERBOSE DataStore::clearStore() forcing release of DataProxy @0x1877760, recorded with key=dvl2, CLID=82734626, containing data object @0 ... -> DONE[m +StoreGateSvc_Impl VERBOSE DataStore::clearStore() forcing release of DataProxy @0x1877ec0, recorded with key=x, CLID=82734627, containing data object @0 ... -> DONE[m +StoreGateSvc_Impl VERBOSE DataStore::clearStore() forcing release of DataProxy @0x1877ec0, recorded with key=x, CLID=82734627, containing data object @0 ... -> DONE[m +StoreGateSvc_Impl DEBUG Recorded object @0x187ce10 with key LockReset of type Foo(CLID 8101) + in DataObject @0x187ced0 object not modifiable when retrieved[m -StoreGateSvc DEBUG Recorded object @0x1125640 with key UnLockReset of type Foo(CLID 8101) - in DataObject @0x1129450 +StoreGateSvc_Impl DEBUG Recorded object @0x187cb80 with key UnLockReset of type Foo(CLID 8101) + in DataObject @0x18793e0 object modifiable when retrieved[m -StoreGateSvc DEBUG Recorded object @0x11251f0 with key LockDelete of type Foo(CLID 8101) - in DataObject @0x11275c0 +StoreGateSvc_Impl DEBUG Recorded object @0x1877cd0 with key LockDelete of type Foo(CLID 8101) + in DataObject @0x1876df0 object not modifiable when retrieved[m -StoreGateSvc DEBUG Recorded object @0x11293b0 with key UnLockDelete of type Foo(CLID 8101) - in DataObject @0x10e27d0 +StoreGateSvc_Impl DEBUG Recorded object @0x1407290 with key UnLockDelete of type Foo(CLID 8101) + in DataObject @0x18783e0 object modifiable when retrieved[m -StoreGateSvc DEBUG Clearing store with forceRemove=0[m -StoreGateSvc VERBOSE DataStore::clearStore() requesting release of DataProxy @0x1129000, recorded with key=LockDelete, CLID=8101, containing data object @0x11275c0 ... -> DONE[m -StoreGateSvc VERBOSE DataStore::clearStore() requesting release of DataProxy @0x1129b50, recorded with key=LockReset, CLID=8101, containing data object @0x1129df0 ... -> DONE[m -StoreGateSvc VERBOSE DataStore::clearStore() requesting release of DataProxy @0x11279f0, recorded with key=UnLockDelete, CLID=8101, containing data object @0x10e27d0 ... -> DONE[m -StoreGateSvc VERBOSE DataStore::clearStore() requesting release of DataProxy @0x1129590, recorded with key=UnLockReset, CLID=8101, containing data object @0x1129450 ... -> DONE[m -StoreGateSvc DEBUG Clearing store with forceRemove=1[m +StoreGateSvc_Impl DEBUG Clearing store with forceRemove=0[m +StoreGateSvc_Impl VERBOSE DataStore::clearStore() requesting release of DataProxy @0x1878270, recorded with key=LockDelete, CLID=8101, containing data object @0x1876df0 ... -> DONE[m +StoreGateSvc_Impl VERBOSE DataStore::clearStore() requesting release of DataProxy @0x1877ec0, recorded with key=LockReset, CLID=8101, containing data object @0x187ced0 ... -> DONE[m +StoreGateSvc_Impl VERBOSE DataStore::clearStore() requesting release of DataProxy @0x1879430, recorded with key=UnLockDelete, CLID=8101, containing data object @0x18783e0 ... -> DONE[m +StoreGateSvc_Impl VERBOSE DataStore::clearStore() requesting release of DataProxy @0x1877760, recorded with key=UnLockReset, CLID=8101, containing data object @0x18793e0 ... -> DONE[m +StoreGateSvc_Impl DEBUG Clearing store with forceRemove=1[m *** StoreGateSvcClient_test Keys ENDS *** *** StoreGateSvcClient_test retrieveAux BEGINS *** -StoreGateSvc DEBUG Recorded object @0x1129710 with key BVec of type TestVector<BX>(CLID 82735621) - in DataObject @0x1128b10 +StoreGateSvc_Impl DEBUG Recorded object @0x187c800 with key BVec of type TestVector<BX>(CLID 82735621) + in DataObject @0x187a110 object modifiable when retrieved[m -StoreGateSvc DEBUG Recorded object @0x1129e40 with key BVecAux. of type TestAuxStore(CLID 125030194) - in DataObject @0x10e27d0 +StoreGateSvc_Impl DEBUG Recorded object @0x187d020 with key BVecAux. of type TestAuxStore(CLID 125030194) + in DataObject @0x18783e0 object modifiable when retrieved[m -StoreGateSvc DEBUG Recorded object @0x1124480 with key CVec of type TestVector<BX>(CLID 82735621) - in DataObject @0x11272d0 +StoreGateSvc_Impl DEBUG Recorded object @0x18775f0 with key CVec of type TestVector<BX>(CLID 82735621) + in DataObject @0x1876c20 object not modifiable when retrieved[m -StoreGateSvc DEBUG Recorded object @0x1125f10 with key CVecAux. of type TestAuxStore(CLID 125030194) - in DataObject @0x1126000 +StoreGateSvc_Impl DEBUG Recorded object @0x187a800 with key CVecAux. of type TestAuxStore(CLID 125030194) + in DataObject @0x1876830 object not modifiable when retrieved[m -StoreGateSvc DEBUG Recorded object @0x11284f0 with key ErrorVec of type TestVector<BX>(CLID 82735621) - in DataObject @0x10f0b50 - object modifiable when retrieved[m -StoreGateSvc DEBUG Recorded object @0x1127ac0 with key BBVec of type TestVector<BBX>(CLID 125040193) - in DataObject @0x11255b0 - object modifiable when retrieved[m -StoreGateSvc DEBUG Recorded object @0x1127240 with key BBVecAux. of type TestAuxStore(CLID 125030194) - in DataObject @0x1126fb0 - object modifiable when retrieved[m -StoreGateSvc VERBOSE called associateAux_impl non const for key BVec[m -StoreGateSvc DEBUG Retrieved non-const handle to object BVec of type TestVector<BX>(CLID 82735621)[m -StoreGateSvc VERBOSE called associateAux_impl non const for key BVec[m -StoreGateSvc DEBUG Retrieved non-const handle to object BVec of type TestVector<BX>(CLID 82735621)[m -StoreGateSvc VERBOSE called associateAux_impl const for key CVec[m -StoreGateSvc DEBUG Retrieved const handle to object CVec of type TestVector<BX>(CLID 82735621)[m -StoreGateSvc VERBOSE called associateAux_impl const for key ErrorVec[m -StoreGateSvc DEBUG Retrieved const handle to object ErrorVec of type TestVector<BX>(CLID 82735621)[m +StoreGateSvc_Impl DEBUG Recorded object @0x187b960 with key ErrorVec of type TestVector<BX>(CLID 82735621) + in DataObject @0x187a280 + object modifiable when retrieved[m +StoreGateSvc_Impl DEBUG Recorded object @0x1878680 with key BBVec of type TestVector<BBX>(CLID 125040193) + in DataObject @0x1866600 + object modifiable when retrieved[m +StoreGateSvc_Impl DEBUG Recorded object @0x187d740 with key BBVecAux. of type TestAuxStore(CLID 125030194) + in DataObject @0x1876d50 + object modifiable when retrieved[m +StoreGateSvc_Impl VERBOSE called associateAux_impl non const for key BVec[m +StoreGateSvc_Impl DEBUG Retrieved non-const handle to object BVec of type TestVector<BX>(CLID 82735621)[m +StoreGateSvc_Impl VERBOSE called associateAux_impl non const for key BVec[m +StoreGateSvc_Impl DEBUG Retrieved non-const handle to object BVec of type TestVector<BX>(CLID 82735621)[m +StoreGateSvc_Impl VERBOSE called associateAux_impl const for key CVec[m +StoreGateSvc_Impl DEBUG Retrieved const handle to object CVec of type TestVector<BX>(CLID 82735621)[m +StoreGateSvc_Impl VERBOSE called associateAux_impl const for key ErrorVec[m +StoreGateSvc_Impl DEBUG Retrieved const handle to object ErrorVec of type TestVector<BX>(CLID 82735621)[m Now we expect to see an error message: ----Error Message Starts--->> -StoreGateSvc VERBOSE called associateAux_impl const for key ErrorVec[m -StoreGateSvc DEBUG Retrieved const handle to object ErrorVec of type TestVector<BX>(CLID 82735621)[m -StoreGateSvc VERBOSE called associateAux_impl const for key ErrorVec[m -[93;1mStoreGateSvc WARNING associateAux const: Could not associate AuxStore of type SG::IConstAuxStore +StoreGateSvc_Impl VERBOSE called associateAux_impl const for key ErrorVec[m +StoreGateSvc_Impl DEBUG Retrieved const handle to object ErrorVec of type TestVector<BX>(CLID 82735621)[m +StoreGateSvc_Impl VERBOSE called associateAux_impl const for key ErrorVec[m +[93;1mStoreGateSvc_Impl WARNING associateAux const: Could not associate AuxStore of type SG::IConstAuxStore to object of type TestVector<BX>(CLID 82735621) with key ErrorVec[m -[93;1mStoreGateSvc WARNING [m +[93;1mStoreGateSvc_Impl WARNING [m <<---Error Message Ends------- -StoreGateSvc DEBUG Recorded object @0x1124620 with key BStand of type BX(CLID 82835621) - in DataObject @0x11292b0 +StoreGateSvc_Impl DEBUG Recorded object @0x1879e80 with key BStand of type BX(CLID 82835621) + in DataObject @0x187d280 object modifiable when retrieved[m -StoreGateSvc DEBUG Recorded object @0x1129350 with key BStandAux. of type TestAuxStore(CLID 125030194) - in DataObject @0x112a020 +StoreGateSvc_Impl DEBUG Recorded object @0x187d930 with key BStandAux. of type TestAuxStore(CLID 125030194) + in DataObject @0x187bec0 object modifiable when retrieved[m -StoreGateSvc VERBOSE called associateAux_impl non const for key BStand[m -StoreGateSvc DEBUG Retrieved non-const handle to object BStand of type BX(CLID 82835621)[m +StoreGateSvc_Impl VERBOSE called associateAux_impl non const for key BStand[m +StoreGateSvc_Impl DEBUG Retrieved non-const handle to object BStand of type BX(CLID 82835621)[m *** StoreGateSvcClient_test retrieveAux OK *** *** StoreGateSvcClient_test testBoundReset BEGINS *** -StoreGateSvc DEBUG overwrite: Recorded object @0x104d070 with key testBoundReset of type int(CLID 244260744) - in DataObject @0x11267a0 - object modifiable when retrieved[m +StoreGateSvc_Impl VERBOSE committing dataObj "('TestAuxStore','BBVecAux.')"[m +StoreGateSvc_Impl VERBOSE committing dataObj "('TestVector<BBX>','BBVec')"[m +StoreGateSvc_Impl VERBOSE committing dataObj "('TestVector<BX>','CVec')"[m +StoreGateSvc_Impl VERBOSE committing dataObj "('TestAuxStore','BVecAux.')"[m +StoreGateSvc_Impl VERBOSE committing dataObj "('Foo','UnLockDelete')"[m +StoreGateSvc_Impl VERBOSE committing dataObj "('Foo','LockDelete')"[m +StoreGateSvc_Impl VERBOSE committing dataObj "('Foo','UnLockReset')"[m +StoreGateSvc_Impl VERBOSE committing dataObj "('TestAuxStore','BStandAux.')"[m +StoreGateSvc_Impl VERBOSE committing dataObj "('Foo','LockReset')"[m +StoreGateSvc_Impl VERBOSE committing dataObj "('Athena_test::X','x')"[m +StoreGateSvc_Impl VERBOSE committing dataObj "('CL','dvl2')"[m +StoreGateSvc_Impl VERBOSE committing dataObj "('DataList<B>','dvl2')"[m +StoreGateSvc_Impl VERBOSE committing dataObj "('TestAuxStore','CVecAux.')"[m +StoreGateSvc_Impl VERBOSE committing dataObj "('DataList<C>','dvl2')"[m +StoreGateSvc_Impl VERBOSE committing dataObj "('CL','dvl')"[m +StoreGateSvc_Impl VERBOSE committing dataObj "('B1','d1')"[m +StoreGateSvc_Impl VERBOSE committing dataObj "('DataList<C>','dvl')"[m +StoreGateSvc_Impl VERBOSE committing dataObj "('Foo','UnLockedDelete')"[m +StoreGateSvc_Impl VERBOSE committing dataObj "('Foo','fooKey')"[m +StoreGateSvc_Impl VERBOSE committing dataObj "('Foo',';66;aVersObj')"[m +StoreGateSvc_Impl VERBOSE committing dataObj "('CV','dvl')"[m +StoreGateSvc_Impl VERBOSE committing dataObj "('D1','d1Alias')"[m +StoreGateSvc_Impl VERBOSE committing dataObj "('Foo','pFooKey')"[m +StoreGateSvc_Impl VERBOSE committing dataObj "('Foo','LockedDelete')"[m +StoreGateSvc_Impl VERBOSE committing dataObj "('DataVector<C>','dvl')"[m +StoreGateSvc_Impl VERBOSE committing dataObj "('Foo','Const2')"[m +StoreGateSvc_Impl VERBOSE committing dataObj "('Foo','pCreateFooDefault')"[m +StoreGateSvc_Impl VERBOSE committing dataObj "('TestVector<BX>','ErrorVec')"[m +StoreGateSvc_Impl VERBOSE committing dataObj "('DataList<C>','contd')"[m +StoreGateSvc_Impl VERBOSE committing dataObj "('Foo','Const')"[m +StoreGateSvc_Impl VERBOSE committing dataObj "('DataList<A>','contd')"[m +StoreGateSvc_Impl VERBOSE committing dataObj "('Foo','LockedReset')"[m +StoreGateSvc_Impl VERBOSE committing dataObj "('Foo','pFoo2')"[m +StoreGateSvc_Impl VERBOSE committing dataObj "('D1','d1')"[m +StoreGateSvc_Impl VERBOSE committing dataObj "('Foo','cpFoo')"[m +StoreGateSvc_Impl VERBOSE committing dataObj "('Foo','Locked')"[m +StoreGateSvc_Impl VERBOSE committing dataObj "('Foo','UnLockedReset')"[m +StoreGateSvc_Impl VERBOSE committing dataObj "('Foo','pFoo1')"[m +StoreGateSvc_Impl VERBOSE committing dataObj "('Foo','silly')"[m +StoreGateSvc_Impl VERBOSE committing dataObj "('CV','contd')"[m +StoreGateSvc_Impl VERBOSE committing dataObj "('Foo','ow2')"[m +StoreGateSvc_Impl VERBOSE committing dataObj "('DataVector<B>','dvl2')"[m +StoreGateSvc_Impl VERBOSE committing dataObj "('Foo','UnLocked')"[m +StoreGateSvc_Impl VERBOSE committing dataObj "('D1','d1AnotherAlias')"[m +StoreGateSvc_Impl VERBOSE committing dataObj "('Foo',';00;aVersObj')"[m +StoreGateSvc_Impl VERBOSE committing dataObj "('DataList<B>','dvl')"[m +StoreGateSvc_Impl VERBOSE committing dataObj "('D1','d2')"[m +StoreGateSvc_Impl VERBOSE committing dataObj "('Foo','pSwapFoo2')"[m +StoreGateSvc_Impl VERBOSE committing dataObj "('DataVector<B>','dvl')"[m +StoreGateSvc_Impl VERBOSE committing dataObj "('CV','dvl2')"[m +StoreGateSvc_Impl VERBOSE committing dataObj "('Foo','pCreateFoo1')"[m +StoreGateSvc_Impl VERBOSE committing dataObj "('Foo','aVersObj')"[m +StoreGateSvc_Impl VERBOSE committing dataObj "('Foo','pSwapFoo1')"[m +StoreGateSvc_Impl VERBOSE committing dataObj "('Base','UnLocked')"[m +StoreGateSvc_Impl VERBOSE committing dataObj "('Foo','ow')"[m +StoreGateSvc_Impl VERBOSE committing dataObj "('Foo',';77;aVersObj')"[m +StoreGateSvc_Impl VERBOSE committing dataObj "('DataVector<A>','contd')"[m +StoreGateSvc_Impl VERBOSE committing dataObj "('Foo',';88;aVersObj')"[m +StoreGateSvc_Impl VERBOSE committing dataObj "('TestVector<BX>','BVec')"[m +StoreGateSvc_Impl VERBOSE committing dataObj "('DataVector<C>','contd')"[m +StoreGateSvc_Impl VERBOSE committing dataObj "('DataVector<B>','contd')"[m +StoreGateSvc_Impl VERBOSE committing dataObj "('DataList<B>','contd')"[m +StoreGateSvc_Impl VERBOSE committing dataObj "('CL','contd')"[m +StoreGateSvc_Impl VERBOSE committing dataObj "('BX','BStand')"[m +StoreGateSvc_Impl VERBOSE committing dataObj "('Foo','fooAlias')"[m +StoreGateSvc_Impl VERBOSE committing dataObj "('B1','d2')"[m +StoreGateSvc_Impl VERBOSE committing dataObj "('DataVector<C>','dvl2')"[m +StoreGateSvc_Impl VERBOSE committing dataObj "('int','testBoundReset')"[m +StoreGateSvc_Impl DEBUG overwrite: Recorded object @0x187ca00 with key testBoundReset of type int(CLID 244260744) + in DataObject @0x187a9b0 + object modifiable when retrieved[m +StoreGateSvc_Impl VERBOSE committing dataObj "('int','testBoundReset')"[m *** StoreGateSvcClient_test testBoundReset OK *** @@ -605,42 +679,47 @@ StoreGateSvc DEBUG overwrite: Recorded object @0x104d070 with key testBou *** StoreGateSvcClient_test testRecordObject BEGINS *** >>> test duplicate record1 -[93;1mStoreGateSvc WARNING setupProxy:: error setting up proxy for key obj101 and clid 8101 - Pre-existing valid DataProxy @0x1128570 found in Store for key obj101 with clid 8101[m -[93;1mStoreGateSvc WARNING record_impl: Problem setting up the proxy for object @0x10e7f60 - recorded with key obj101 of type Foo (CLID 8101) in DataObject @0x1126c10[m +[93;1mStoreGateSvc_Impl WARNING setupProxy:: error setting up proxy for key obj101 and clid 8101 + Pre-existing valid DataProxy @0x1879950 found in Store for key obj101 with clid 8101[m +[93;1mStoreGateSvc_Impl WARNING record_impl: Problem setting up the proxy for object @0x187cad0 + recorded with key obj101 of type Foo (CLID 8101) in DataObject @0x1880020[m <<< test duplicate record1 >>> test duplicate record2 -[93;1mStoreGateSvc WARNING record_impl: failed for key=obj999, type Foo (CLID 8101) - object @0x1127460 already in store with key=obj101. Will not record a duplicate! [m +[93;1mStoreGateSvc_Impl WARNING record_impl: failed for key=obj999, type Foo (CLID 8101) + object @0x1879ea0 already in store with key=obj101. Will not record a duplicate! [m <<< test duplicate record2 -StoreGateSvc DEBUG Clearing store with forceRemove=0[m -StoreGateSvc VERBOSE DataStore::clearStore() requesting release of DataProxy @0x1128570, recorded with key=obj101, CLID=8101, containing data object @0x1124980 ... -> DONE[m -StoreGateSvc VERBOSE DataStore::clearStore() requesting release of DataProxy @0x1125090, recorded with key=obj102, CLID=8101, containing data object @0x1125dd0 ... -> DONE[m -StoreGateSvc VERBOSE DataStore::clearStore() requesting release of DataProxy @0x1128570, recorded with key=obj101, CLID=8101, containing data object @0 ... -> DONE[m -StoreGateSvc VERBOSE DataStore::clearStore() requesting release of DataProxy @0x1129590, recorded with key=BVec, CLID=82735621, containing data object @0x1128b10 ... -> DONE[m -StoreGateSvc VERBOSE DataStore::clearStore() requesting release of DataProxy @0x1129b50, recorded with key=CVec, CLID=82735621, containing data object @0x11272d0 ... -> DONE[m -StoreGateSvc VERBOSE DataStore::clearStore() requesting release of DataProxy @0x1128610, recorded with key=ErrorVec, CLID=82735621, containing data object @0x10f0b50 ... -> DONE[m -StoreGateSvc VERBOSE DataStore::clearStore() requesting release of DataProxy @0x1129ea0, recorded with key=BStand, CLID=82835621, containing data object @0x11292b0 ... -> DONE[m -StoreGateSvc VERBOSE DataStore::clearStore() requesting release of DataProxy @0x11244e0, recorded with key=BBVecAux., CLID=125030194, containing data object @0x1126fb0 ... -> DONE[m -StoreGateSvc VERBOSE DataStore::clearStore() requesting release of DataProxy @0x11293d0, recorded with key=BStandAux., CLID=125030194, containing data object @0x112a020 ... -> DONE[m -StoreGateSvc VERBOSE DataStore::clearStore() requesting release of DataProxy @0x11279f0, recorded with key=BVecAux., CLID=125030194, containing data object @0x10e27d0 ... -> DONE[m -StoreGateSvc VERBOSE DataStore::clearStore() requesting release of DataProxy @0x1129000, recorded with key=CVecAux., CLID=125030194, containing data object @0x1126000 ... -> DONE[m -StoreGateSvc VERBOSE DataStore::clearStore() requesting release of DataProxy @0x1127be0, recorded with key=BBVec, CLID=125040193, containing data object @0x11255b0 ... -> DONE[m -StoreGateSvc VERBOSE DataStore::clearStore() requesting release of DataProxy @0x1127140, recorded with key=testBoundReset, CLID=244260744, containing data object @0x11267a0 ... -> DONE[m -StoreGateSvc DEBUG Clearing store with forceRemove=0[m -StoreGateSvc VERBOSE DataStore::clearStore() requesting release of DataProxy @0x1128570, recorded with key=obj101, CLID=8101, containing data object @0x1124980 ... -> DONE[m -StoreGateSvc VERBOSE DataStore::clearStore() requesting release of DataProxy @0x1125090, recorded with key=obj102, CLID=8101, containing data object @0 ... -> DONE[m -StoreGateSvc VERBOSE DataStore::clearStore() requesting release of DataProxy @0x1128570, recorded with key=obj101, CLID=8101, containing data object @0 ... -> DONE[m -StoreGateSvc VERBOSE DataStore::clearStore() requesting release of DataProxy @0x1129590, recorded with key=BVec, CLID=82735621, containing data object @0 ... -> DONE[m -StoreGateSvc VERBOSE DataStore::clearStore() requesting release of DataProxy @0x1129b50, recorded with key=CVec, CLID=82735621, containing data object @0 ... -> DONE[m -StoreGateSvc VERBOSE DataStore::clearStore() requesting release of DataProxy @0x1128610, recorded with key=ErrorVec, CLID=82735621, containing data object @0 ... -> DONE[m -StoreGateSvc VERBOSE DataStore::clearStore() requesting release of DataProxy @0x1129ea0, recorded with key=BStand, CLID=82835621, containing data object @0 ... -> DONE[m -StoreGateSvc VERBOSE DataStore::clearStore() requesting release of DataProxy @0x11244e0, recorded with key=BBVecAux., CLID=125030194, containing data object @0 ... -> DONE[m -StoreGateSvc VERBOSE DataStore::clearStore() requesting release of DataProxy @0x11293d0, recorded with key=BStandAux., CLID=125030194, containing data object @0 ... -> DONE[m -StoreGateSvc VERBOSE DataStore::clearStore() requesting release of DataProxy @0x11279f0, recorded with key=BVecAux., CLID=125030194, containing data object @0 ... -> DONE[m -StoreGateSvc VERBOSE DataStore::clearStore() requesting release of DataProxy @0x1129000, recorded with key=CVecAux., CLID=125030194, containing data object @0 ... -> DONE[m -StoreGateSvc VERBOSE DataStore::clearStore() requesting release of DataProxy @0x1127be0, recorded with key=BBVec, CLID=125040193, containing data object @0 ... -> DONE[m +>>> test duplicate error +[97;101;1mStoreGateSvc_Impl ERROR SGImplSvc::recordObject: existing object found with 8101[Foo] obj101 but neither clid 543543[] nor key obj101xxx match.[m +<<< test duplicate error +StoreGateSvc_Impl DEBUG Clearing store with forceRemove=0[m +StoreGateSvc_Impl VERBOSE DataStore::clearStore() requesting release of DataProxy @0x1879950, recorded with key=obj101, CLID=8101, containing data object @0x187ae50 ... -> DONE[m +StoreGateSvc_Impl VERBOSE DataStore::clearStore() requesting release of DataProxy @0x1879950, recorded with key=obj101, CLID=8101, containing data object @0 ... -> DONE[m +StoreGateSvc_Impl VERBOSE DataStore::clearStore() requesting release of DataProxy @0x1879120, recorded with key=obj102, CLID=8101, containing data object @0x18776e0 ... -> DONE[m +StoreGateSvc_Impl VERBOSE DataStore::clearStore() requesting release of DataProxy @0x1879950, recorded with key=obj101, CLID=8101, containing data object @0 ... -> DONE[m +StoreGateSvc_Impl VERBOSE DataStore::clearStore() requesting release of DataProxy @0x1877760, recorded with key=BVec, CLID=82735621, containing data object @0x187a110 ... -> DONE[m +StoreGateSvc_Impl VERBOSE DataStore::clearStore() requesting release of DataProxy @0x1877ec0, recorded with key=CVec, CLID=82735621, containing data object @0x1876c20 ... -> DONE[m +StoreGateSvc_Impl VERBOSE DataStore::clearStore() requesting release of DataProxy @0x17b88c0, recorded with key=ErrorVec, CLID=82735621, containing data object @0x187a280 ... -> DONE[m +StoreGateSvc_Impl VERBOSE DataStore::clearStore() requesting release of DataProxy @0x1877b10, recorded with key=BStand, CLID=82835621, containing data object @0x187d280 ... -> DONE[m +StoreGateSvc_Impl VERBOSE DataStore::clearStore() requesting release of DataProxy @0x1879800, recorded with key=BBVecAux., CLID=125030194, containing data object @0x1876d50 ... -> DONE[m +StoreGateSvc_Impl VERBOSE DataStore::clearStore() requesting release of DataProxy @0x1876fd0, recorded with key=BStandAux., CLID=125030194, containing data object @0x187bec0 ... -> DONE[m +StoreGateSvc_Impl VERBOSE DataStore::clearStore() requesting release of DataProxy @0x1879430, recorded with key=BVecAux., CLID=125030194, containing data object @0x18783e0 ... -> DONE[m +StoreGateSvc_Impl VERBOSE DataStore::clearStore() requesting release of DataProxy @0x1878270, recorded with key=CVecAux., CLID=125030194, containing data object @0x1876830 ... -> DONE[m +StoreGateSvc_Impl VERBOSE DataStore::clearStore() requesting release of DataProxy @0x1875ce0, recorded with key=BBVec, CLID=125040193, containing data object @0x1866600 ... -> DONE[m +StoreGateSvc_Impl VERBOSE DataStore::clearStore() requesting release of DataProxy @0x187a5f0, recorded with key=testBoundReset, CLID=244260744, containing data object @0x187a9b0 ... -> DONE[m +StoreGateSvc_Impl DEBUG Clearing store with forceRemove=0[m +StoreGateSvc_Impl VERBOSE DataStore::clearStore() requesting release of DataProxy @0x1879950, recorded with key=obj101, CLID=8101, containing data object @0x187ae50 ... -> DONE[m +StoreGateSvc_Impl VERBOSE DataStore::clearStore() requesting release of DataProxy @0x1879950, recorded with key=obj101, CLID=8101, containing data object @0 ... -> DONE[m +StoreGateSvc_Impl VERBOSE DataStore::clearStore() requesting release of DataProxy @0x1879120, recorded with key=obj102, CLID=8101, containing data object @0 ... -> DONE[m +StoreGateSvc_Impl VERBOSE DataStore::clearStore() requesting release of DataProxy @0x1879950, recorded with key=obj101, CLID=8101, containing data object @0 ... -> DONE[m +StoreGateSvc_Impl VERBOSE DataStore::clearStore() requesting release of DataProxy @0x1877760, recorded with key=BVec, CLID=82735621, containing data object @0 ... -> DONE[m +StoreGateSvc_Impl VERBOSE DataStore::clearStore() requesting release of DataProxy @0x1877ec0, recorded with key=CVec, CLID=82735621, containing data object @0 ... -> DONE[m +StoreGateSvc_Impl VERBOSE DataStore::clearStore() requesting release of DataProxy @0x17b88c0, recorded with key=ErrorVec, CLID=82735621, containing data object @0 ... -> DONE[m +StoreGateSvc_Impl VERBOSE DataStore::clearStore() requesting release of DataProxy @0x1877b10, recorded with key=BStand, CLID=82835621, containing data object @0 ... -> DONE[m +StoreGateSvc_Impl VERBOSE DataStore::clearStore() requesting release of DataProxy @0x1879800, recorded with key=BBVecAux., CLID=125030194, containing data object @0 ... -> DONE[m +StoreGateSvc_Impl VERBOSE DataStore::clearStore() requesting release of DataProxy @0x1876fd0, recorded with key=BStandAux., CLID=125030194, containing data object @0 ... -> DONE[m +StoreGateSvc_Impl VERBOSE DataStore::clearStore() requesting release of DataProxy @0x1879430, recorded with key=BVecAux., CLID=125030194, containing data object @0 ... -> DONE[m +StoreGateSvc_Impl VERBOSE DataStore::clearStore() requesting release of DataProxy @0x1878270, recorded with key=CVecAux., CLID=125030194, containing data object @0 ... -> DONE[m +StoreGateSvc_Impl VERBOSE DataStore::clearStore() requesting release of DataProxy @0x1875ce0, recorded with key=BBVec, CLID=125040193, containing data object @0 ... -> DONE[m *** StoreGateSvcClient_test testRecordObject OK *** @@ -648,89 +727,92 @@ StoreGateSvc VERBOSE DataStore::clearStore() requesting release of DataProx *** StoreGateSvcClient_test testWriteAux OK *** *** test_lock -StoreGateSvc DEBUG Recorded object @0x11251a0 with key lockable1 of type Lockable(CLID 82734636) - in DataObject @0x1126000 - object modifiable when retrieved[m -StoreGateSvc DEBUG Clearing store with forceRemove=0[m -StoreGateSvc VERBOSE DataStore::clearStore() requesting release of DataProxy @0x1128570, recorded with key=obj101, CLID=8101, containing data object @0x1124980 ... -> DONE[m -StoreGateSvc VERBOSE DataStore::clearStore() requesting release of DataProxy @0x1125090, recorded with key=obj102, CLID=8101, containing data object @0 ... -> DONE[m -StoreGateSvc VERBOSE DataStore::clearStore() requesting release of DataProxy @0x1128570, recorded with key=obj101, CLID=8101, containing data object @0 ... -> DONE[m -StoreGateSvc VERBOSE DataStore::clearStore() requesting release of DataProxy @0x11269d0, recorded with key=lockable1, CLID=82734636, containing data object @0x1126000 ... -> DONE[m -StoreGateSvc VERBOSE DataStore::clearStore() requesting release of DataProxy @0x1129590, recorded with key=BVec, CLID=82735621, containing data object @0 ... -> DONE[m -StoreGateSvc VERBOSE DataStore::clearStore() requesting release of DataProxy @0x1129b50, recorded with key=CVec, CLID=82735621, containing data object @0 ... -> DONE[m -StoreGateSvc VERBOSE DataStore::clearStore() requesting release of DataProxy @0x1128610, recorded with key=ErrorVec, CLID=82735621, containing data object @0 ... -> DONE[m -StoreGateSvc VERBOSE DataStore::clearStore() requesting release of DataProxy @0x1129ea0, recorded with key=BStand, CLID=82835621, containing data object @0 ... -> DONE[m -StoreGateSvc VERBOSE DataStore::clearStore() requesting release of DataProxy @0x1127140, recorded with key=testWriteAux, CLID=82835621, containing data object @0x1125dd0 ... -> DONE[m -StoreGateSvc VERBOSE DataStore::clearStore() requesting release of DataProxy @0x11244e0, recorded with key=BBVecAux., CLID=125030194, containing data object @0 ... -> DONE[m -StoreGateSvc VERBOSE DataStore::clearStore() requesting release of DataProxy @0x11293d0, recorded with key=BStandAux., CLID=125030194, containing data object @0 ... -> DONE[m -StoreGateSvc VERBOSE DataStore::clearStore() requesting release of DataProxy @0x11279f0, recorded with key=BVecAux., CLID=125030194, containing data object @0 ... -> DONE[m -StoreGateSvc VERBOSE DataStore::clearStore() requesting release of DataProxy @0x1129000, recorded with key=CVecAux., CLID=125030194, containing data object @0 ... -> DONE[m -StoreGateSvc VERBOSE DataStore::clearStore() requesting release of DataProxy @0x1126950, recorded with key=testWriteAuxAux., CLID=125030194, containing data object @0x1125ca0 ... -> DONE[m -StoreGateSvc VERBOSE DataStore::clearStore() requesting release of DataProxy @0x1127be0, recorded with key=BBVec, CLID=125040193, containing data object @0 ... -> DONE[m -StoreGateSvc DEBUG Recorded object @0x1127460 with key lockable1 of type Lockable(CLID 82734636) - in DataObject @0x1125ca0 +StoreGateSvc_Impl DEBUG Recorded object @0x187ca00 with key lockable1 of type Lockable(CLID 82734636) + in DataObject @0x1876830 + object modifiable when retrieved[m +StoreGateSvc_Impl DEBUG Clearing store with forceRemove=0[m +StoreGateSvc_Impl VERBOSE DataStore::clearStore() requesting release of DataProxy @0x1879950, recorded with key=obj101, CLID=8101, containing data object @0x187ae50 ... -> DONE[m +StoreGateSvc_Impl VERBOSE DataStore::clearStore() requesting release of DataProxy @0x1879950, recorded with key=obj101, CLID=8101, containing data object @0 ... -> DONE[m +StoreGateSvc_Impl VERBOSE DataStore::clearStore() requesting release of DataProxy @0x1879120, recorded with key=obj102, CLID=8101, containing data object @0 ... -> DONE[m +StoreGateSvc_Impl VERBOSE DataStore::clearStore() requesting release of DataProxy @0x1879950, recorded with key=obj101, CLID=8101, containing data object @0 ... -> DONE[m +StoreGateSvc_Impl VERBOSE DataStore::clearStore() requesting release of DataProxy @0x18773b0, recorded with key=lockable1, CLID=82734636, containing data object @0x1876830 ... -> DONE[m +StoreGateSvc_Impl VERBOSE DataStore::clearStore() requesting release of DataProxy @0x1877760, recorded with key=BVec, CLID=82735621, containing data object @0 ... -> DONE[m +StoreGateSvc_Impl VERBOSE DataStore::clearStore() requesting release of DataProxy @0x1877ec0, recorded with key=CVec, CLID=82735621, containing data object @0 ... -> DONE[m +StoreGateSvc_Impl VERBOSE DataStore::clearStore() requesting release of DataProxy @0x17b88c0, recorded with key=ErrorVec, CLID=82735621, containing data object @0 ... -> DONE[m +StoreGateSvc_Impl VERBOSE DataStore::clearStore() requesting release of DataProxy @0x1877b10, recorded with key=BStand, CLID=82835621, containing data object @0 ... -> DONE[m +StoreGateSvc_Impl VERBOSE DataStore::clearStore() requesting release of DataProxy @0x187a5f0, recorded with key=testWriteAux, CLID=82835621, containing data object @0x18776e0 ... -> DONE[m +StoreGateSvc_Impl VERBOSE DataStore::clearStore() requesting release of DataProxy @0x1879800, recorded with key=BBVecAux., CLID=125030194, containing data object @0 ... -> DONE[m +StoreGateSvc_Impl VERBOSE DataStore::clearStore() requesting release of DataProxy @0x1876fd0, recorded with key=BStandAux., CLID=125030194, containing data object @0 ... -> DONE[m +StoreGateSvc_Impl VERBOSE DataStore::clearStore() requesting release of DataProxy @0x1879430, recorded with key=BVecAux., CLID=125030194, containing data object @0 ... -> DONE[m +StoreGateSvc_Impl VERBOSE DataStore::clearStore() requesting release of DataProxy @0x1878270, recorded with key=CVecAux., CLID=125030194, containing data object @0 ... -> DONE[m +StoreGateSvc_Impl VERBOSE DataStore::clearStore() requesting release of DataProxy @0x18760a0, recorded with key=testWriteAuxAux., CLID=125030194, containing data object @0x187c330 ... -> DONE[m +StoreGateSvc_Impl VERBOSE DataStore::clearStore() requesting release of DataProxy @0x1875ce0, recorded with key=BBVec, CLID=125040193, containing data object @0 ... -> DONE[m +StoreGateSvc_Impl DEBUG Recorded object @0x187a780 with key lockable1 of type Lockable(CLID 82734636) + in DataObject @0x187c330 object modifiable when retrieved[m StoreGateSvc VERBOSE Finalizing StoreGateSvc - package version StoreGate-00-00-00[m -StoreGateSvc DEBUG Clearing store with forceRemove=1[m -StoreGateSvc VERBOSE DataStore::clearStore() forcing release of DataProxy @0x1128570, recorded with key=obj101, CLID=8101, containing data object @0 ... -> DONE[m -StoreGateSvc VERBOSE DataStore::clearStore() forcing release of DataProxy @0x1125090, recorded with key=obj102, CLID=8101, containing data object @0 ... -> DONE[m -StoreGateSvc VERBOSE DataStore::clearStore() forcing release of DataProxy @0x1128570, recorded with key=obj101, CLID=8101, containing data object @0 ... -> DONE[m -StoreGateSvc VERBOSE DataStore::clearStore() forcing release of DataProxy @0x11269d0, recorded with key=lockable1, CLID=82734636, containing data object @0x1125ca0 ... -> DONE[m -StoreGateSvc VERBOSE DataStore::clearStore() forcing release of DataProxy @0x1129590, recorded with key=BVec, CLID=82735621, containing data object @0 ... -> DONE[m -StoreGateSvc VERBOSE DataStore::clearStore() forcing release of DataProxy @0x1129b50, recorded with key=CVec, CLID=82735621, containing data object @0 ... -> DONE[m -StoreGateSvc VERBOSE DataStore::clearStore() forcing release of DataProxy @0x1128610, recorded with key=ErrorVec, CLID=82735621, containing data object @0 ... -> DONE[m -StoreGateSvc VERBOSE DataStore::clearStore() forcing release of DataProxy @0x1129ea0, recorded with key=BStand, CLID=82835621, containing data object @0 ... -> DONE[m -StoreGateSvc VERBOSE DataStore::clearStore() forcing release of DataProxy @0x1127140, recorded with key=testWriteAux, CLID=82835621, containing data object @0 ... -> DONE[m -StoreGateSvc VERBOSE DataStore::clearStore() forcing release of DataProxy @0x11244e0, recorded with key=BBVecAux., CLID=125030194, containing data object @0 ... -> DONE[m -StoreGateSvc VERBOSE DataStore::clearStore() forcing release of DataProxy @0x11293d0, recorded with key=BStandAux., CLID=125030194, containing data object @0 ... -> DONE[m -StoreGateSvc VERBOSE DataStore::clearStore() forcing release of DataProxy @0x11279f0, recorded with key=BVecAux., CLID=125030194, containing data object @0 ... -> DONE[m -StoreGateSvc VERBOSE DataStore::clearStore() forcing release of DataProxy @0x1129000, recorded with key=CVecAux., CLID=125030194, containing data object @0 ... -> DONE[m -StoreGateSvc VERBOSE DataStore::clearStore() forcing release of DataProxy @0x1126950, recorded with key=testWriteAuxAux., CLID=125030194, containing data object @0 ... -> DONE[m -StoreGateSvc VERBOSE DataStore::clearStore() forcing release of DataProxy @0x1127be0, recorded with key=BBVec, CLID=125040193, containing data object @0 ... -> DONE[m +StoreGateSvc_Impl VERBOSE Finalizing StoreGateSvc_Impl - package version StoreGate-00-00-00[m +StoreGateSvc_Impl DEBUG Clearing store with forceRemove=1[m +StoreGateSvc_Impl VERBOSE DataStore::clearStore() forcing release of DataProxy @0x1879950, recorded with key=obj101, CLID=8101, containing data object @0 ... -> DONE[m +StoreGateSvc_Impl VERBOSE DataStore::clearStore() forcing release of DataProxy @0x1879950, recorded with key=obj101, CLID=8101, containing data object @0 ... -> DONE[m +StoreGateSvc_Impl VERBOSE DataStore::clearStore() forcing release of DataProxy @0x1879120, recorded with key=obj102, CLID=8101, containing data object @0 ... -> DONE[m +StoreGateSvc_Impl VERBOSE DataStore::clearStore() forcing release of DataProxy @0x1879950, recorded with key=obj101, CLID=8101, containing data object @0 ... -> DONE[m +StoreGateSvc_Impl VERBOSE DataStore::clearStore() forcing release of DataProxy @0x18773b0, recorded with key=lockable1, CLID=82734636, containing data object @0x187c330 ... -> DONE[m +StoreGateSvc_Impl VERBOSE DataStore::clearStore() forcing release of DataProxy @0x1877760, recorded with key=BVec, CLID=82735621, containing data object @0 ... -> DONE[m +StoreGateSvc_Impl VERBOSE DataStore::clearStore() forcing release of DataProxy @0x1877ec0, recorded with key=CVec, CLID=82735621, containing data object @0 ... -> DONE[m +StoreGateSvc_Impl VERBOSE DataStore::clearStore() forcing release of DataProxy @0x17b88c0, recorded with key=ErrorVec, CLID=82735621, containing data object @0 ... -> DONE[m +StoreGateSvc_Impl VERBOSE DataStore::clearStore() forcing release of DataProxy @0x1877b10, recorded with key=BStand, CLID=82835621, containing data object @0 ... -> DONE[m +StoreGateSvc_Impl VERBOSE DataStore::clearStore() forcing release of DataProxy @0x187a5f0, recorded with key=testWriteAux, CLID=82835621, containing data object @0 ... -> DONE[m +StoreGateSvc_Impl VERBOSE DataStore::clearStore() forcing release of DataProxy @0x1879800, recorded with key=BBVecAux., CLID=125030194, containing data object @0 ... -> DONE[m +StoreGateSvc_Impl VERBOSE DataStore::clearStore() forcing release of DataProxy @0x1876fd0, recorded with key=BStandAux., CLID=125030194, containing data object @0 ... -> DONE[m +StoreGateSvc_Impl VERBOSE DataStore::clearStore() forcing release of DataProxy @0x1879430, recorded with key=BVecAux., CLID=125030194, containing data object @0 ... -> DONE[m +StoreGateSvc_Impl VERBOSE DataStore::clearStore() forcing release of DataProxy @0x1878270, recorded with key=CVecAux., CLID=125030194, containing data object @0 ... -> DONE[m +StoreGateSvc_Impl VERBOSE DataStore::clearStore() forcing release of DataProxy @0x18760a0, recorded with key=testWriteAuxAux., CLID=125030194, containing data object @0 ... -> DONE[m +StoreGateSvc_Impl VERBOSE DataStore::clearStore() forcing release of DataProxy @0x1875ce0, recorded with key=BBVec, CLID=125040193, containing data object @0 ... -> DONE[m *** StoreGateSvcClient_test record BEGINS *** Now we expect to see an error message: ----Error Message Starts--->> -[93;1mDetectorStore WARNING setupProxy:: error setting up proxy for key pFoo1 and clid 8101 - Pre-existing valid DataProxy @0x1127be0 found in Store for key pFoo1 with clid 8101[m -[93;1mDetectorStore WARNING record_impl: Problem setting up the proxy for object @0x1127790 - recorded with key pFoo1 of type Foo (CLID 8101) in DataObject @0x1127500[m +[93;1mDetectorStore_ImplWARNING setupProxy:: error setting up proxy for key pFoo1 and clid 8101 + Pre-existing valid DataProxy @0x1875ce0 found in Store for key pFoo1 with clid 8101[m +[93;1mDetectorStore_ImplWARNING record_impl: Problem setting up the proxy for object @0x1878fe0 + recorded with key pFoo1 of type Foo (CLID 8101) in DataObject @0x187a000[m <<---Error Message Ends------- Now we expect to see an error message: ----Error Message Starts--->> -[93;1mDetectorStore WARNING record_impl: failed for key=pFoo2, type Foo (CLID 8101) - object @0x1125c30 already in store with key=pFoo1. Will not record a duplicate! [m +[93;1mDetectorStore_ImplWARNING record_impl: failed for key=pFoo2, type Foo (CLID 8101) + object @0x1878c50 already in store with key=pFoo1. Will not record a duplicate! [m <<---Error Message Ends------- Now we expect to see an error message: ----Error Message Starts--->> -[93;1mDetectorStore WARNING setupProxy:: error setting up proxy for key silly and clid 8101 - Pre-existing valid DataProxy @0x11279f0 found in Store for key silly with clid 8101[m -[93;1mDetectorStore WARNING record_impl: Problem setting up the proxy for object @0x11291c0 - recorded with key silly of type Foo (CLID 8101) in DataObject @0x11284a0[m +[93;1mDetectorStore_ImplWARNING setupProxy:: error setting up proxy for key silly and clid 8101 + Pre-existing valid DataProxy @0x1879430 found in Store for key silly with clid 8101[m +[93;1mDetectorStore_ImplWARNING record_impl: Problem setting up the proxy for object @0x17dd390 + recorded with key silly of type Foo (CLID 8101) in DataObject @0x1879ef0[m <<---Error Message Ends------- Now we expect to see an error message: ----Error Message Starts--->> -[93;1mDetectorStore WARNING setupProxy:: error setting up proxy for key silly and clid 8101 - Pre-existing valid DataProxy @0x11279f0 found in Store for key silly with clid 8101[m -[93;1mDetectorStore WARNING record_impl: Problem setting up the proxy for object @0x11282a0 - recorded with key silly of type Foo (CLID 8101) in DataObject @0x1127350[m +[93;1mDetectorStore_ImplWARNING setupProxy:: error setting up proxy for key silly and clid 8101 + Pre-existing valid DataProxy @0x1879430 found in Store for key silly with clid 8101[m +[93;1mDetectorStore_ImplWARNING record_impl: Problem setting up the proxy for object @0x187c270 + recorded with key silly of type Foo (CLID 8101) in DataObject @0x1875930[m <<---Error Message Ends------- Now we expect to see an error message: ----Error Message Starts--->> -[93;1mDetectorStore WARNING setupProxy:: error setting up proxy for key silly and clid 8101 - Pre-existing valid DataProxy @0x11279f0 found in Store for key silly with clid 8101[m -[93;1mDetectorStore WARNING record_impl: Problem setting up the proxy for object @0x1127550 - recorded with key silly of type Foo (CLID 8101) in DataObject @0x1125b90[m +[93;1mDetectorStore_ImplWARNING setupProxy:: error setting up proxy for key silly and clid 8101 + Pre-existing valid DataProxy @0x1879430 found in Store for key silly with clid 8101[m +[93;1mDetectorStore_ImplWARNING record_impl: Problem setting up the proxy for object @0x187cfb0 + recorded with key silly of type Foo (CLID 8101) in DataObject @0x1878f40[m <<---Error Message Ends------- Now we expect to see an error message: ----Error Message Starts--->> -[93;1mDetectorStore WARNING setupProxy:: error setting up proxy for key Const and clid 8101 - Pre-existing valid DataProxy @0x1129590 found in Store for key Const with clid 8101[m -[93;1mDetectorStore WARNING record_impl: Problem setting up the proxy for object @0x1126e80 - recorded with key Const of type Foo (CLID 8101) in DataObject @0x1126a50[m +[93;1mDetectorStore_ImplWARNING setupProxy:: error setting up proxy for key Const and clid 8101 + Pre-existing valid DataProxy @0x1877760 found in Store for key Const with clid 8101[m +[93;1mDetectorStore_ImplWARNING record_impl: Problem setting up the proxy for object @0x187bf70 + recorded with key Const of type Foo (CLID 8101) in DataObject @0x18779d0[m <<---Error Message Ends------- IOVSvc INFO No IOVSvcTool associated with store "StoreGateSvc"[m IOVSvcTool INFO [92;1mIOVRanges will be checked at every [96;1mEvent[m -ClassIDSvc INFO getRegistryEntries: read 256 CLIDRegistry entries for module ALL[m +ClassIDSvc INFO getRegistryEntries: read 306 CLIDRegistry entries for module ALL[m *** StoreGateSvcClient_test records OK *** diff --git a/Control/AthenaKernel/AthenaKernel/IProxyDict.h b/Control/AthenaKernel/AthenaKernel/IProxyDict.h index f1687792ee61a432b4c95144a7f9369aabfef74b..5054e736be18962b8ca5dce8a22f04b186d09d8b 100644 --- a/Control/AthenaKernel/AthenaKernel/IProxyDict.h +++ b/Control/AthenaKernel/AthenaKernel/IProxyDict.h @@ -112,6 +112,8 @@ public: * @param returnExisting If true, return proxy if this key already exists. * If the object has been recorded under a different * key, then make an alias. + * If the object has been recorded under a different + * clid, then make a link. * * Full-blown record. @c obj should usually be something * deriving from @c SG::DataBucket. diff --git a/Control/DataModelTest/DataModelRunTests/share/xAODTestSymlinks1.ref b/Control/DataModelTest/DataModelRunTests/share/xAODTestSymlinks1.ref index 3e4b05309430758d54c89937e308cc8681e41632..36fd3d17284a3195c08c6e9cd5f5865478181e05 100644 --- a/Control/DataModelTest/DataModelRunTests/share/xAODTestSymlinks1.ref +++ b/Control/DataModelTest/DataModelRunTests/share/xAODTestSymlinks1.ref @@ -1,20 +1,25 @@ -Thu Apr 20 20:18:35 CEST 2017 +Mon Apr 24 16:12:01 CEST 2017 Preloading tcmalloc_minimal.so Py:Athena INFO including file "AthenaCommon/Preparation.py" -Py:Athena INFO using release [WorkDir-22.0.0] [x86_64-slc6-gcc62-opt] [atlas-work3g/725f3a42d9] -- built on [2017-04-20T1906] +Py:Athena INFO using release [WorkDir-22.0.0] [x86_64-slc6-gcc62-dbg] [mt-sss/06ff187fe6] -- built on [2017-04-24T1528] Py:Athena INFO including file "AthenaCommon/Bootstrap.py" Py:Athena INFO including file "AthenaCommon/Atlas.UnixStandardJob.py" Py:Athena INFO executing ROOT6Setup [?1034hPy:Athena INFO including file "AthenaCommon/Execution.py" Py:Athena INFO including file "DataModelRunTests/xAODTestSymlinks1_jo.py" -Py:ConfigurableDb INFO Read module info for 5294 configurables from 15 genConfDb files -Py:ConfigurableDb INFO No duplicates have been found: that's good ! +Py:ConfigurableDb INFO Read module info for 5296 configurables from 12 genConfDb files +Py:ConfigurableDb WARNING Found 1 duplicates among the 12 genConfDb files : +Py:ConfigurableDb WARNING -------------------------------------------------- +Py:ConfigurableDb WARNING -<component name>: <module> - [ <duplicates> ] +Py:ConfigurableDb WARNING -------------------------------------------------- +Py:ConfigurableDb WARNING -DMTest__xAODTestDecor: DataModelTestDataCommon.DataModelTestDataCommonConf - ['DataModelTestDataRead.DataModelTestDataReadConf'] +Py:ConfigurableDb WARNING Fix your cmt/requirements file !! Py:Athena INFO including file "AthenaCommon/runbatch.py" ApplicationMgr INFO Updating Gaudi::PluginService::SetDebug(level) to level= 'PluginDebugLevel':0 ApplicationMgr SUCCESS ==================================================================================================================================== Welcome to ApplicationMgr (GaudiCoreSvc v28r1) - running on lxplus005.cern.ch on Thu Apr 20 20:18:47 2017 + running on lxplus068.cern.ch on Mon Apr 24 16:12:24 2017 ==================================================================================================================================== ApplicationMgr INFO Successfully loaded modules : AthenaServices ApplicationMgr INFO Application Manager Configured successfully @@ -27,23 +32,23 @@ ChronoStatSvc INFO Number of skipped events for MemStat-1 CoreDumpSvc INFO install f-a-t-a-l handler... (flag = -1) CoreDumpSvc INFO Handling signals: 11(Segmentation fault) 7(Bus error) 4(Illegal instruction) 8(Floating point exception) AthenaEventLoopMgr INFO Initializing AthenaEventLoopMgr - package version AthenaServices-00-00-00 -ClassIDSvc INFO getRegistryEntries: read 5682 CLIDRegistry entries for module ALL -ClassIDSvc INFO getRegistryEntries: read 52 CLIDRegistry entries for module ALL +ClassIDSvc INFO getRegistryEntries: read 6160 CLIDRegistry entries for module ALL +ClassIDSvc INFO getRegistryEntries: read 57 CLIDRegistry entries for module ALL MetaDataSvc INFO Initializing MetaDataSvc - package version AthenaServices-00-00-00 AthenaPoolCnvSvc INFO Initializing AthenaPoolCnvSvc - package version AthenaPoolCnvSvc-00-00-00 PoolSvc INFO io_register[PoolSvc](xmlcatalog_file:PoolFileCatalog.xml) [ok] PoolSvc INFO Set connectionsvc retry/timeout/IDLE timeout to 'ConnectionRetrialPeriod':300/ 'ConnectionRetrialTimeOut':3600/ 'ConnectionTimeOut':5 seconds with connection cleanup disabled PoolSvc INFO Frontier compression level set to 5 DBReplicaSvc INFO Frontier server at (serverurl=http://atlasfrontier-local.cern.ch:8000/atlr)(serverurl=http://atlasfrontier-ai.cern.ch:8000/atlr)(serverurl=http://lcgft-atlas.gridpp.rl.ac.uk:3128/frontierATLAS)(serverurl=http://ccfrontier.in2p3.fr:23128/ccin2p3-AtlasFrontier)(proxyurl=http://ca-proxy.cern.ch:3128)(proxyurl=http://ca-proxy-meyrin.cern.ch:3128)(proxyurl=http://ca-proxy-wigner.cern.ch:3128) will be considered for COOL data -DBReplicaSvc INFO Read replica configuration from /cvmfs/atlas-nightlies.cern.ch/repo/sw/master/2017-04-18T2225/Athena/22.0.0/InstallArea/x86_64-slc6-gcc62-opt/share/dbreplica.config -DBReplicaSvc INFO Total of 10 servers found for host lxplus005.cern.ch [ATLF ATLAS_COOLPROD atlas_dd ATLAS_CONFIG INT8R INTR ATONR_COOL ATONR_CONF DEVDB11 ATLF ] +DBReplicaSvc INFO Read replica configuration from /cvmfs/atlas-nightlies.cern.ch/repo/sw/master/2017-04-23T2225/Athena/22.0.0/InstallArea/x86_64-slc6-gcc62-dbg/share/dbreplica.config +DBReplicaSvc INFO Total of 10 servers found for host lxplus068.cern.ch [ATLF ATLAS_COOLPROD atlas_dd ATLAS_CONFIG INT8R INTR ATONR_COOL ATONR_CONF DEVDB11 ATLF ] PoolSvc INFO Successfully setup replica sorting algorithm PoolSvc INFO Setting up APR FileCatalog and Streams PoolSvc INFO POOL WriteCatalog is xmlcatalog_file:PoolFileCatalog.xml DbSession Info Open DbSession Domain[ROOT_All] Info > Access DbDomain READ [ROOT_All] PoolSvc INFO Re-initializing PoolSvc -ClassIDSvc INFO getRegistryEntries: read 867 CLIDRegistry entries for module ALL +ClassIDSvc INFO getRegistryEntries: read 753 CLIDRegistry entries for module ALL HistogramPersis...WARNING Histograms saving not required. EventSelector INFO Enter McEventSelector Initialization AthenaEventLoopMgr INFO Setup EventSelector service EventSelector @@ -53,64 +58,64 @@ EventPersistenc... INFO Added successfully Conversion service:McCnvSvc AthenaEventLoopMgr INFO ===>>> start of run 0 <<<=== AthenaEventLoopMgr INFO ===>>> start processing event #0, run #0 0 events processed so far <<<=== ClassIDSvc INFO getRegistryEntries: read 104 CLIDRegistry entries for module ALL -xAODTestReadSym... INFO C (as AuxElement): 1000 +xAODTestReadSym... INFO C (as AuxElement): 1000; S 0 AthenaEventLoopMgr INFO ===>>> done processing event #0, run #0 1 events processed so far <<<=== AthenaEventLoopMgr INFO ===>>> start processing event #1, run #0 1 events processed so far <<<=== -xAODTestReadSym... INFO C (as AuxElement): 2000 +xAODTestReadSym... INFO C (as AuxElement): 2000; S 100 AthenaEventLoopMgr INFO ===>>> done processing event #1, run #0 2 events processed so far <<<=== AthenaEventLoopMgr INFO ===>>> start processing event #2, run #0 2 events processed so far <<<=== -xAODTestReadSym... INFO C (as AuxElement): 3000 +xAODTestReadSym... INFO C (as AuxElement): 3000; S 200 AthenaEventLoopMgr INFO ===>>> done processing event #2, run #0 3 events processed so far <<<=== AthenaEventLoopMgr INFO ===>>> start processing event #3, run #0 3 events processed so far <<<=== -xAODTestReadSym... INFO C (as AuxElement): 4000 +xAODTestReadSym... INFO C (as AuxElement): 4000; S 300 AthenaEventLoopMgr INFO ===>>> done processing event #3, run #0 4 events processed so far <<<=== AthenaEventLoopMgr INFO ===>>> start processing event #4, run #0 4 events processed so far <<<=== -xAODTestReadSym... INFO C (as AuxElement): 5000 +xAODTestReadSym... INFO C (as AuxElement): 5000; S 400 AthenaEventLoopMgr INFO ===>>> done processing event #4, run #0 5 events processed so far <<<=== AthenaEventLoopMgr INFO ===>>> start processing event #5, run #0 5 events processed so far <<<=== -xAODTestReadSym... INFO C (as AuxElement): 6000 +xAODTestReadSym... INFO C (as AuxElement): 6000; S 500 AthenaEventLoopMgr INFO ===>>> done processing event #5, run #0 6 events processed so far <<<=== AthenaEventLoopMgr INFO ===>>> start processing event #6, run #0 6 events processed so far <<<=== -xAODTestReadSym... INFO C (as AuxElement): 7000 +xAODTestReadSym... INFO C (as AuxElement): 7000; S 600 AthenaEventLoopMgr INFO ===>>> done processing event #6, run #0 7 events processed so far <<<=== AthenaEventLoopMgr INFO ===>>> start processing event #7, run #0 7 events processed so far <<<=== -xAODTestReadSym... INFO C (as AuxElement): 8000 +xAODTestReadSym... INFO C (as AuxElement): 8000; S 700 AthenaEventLoopMgr INFO ===>>> done processing event #7, run #0 8 events processed so far <<<=== AthenaEventLoopMgr INFO ===>>> start processing event #8, run #0 8 events processed so far <<<=== -xAODTestReadSym... INFO C (as AuxElement): 9000 +xAODTestReadSym... INFO C (as AuxElement): 9000; S 800 AthenaEventLoopMgr INFO ===>>> done processing event #8, run #0 9 events processed so far <<<=== AthenaEventLoopMgr INFO ===>>> start processing event #9, run #0 9 events processed so far <<<=== -xAODTestReadSym... INFO C (as AuxElement): 10000 +xAODTestReadSym... INFO C (as AuxElement): 10000; S 900 AthenaEventLoopMgr INFO ===>>> done processing event #9, run #0 10 events processed so far <<<=== AthenaEventLoopMgr INFO ===>>> start processing event #10, run #0 10 events processed so far <<<=== -xAODTestReadSym... INFO C (as AuxElement): 11000 +xAODTestReadSym... INFO C (as AuxElement): 11000; S 1000 AthenaEventLoopMgr INFO ===>>> done processing event #10, run #0 11 events processed so far <<<=== AthenaEventLoopMgr INFO ===>>> start processing event #11, run #0 11 events processed so far <<<=== -xAODTestReadSym... INFO C (as AuxElement): 12000 +xAODTestReadSym... INFO C (as AuxElement): 12000; S 1100 AthenaEventLoopMgr INFO ===>>> done processing event #11, run #0 12 events processed so far <<<=== AthenaEventLoopMgr INFO ===>>> start processing event #12, run #0 12 events processed so far <<<=== -xAODTestReadSym... INFO C (as AuxElement): 13000 +xAODTestReadSym... INFO C (as AuxElement): 13000; S 1200 AthenaEventLoopMgr INFO ===>>> done processing event #12, run #0 13 events processed so far <<<=== AthenaEventLoopMgr INFO ===>>> start processing event #13, run #0 13 events processed so far <<<=== -xAODTestReadSym... INFO C (as AuxElement): 14000 +xAODTestReadSym... INFO C (as AuxElement): 14000; S 1300 AthenaEventLoopMgr INFO ===>>> done processing event #13, run #0 14 events processed so far <<<=== AthenaEventLoopMgr INFO ===>>> start processing event #14, run #0 14 events processed so far <<<=== -xAODTestReadSym... INFO C (as AuxElement): 15000 +xAODTestReadSym... INFO C (as AuxElement): 15000; S 1400 AthenaEventLoopMgr INFO ===>>> done processing event #14, run #0 15 events processed so far <<<=== AthenaEventLoopMgr INFO ===>>> start processing event #15, run #0 15 events processed so far <<<=== -xAODTestReadSym... INFO C (as AuxElement): 16000 +xAODTestReadSym... INFO C (as AuxElement): 16000; S 1500 AthenaEventLoopMgr INFO ===>>> done processing event #15, run #0 16 events processed so far <<<=== AthenaEventLoopMgr INFO ===>>> start processing event #16, run #0 16 events processed so far <<<=== -xAODTestReadSym... INFO C (as AuxElement): 17000 +xAODTestReadSym... INFO C (as AuxElement): 17000; S 1600 AthenaEventLoopMgr INFO ===>>> done processing event #16, run #0 17 events processed so far <<<=== AthenaEventLoopMgr INFO ===>>> start processing event #17, run #0 17 events processed so far <<<=== -xAODTestReadSym... INFO C (as AuxElement): 18000 +xAODTestReadSym... INFO C (as AuxElement): 18000; S 1700 AthenaEventLoopMgr INFO ===>>> done processing event #17, run #0 18 events processed so far <<<=== AthenaEventLoopMgr INFO ===>>> start processing event #18, run #0 18 events processed so far <<<=== -xAODTestReadSym... INFO C (as AuxElement): 19000 +xAODTestReadSym... INFO C (as AuxElement): 19000; S 1800 AthenaEventLoopMgr INFO ===>>> done processing event #18, run #0 19 events processed so far <<<=== AthenaEventLoopMgr INFO ===>>> start processing event #19, run #0 19 events processed so far <<<=== -xAODTestReadSym... INFO C (as AuxElement): 20000 +xAODTestReadSym... INFO C (as AuxElement): 20000; S 1900 AthenaEventLoopMgr INFO ===>>> done processing event #19, run #0 20 events processed so far <<<=== Domain[ROOT_All] Info > Deaccess DbDomain READ [ROOT_All] ApplicationMgr INFO Application Manager Stopped successfully diff --git a/Control/DataModelTest/DataModelRunTests/share/xAODTestSymlinks1MT.ref b/Control/DataModelTest/DataModelRunTests/share/xAODTestSymlinks1MT.ref index 85e4e24bba881e7a517b8050021f94eeca1b455f..bec36ac663794729050f18db38d79b88d4245ac6 100644 --- a/Control/DataModelTest/DataModelRunTests/share/xAODTestSymlinks1MT.ref +++ b/Control/DataModelTest/DataModelRunTests/share/xAODTestSymlinks1MT.ref @@ -1,7 +1,7 @@ -Thu Apr 20 20:24:37 CEST 2017 +Mon Apr 24 16:12:05 CEST 2017 Preloading tcmalloc_minimal.so Py:Athena INFO including file "AthenaCommon/Preparation.py" -Py:Athena INFO using release [WorkDir-22.0.0] [x86_64-slc6-gcc62-opt] [atlas-work3g/725f3a42d9] -- built on [2017-04-20T1906] +Py:Athena INFO using release [WorkDir-22.0.0] [x86_64-slc6-gcc62-dbg] [mt-sss/06ff187fe6] -- built on [2017-04-24T1528] Py:Athena INFO including file "AthenaCommon/Bootstrap.py" Py:Athena INFO including file "AthenaCommon/Atlas.UnixStandardJob.py" Py:Athena INFO executing ROOT6Setup @@ -9,15 +9,20 @@ Py:Athena INFO executing ROOT6Setup Py:Athena INFO including file "AthenaCommon/Execution.py" Py:Athena INFO including file "DataModelRunTests/xAODTestSymlinks1MT_jo.py" Py:Athena INFO including file "DataModelRunTests/xAODTestSymlinks1_jo.py" -Py:ConfigurableDb INFO Read module info for 5294 configurables from 15 genConfDb files -Py:ConfigurableDb INFO No duplicates have been found: that's good ! +Py:ConfigurableDb INFO Read module info for 5296 configurables from 12 genConfDb files +Py:ConfigurableDb WARNING Found 1 duplicates among the 12 genConfDb files : +Py:ConfigurableDb WARNING -------------------------------------------------- +Py:ConfigurableDb WARNING -<component name>: <module> - [ <duplicates> ] +Py:ConfigurableDb WARNING -------------------------------------------------- +Py:ConfigurableDb WARNING -DMTest__xAODTestDecor: DataModelTestDataCommon.DataModelTestDataCommonConf - ['DataModelTestDataRead.DataModelTestDataReadConf'] +Py:ConfigurableDb WARNING Fix your cmt/requirements file !! Py:Athena INFO including file "AthenaCommon/runbatch.py" ApplicationMgr INFO Updating Gaudi::PluginService::SetDebug(level) to level= 'PluginDebugLevel':0 MessageSvc INFO Activating in a separate thread ApplicationMgr SUCCESS ==================================================================================================================================== Welcome to ApplicationMgr (GaudiCoreSvc v28r1) - running on lxplus005.cern.ch on Thu Apr 20 20:24:50 2017 + running on lxplus068.cern.ch on Mon Apr 24 16:12:35 2017 ==================================================================================================================================== ApplicationMgr INFO Successfully loaded modules : AthenaServices ApplicationMgr INFO Application Manager Configured successfully @@ -35,27 +40,30 @@ PoolSvc INFO io_register[PoolSvc](xml PoolSvc INFO Set connectionsvc retry/timeout/IDLE timeout to 'ConnectionRetrialPeriod':300/ 'ConnectionRetrialTimeOut':3600/ 'ConnectionTimeOut':5 seconds with connection cleanup disabled PoolSvc INFO Frontier compression level set to 5 DBReplicaSvc INFO Frontier server at (serverurl=http://atlasfrontier-local.cern.ch:8000/atlr)(serverurl=http://atlasfrontier-ai.cern.ch:8000/atlr)(serverurl=http://lcgft-atlas.gridpp.rl.ac.uk:3128/frontierATLAS)(serverurl=http://ccfrontier.in2p3.fr:23128/ccin2p3-AtlasFrontier)(proxyurl=http://ca-proxy.cern.ch:3128)(proxyurl=http://ca-proxy-meyrin.cern.ch:3128)(proxyurl=http://ca-proxy-wigner.cern.ch:3128) will be considered for COOL data -DBReplicaSvc INFO Read replica configuration from /cvmfs/atlas-nightlies.cern.ch/repo/sw/master/2017-04-18T2225/Athena/22.0.0/InstallArea/x86_64-slc6-gcc62-opt/share/dbreplica.config -DBReplicaSvc INFO Total of 10 servers found for host lxplus005.cern.ch [ATLF ATLAS_COOLPROD atlas_dd ATLAS_CONFIG INT8R INTR ATONR_COOL ATONR_CONF DEVDB11 ATLF ] +DBReplicaSvc INFO Read replica configuration from /cvmfs/atlas-nightlies.cern.ch/repo/sw/master/2017-04-23T2225/Athena/22.0.0/InstallArea/x86_64-slc6-gcc62-dbg/share/dbreplica.config +DBReplicaSvc INFO Total of 10 servers found for host lxplus068.cern.ch [ATLF ATLAS_COOLPROD atlas_dd ATLAS_CONFIG INT8R INTR ATONR_COOL ATONR_CONF DEVDB11 ATLF ] PoolSvc INFO Successfully setup replica sorting algorithm PoolSvc INFO Setting up APR FileCatalog and Streams PoolSvc INFO POOL WriteCatalog is xmlcatalog_file:PoolFileCatalog.xml DbSession Info Open DbSession Domain[ROOT_All] Info > Access DbDomain READ [ROOT_All] PoolSvc INFO Re-initializing PoolSvc -ClassIDSvc INFO getRegistryEntries: read 6549 CLIDRegistry entries for module ALL -ClassIDSvc INFO getRegistryEntries: read 52 CLIDRegistry entries for module ALL +ClassIDSvc INFO getRegistryEntries: read 6913 CLIDRegistry entries for module ALL +ClassIDSvc INFO getRegistryEntries: read 57 CLIDRegistry entries for module ALL SGInputLoader INFO Will preload the following DataObjects: ThreadPoolSvc INFO no thread init tools attached ForwardSchedulerSvc INFO Activating scheduler in a separate thread ForwardSchedulerSvc INFO Waiting for ForwardSchedulerSvc to activate ForwardSchedulerSvc INFO Start checking the actionsQueue ForwardSchedulerSvc WARNING Property MaxEventsInFlight was set. This works but it's deprecated. Please migrate your code options files. -ForwardSchedulerSvc INFO Found 8 algorithms +ForwardSchedulerSvc INFO Found 9 algorithms ForwardSchedulerSvc INFO outputs: -('DMTest::C','cinfo') -('SG::AuxElement','cinfo') ('DMTest::CVec','cvec') +('SG::AuxElement','cinfo') +('DMTest::S2','S2alias') +('DMTest::S1','S2') +('DMTest::C','cinfo') +('DMTest::S2','S2') ForwardSchedulerSvc INFO Data Dependencies for Algorithms: BeginIncFiringAlg @@ -72,8 +80,16 @@ ForwardSchedulerSvc INFO Data Dependencies for Al o INPUT ('DMTest::CVec','cvec') o OUTPUT ('SG::AuxElement','cinfo') o OUTPUT ('DMTest::C','cinfo') + xAODTestWriteSymlinks + o INPUT ('EventInfo','McEventInfo') + o OUTPUT ('DMTest::S2','S2') + o OUTPUT ('DMTest::S1','S2') + o OUTPUT ('DMTest::S2','S2alias') xAODTestReadSymlink o INPUT ('SG::AuxElement','cinfo') + o INPUT ('DMTest::S1','S2') + o INPUT ('DMTest::S2','S2') + o INPUT ('DMTest::S2','S2alias') EndIncFiringAlg none IncidentProcAlg2 @@ -82,6 +98,7 @@ ForwardSchedulerSvc INFO Will attribute the follo o ('EventInfo','McEventInfo') required by Algorithm: * xAODTestWriteCVec * xAODTestWriteCInfo + * xAODTestWriteSymlinks ForwardSchedulerSvc INFO Concurrency level information: ForwardSchedulerSvc INFO o Number of events in flight: 'MaxEventsInFlight':1 ForwardSchedulerSvc INFO o Number of algorithms in flight: 'MaxAlgosInFlight':1 @@ -96,66 +113,66 @@ EventPersistencySvc INFO Added successfully Conve AthenaHiveEventLoopMgr INFO ===>>> start of run 0 <<<=== AthenaHiveEventLoopMgr INFO ===>>> start processing event #0, run #0 on slot 0, 0 events processed so far <<<=== ClassIDSvc 0 0 INFO getRegistryEntries: read 104 CLIDRegistry entries for module ALL -xAODTestReadSymlink 0 0 INFO C (as AuxElement): 1000 +xAODTestReadSymlink 0 0 INFO C (as AuxElement): 1000; S 0 AthenaHiveEventLoopMgr INFO ===>>> done processing event #0, run #0 on slot 0, 1 events processed so far <<<=== AthenaHiveEventLoopMgr INFO ===>>> start processing event #1, run #0 on slot 0, 1 events processed so far <<<=== -xAODTestReadSymlink 1 0 INFO C (as AuxElement): 2000 +xAODTestReadSymlink 1 0 INFO C (as AuxElement): 2000; S 100 AthenaHiveEventLoopMgr INFO ===>>> done processing event #1, run #0 on slot 0, 2 events processed so far <<<=== AthenaHiveEventLoopMgr INFO ===>>> start processing event #2, run #0 on slot 0, 2 events processed so far <<<=== -xAODTestReadSymlink 2 0 INFO C (as AuxElement): 3000 +xAODTestReadSymlink 2 0 INFO C (as AuxElement): 3000; S 200 AthenaHiveEventLoopMgr INFO ===>>> done processing event #2, run #0 on slot 0, 3 events processed so far <<<=== AthenaHiveEventLoopMgr INFO ===>>> start processing event #3, run #0 on slot 0, 3 events processed so far <<<=== -xAODTestReadSymlink 3 0 INFO C (as AuxElement): 4000 +xAODTestReadSymlink 3 0 INFO C (as AuxElement): 4000; S 300 AthenaHiveEventLoopMgr INFO ===>>> done processing event #3, run #0 on slot 0, 4 events processed so far <<<=== AthenaHiveEventLoopMgr INFO ===>>> start processing event #4, run #0 on slot 0, 4 events processed so far <<<=== -xAODTestReadSymlink 4 0 INFO C (as AuxElement): 5000 +xAODTestReadSymlink 4 0 INFO C (as AuxElement): 5000; S 400 AthenaHiveEventLoopMgr INFO ===>>> done processing event #4, run #0 on slot 0, 5 events processed so far <<<=== AthenaHiveEventLoopMgr INFO ===>>> start processing event #5, run #0 on slot 0, 5 events processed so far <<<=== -xAODTestReadSymlink 5 0 INFO C (as AuxElement): 6000 +xAODTestReadSymlink 5 0 INFO C (as AuxElement): 6000; S 500 AthenaHiveEventLoopMgr INFO ===>>> done processing event #5, run #0 on slot 0, 6 events processed so far <<<=== AthenaHiveEventLoopMgr INFO ===>>> start processing event #6, run #0 on slot 0, 6 events processed so far <<<=== -xAODTestReadSymlink 6 0 INFO C (as AuxElement): 7000 +xAODTestReadSymlink 6 0 INFO C (as AuxElement): 7000; S 600 AthenaHiveEventLoopMgr INFO ===>>> done processing event #6, run #0 on slot 0, 7 events processed so far <<<=== AthenaHiveEventLoopMgr INFO ===>>> start processing event #7, run #0 on slot 0, 7 events processed so far <<<=== -xAODTestReadSymlink 7 0 INFO C (as AuxElement): 8000 +xAODTestReadSymlink 7 0 INFO C (as AuxElement): 8000; S 700 AthenaHiveEventLoopMgr INFO ===>>> done processing event #7, run #0 on slot 0, 8 events processed so far <<<=== AthenaHiveEventLoopMgr INFO ===>>> start processing event #8, run #0 on slot 0, 8 events processed so far <<<=== -xAODTestReadSymlink 8 0 INFO C (as AuxElement): 9000 +xAODTestReadSymlink 8 0 INFO C (as AuxElement): 9000; S 800 AthenaHiveEventLoopMgr INFO ===>>> done processing event #8, run #0 on slot 0, 9 events processed so far <<<=== AthenaHiveEventLoopMgr INFO ===>>> start processing event #9, run #0 on slot 0, 9 events processed so far <<<=== -xAODTestReadSymlink 9 0 INFO C (as AuxElement): 10000 +xAODTestReadSymlink 9 0 INFO C (as AuxElement): 10000; S 900 AthenaHiveEventLoopMgr INFO ===>>> done processing event #9, run #0 on slot 0, 10 events processed so far <<<=== AthenaHiveEventLoopMgr INFO ===>>> start processing event #10, run #0 on slot 0, 10 events processed so far <<<=== -xAODTestReadSymlink 10 0 INFO C (as AuxElement): 11000 +xAODTestReadSymlink 10 0 INFO C (as AuxElement): 11000; S 1000 AthenaHiveEventLoopMgr INFO ===>>> done processing event #10, run #0 on slot 0, 11 events processed so far <<<=== AthenaHiveEventLoopMgr INFO ===>>> start processing event #11, run #0 on slot 0, 11 events processed so far <<<=== -xAODTestReadSymlink 11 0 INFO C (as AuxElement): 12000 +xAODTestReadSymlink 11 0 INFO C (as AuxElement): 12000; S 1100 AthenaHiveEventLoopMgr INFO ===>>> done processing event #11, run #0 on slot 0, 12 events processed so far <<<=== AthenaHiveEventLoopMgr INFO ===>>> start processing event #12, run #0 on slot 0, 12 events processed so far <<<=== -xAODTestReadSymlink 12 0 INFO C (as AuxElement): 13000 +xAODTestReadSymlink 12 0 INFO C (as AuxElement): 13000; S 1200 AthenaHiveEventLoopMgr INFO ===>>> done processing event #12, run #0 on slot 0, 13 events processed so far <<<=== AthenaHiveEventLoopMgr INFO ===>>> start processing event #13, run #0 on slot 0, 13 events processed so far <<<=== -xAODTestReadSymlink 13 0 INFO C (as AuxElement): 14000 +xAODTestReadSymlink 13 0 INFO C (as AuxElement): 14000; S 1300 AthenaHiveEventLoopMgr INFO ===>>> done processing event #13, run #0 on slot 0, 14 events processed so far <<<=== AthenaHiveEventLoopMgr INFO ===>>> start processing event #14, run #0 on slot 0, 14 events processed so far <<<=== -xAODTestReadSymlink 14 0 INFO C (as AuxElement): 15000 +xAODTestReadSymlink 14 0 INFO C (as AuxElement): 15000; S 1400 AthenaHiveEventLoopMgr INFO ===>>> done processing event #14, run #0 on slot 0, 15 events processed so far <<<=== AthenaHiveEventLoopMgr INFO ===>>> start processing event #15, run #0 on slot 0, 15 events processed so far <<<=== -xAODTestReadSymlink 15 0 INFO C (as AuxElement): 16000 +xAODTestReadSymlink 15 0 INFO C (as AuxElement): 16000; S 1500 AthenaHiveEventLoopMgr INFO ===>>> done processing event #15, run #0 on slot 0, 16 events processed so far <<<=== AthenaHiveEventLoopMgr INFO ===>>> start processing event #16, run #0 on slot 0, 16 events processed so far <<<=== -xAODTestReadSymlink 16 0 INFO C (as AuxElement): 17000 +xAODTestReadSymlink 16 0 INFO C (as AuxElement): 17000; S 1600 AthenaHiveEventLoopMgr INFO ===>>> done processing event #16, run #0 on slot 0, 17 events processed so far <<<=== AthenaHiveEventLoopMgr INFO ===>>> start processing event #17, run #0 on slot 0, 17 events processed so far <<<=== -xAODTestReadSymlink 17 0 INFO C (as AuxElement): 18000 +xAODTestReadSymlink 17 0 INFO C (as AuxElement): 18000; S 1700 AthenaHiveEventLoopMgr INFO ===>>> done processing event #17, run #0 on slot 0, 18 events processed so far <<<=== AthenaHiveEventLoopMgr INFO ===>>> start processing event #18, run #0 on slot 0, 18 events processed so far <<<=== -xAODTestReadSymlink 18 0 INFO C (as AuxElement): 19000 +xAODTestReadSymlink 18 0 INFO C (as AuxElement): 19000; S 1800 AthenaHiveEventLoopMgr INFO ===>>> done processing event #18, run #0 on slot 0, 19 events processed so far <<<=== AthenaHiveEventLoopMgr INFO ===>>> start processing event #19, run #0 on slot 0, 19 events processed so far <<<=== -xAODTestReadSymlink 19 0 INFO C (as AuxElement): 20000 +xAODTestReadSymlink 19 0 INFO C (as AuxElement): 20000; S 1900 AthenaHiveEventLoopMgr INFO ===>>> done processing event #19, run #0 on slot 0, 20 events processed so far <<<=== -AthenaHiveEventLoopMgr INFO ---> Loop Finished (seconds): 0.0441599 +AthenaHiveEventLoopMgr INFO ---> Loop Finished (seconds): 0.353586 Domain[ROOT_All] Info > Deaccess DbDomain READ [ROOT_All] ApplicationMgr INFO Application Manager Stopped successfully IncidentProcAlg1 INFO Finalize @@ -164,7 +181,7 @@ IncidentProcAlg2 INFO Finalize EventSelector INFO finalize ForwardSchedulerSvc INFO Joining Scheduler thread ForwardSchedulerSvc 19 0 INFO Terminating thread-pool resources -TimelineSvc INFO Outputting timeline with 160 entries to file 'TimelineFile':timeline.csv +TimelineSvc INFO Outputting timeline with 180 entries to file 'TimelineFile':timeline.csv EventDataSvc INFO Finalizing EventDataSvc - package version StoreGate-00-00-00 AthDictLoaderSvc INFO in finalize... ToolSvc INFO Removing all tools created by ToolSvc diff --git a/Control/DataModelTest/DataModelRunTests/share/xAODTestSymlinks1_jo.py b/Control/DataModelTest/DataModelRunTests/share/xAODTestSymlinks1_jo.py index b2fcac96491ba38127f8edb670e0c08f22b2a5db..e819e9f2c229bb5fc2f31ca4f4208fec3086204d 100644 --- a/Control/DataModelTest/DataModelRunTests/share/xAODTestSymlinks1_jo.py +++ b/Control/DataModelTest/DataModelRunTests/share/xAODTestSymlinks1_jo.py @@ -51,9 +51,11 @@ from DataModelTestDataCommon.DataModelTestDataCommonConf import \ DMTest__xAODTestReadSymlink from DataModelTestDataWrite.DataModelTestDataWriteConf import \ DMTest__xAODTestWriteCVec, \ - DMTest__xAODTestWriteCInfo + DMTest__xAODTestWriteCInfo, \ + DMTest__xAODTestWriteSymlinks topSequence += DMTest__xAODTestWriteCVec ("xAODTestWriteCVec") topSequence += DMTest__xAODTestWriteCInfo ("xAODTestWriteCInfo") +topSequence += DMTest__xAODTestWriteSymlinks ("xAODTestWriteSymlinks") topSequence += DMTest__xAODTestReadSymlink ("xAODTestReadSymlink", Key='cinfo') diff --git a/Control/DataModelTest/DataModelRunTests/share/xAODTestSymlinks2.ref b/Control/DataModelTest/DataModelRunTests/share/xAODTestSymlinks2.ref index 35e97761a0400dc49bee649c58462f849d59c1e7..fcff043e09c3783bc7ce520ddf4b2f239c2caca1 100644 --- a/Control/DataModelTest/DataModelRunTests/share/xAODTestSymlinks2.ref +++ b/Control/DataModelTest/DataModelRunTests/share/xAODTestSymlinks2.ref @@ -1,20 +1,20 @@ -Fri Apr 7 03:45:19 CEST 2017 +Sat Apr 8 04:35:07 CEST 2017 Preloading tcmalloc_minimal.so Py:Athena INFO including file "AthenaCommon/Preparation.py" -Py:Athena INFO using release [AthenaWorkDir-22.0.0] [x86_64-slc6-gcc62-dbg] [mt-sss/4765e91ead] -- built on [2017-04-07T0230] +Py:Athena INFO using release [AthenaWorkDir-22.0.0] [x86_64-slc6-gcc62-dbg] [mt-sss/22868139e4] -- built on [2017-04-07T2349] Py:Athena INFO including file "AthenaCommon/Bootstrap.py" Py:Athena INFO including file "AthenaCommon/Atlas.UnixStandardJob.py" Py:Athena INFO executing ROOT6Setup [?1034hPy:Athena INFO including file "AthenaCommon/Execution.py" Py:Athena INFO including file "DataModelRunTests/xAODTestSymlinks2_jo.py" -Py:ConfigurableDb INFO Read module info for 5290 configurables from 30 genConfDb files +Py:ConfigurableDb INFO Read module info for 5291 configurables from 30 genConfDb files Py:ConfigurableDb INFO No duplicates have been found: that's good ! Py:Athena INFO including file "AthenaCommon/runbatch.py" ApplicationMgr INFO Updating Gaudi::PluginService::SetDebug(level) to level= 'PluginDebugLevel':0 ApplicationMgr SUCCESS ==================================================================================================================================== Welcome to ApplicationMgr (GaudiCoreSvc v28r1) - running on lxplus042.cern.ch on Fri Apr 7 03:45:41 2017 + running on lxplus068.cern.ch on Sat Apr 8 04:35:29 2017 ==================================================================================================================================== ApplicationMgr INFO Successfully loaded modules : AthenaServices ApplicationMgr INFO Application Manager Configured successfully @@ -22,12 +22,12 @@ ApplicationMgr INFO Updating Gaudi::PluginService::SetDebug(level) to leve StatusCodeSvc INFO initialize AthDictLoaderSvc INFO in initialize... AthDictLoaderSvc INFO acquired Dso-registry -ClassIDSvc INFO getRegistryEntries: read 8862 CLIDRegistry entries for module ALL +ClassIDSvc INFO getRegistryEntries: read 8868 CLIDRegistry entries for module ALL ChronoStatSvc INFO Number of skipped events for MemStat-1 CoreDumpSvc INFO install f-a-t-a-l handler... (flag = -1) CoreDumpSvc INFO Handling signals: 11(Segmentation fault) 7(Bus error) 4(Illegal instruction) 8(Floating point exception) AthenaEventLoopMgr INFO Initializing AthenaEventLoopMgr - package version AthenaServices-00-00-00 -ClassIDSvc INFO getRegistryEntries: read 358 CLIDRegistry entries for module ALL +ClassIDSvc INFO getRegistryEntries: read 360 CLIDRegistry entries for module ALL MetaDataSvc INFO Initializing MetaDataSvc - package version AthenaServices-00-00-00 AthenaPoolCnvSvc INFO Initializing AthenaPoolCnvSvc - package version AthenaPoolCnvSvc-00-00-00 PoolSvc INFO Initializing PoolSvc - package version PoolSvc-00-00-00 @@ -36,7 +36,7 @@ PoolSvc INFO Set connectionsvc retry/timeout/IDLE timeout to 'Conn PoolSvc INFO Frontier compression level set to 5 DBReplicaSvc INFO Frontier server at (serverurl=http://atlasfrontier-ai.cern.ch:8000/atlr)(serverurl=http://aiatlas036.cern.ch:8000/atlr)(serverurl=http://aiatlas034.cern.ch:8000/atlr)(serverurl=http://ccfrontier.in2p3.fr:23128/ccin2p3-AtlasFrontier)(serverurl=http://ccfrontier01.in2p3.fr:23128/ccin2p3-AtlasFrontier)(serverurl=http://ccfrontier05.in2p3.fr:23128/ccin2p3-AtlasFrontier)(proxyurl=http://ca-proxy.cern.ch:3128)(proxyurl=http://ca20.cern.ch:3128)(proxyurl=http://ca17.cern.ch:3128)(proxyurl=http://atlast0fsquid.cern.ch:3128)(proxyurl=http://atlassquid1.cern.ch:3128)(proxyurl=http://atlassquid2.cern.ch:3128)(proxyurl=http://atlassquid4.cern.ch:3128) will be considered for COOL data DBReplicaSvc INFO Read replica configuration from /cvmfs/atlas-nightlies.cern.ch/repo/sw/master/2017-04-05T2225/Athena/22.0.0/InstallArea/x86_64-slc6-gcc62-dbg/share/dbreplica.config -DBReplicaSvc INFO Total of 10 servers found for host lxplus042.cern.ch [ATLF ATLAS_COOLPROD atlas_dd ATLAS_CONFIG INT8R INTR ATONR_COOL ATONR_CONF DEVDB11 ATLF ] +DBReplicaSvc INFO Total of 10 servers found for host lxplus068.cern.ch [ATLF ATLAS_COOLPROD atlas_dd ATLAS_CONFIG INT8R INTR ATONR_COOL ATONR_CONF DEVDB11 ATLF ] PoolSvc INFO Successfully setup replica sorting algorithm PoolSvc INFO Setting up APR FileCatalog and Streams PoolSvc INFO POOL WriteCatalog is xmlcatalog_file:PoolFileCatalog.xml @@ -83,65 +83,65 @@ AthenaPoolConve... INFO massageEventInfo: unable to get OverrideRunNumberFromI AthenaEventLoopMgr INFO ===>>> start of run 0 <<<=== AthenaEventLoopMgr INFO ===>>> start processing event #0, run #0 0 events processed so far <<<=== ClassIDSvc INFO getRegistryEntries: read 11 CLIDRegistry entries for module ALL -xAODTestReadSym... INFO C (as AuxElement): 1000 -ClassIDSvc INFO getRegistryEntries: read 48 CLIDRegistry entries for module ALL +xAODTestReadSym... INFO C (as AuxElement): 1000; S 0 +ClassIDSvc INFO getRegistryEntries: read 50 CLIDRegistry entries for module ALL AthenaEventLoopMgr INFO ===>>> done processing event #0, run #0 1 events processed so far <<<=== AthenaEventLoopMgr INFO ===>>> start processing event #1, run #0 1 events processed so far <<<=== -xAODTestReadSym... INFO C (as AuxElement): 2000 +xAODTestReadSym... INFO C (as AuxElement): 2000; S 100 AthenaEventLoopMgr INFO ===>>> done processing event #1, run #0 2 events processed so far <<<=== AthenaEventLoopMgr INFO ===>>> start processing event #2, run #0 2 events processed so far <<<=== -xAODTestReadSym... INFO C (as AuxElement): 3000 +xAODTestReadSym... INFO C (as AuxElement): 3000; S 200 AthenaEventLoopMgr INFO ===>>> done processing event #2, run #0 3 events processed so far <<<=== AthenaEventLoopMgr INFO ===>>> start processing event #3, run #0 3 events processed so far <<<=== -xAODTestReadSym... INFO C (as AuxElement): 4000 +xAODTestReadSym... INFO C (as AuxElement): 4000; S 300 AthenaEventLoopMgr INFO ===>>> done processing event #3, run #0 4 events processed so far <<<=== AthenaEventLoopMgr INFO ===>>> start processing event #4, run #0 4 events processed so far <<<=== -xAODTestReadSym... INFO C (as AuxElement): 5000 +xAODTestReadSym... INFO C (as AuxElement): 5000; S 400 AthenaEventLoopMgr INFO ===>>> done processing event #4, run #0 5 events processed so far <<<=== AthenaEventLoopMgr INFO ===>>> start processing event #5, run #0 5 events processed so far <<<=== -xAODTestReadSym... INFO C (as AuxElement): 6000 +xAODTestReadSym... INFO C (as AuxElement): 6000; S 500 AthenaEventLoopMgr INFO ===>>> done processing event #5, run #0 6 events processed so far <<<=== AthenaEventLoopMgr INFO ===>>> start processing event #6, run #0 6 events processed so far <<<=== -xAODTestReadSym... INFO C (as AuxElement): 7000 +xAODTestReadSym... INFO C (as AuxElement): 7000; S 600 AthenaEventLoopMgr INFO ===>>> done processing event #6, run #0 7 events processed so far <<<=== AthenaEventLoopMgr INFO ===>>> start processing event #7, run #0 7 events processed so far <<<=== -xAODTestReadSym... INFO C (as AuxElement): 8000 +xAODTestReadSym... INFO C (as AuxElement): 8000; S 700 AthenaEventLoopMgr INFO ===>>> done processing event #7, run #0 8 events processed so far <<<=== AthenaEventLoopMgr INFO ===>>> start processing event #8, run #0 8 events processed so far <<<=== -xAODTestReadSym... INFO C (as AuxElement): 9000 +xAODTestReadSym... INFO C (as AuxElement): 9000; S 800 AthenaEventLoopMgr INFO ===>>> done processing event #8, run #0 9 events processed so far <<<=== AthenaEventLoopMgr INFO ===>>> start processing event #9, run #0 9 events processed so far <<<=== -xAODTestReadSym... INFO C (as AuxElement): 10000 +xAODTestReadSym... INFO C (as AuxElement): 10000; S 900 AthenaEventLoopMgr INFO ===>>> done processing event #9, run #0 10 events processed so far <<<=== AthenaEventLoopMgr INFO ===>>> start processing event #10, run #0 10 events processed so far <<<=== -xAODTestReadSym... INFO C (as AuxElement): 11000 +xAODTestReadSym... INFO C (as AuxElement): 11000; S 1000 AthenaEventLoopMgr INFO ===>>> done processing event #10, run #0 11 events processed so far <<<=== AthenaEventLoopMgr INFO ===>>> start processing event #11, run #0 11 events processed so far <<<=== -xAODTestReadSym... INFO C (as AuxElement): 12000 +xAODTestReadSym... INFO C (as AuxElement): 12000; S 1100 AthenaEventLoopMgr INFO ===>>> done processing event #11, run #0 12 events processed so far <<<=== AthenaEventLoopMgr INFO ===>>> start processing event #12, run #0 12 events processed so far <<<=== -xAODTestReadSym... INFO C (as AuxElement): 13000 +xAODTestReadSym... INFO C (as AuxElement): 13000; S 1200 AthenaEventLoopMgr INFO ===>>> done processing event #12, run #0 13 events processed so far <<<=== AthenaEventLoopMgr INFO ===>>> start processing event #13, run #0 13 events processed so far <<<=== -xAODTestReadSym... INFO C (as AuxElement): 14000 +xAODTestReadSym... INFO C (as AuxElement): 14000; S 1300 AthenaEventLoopMgr INFO ===>>> done processing event #13, run #0 14 events processed so far <<<=== AthenaEventLoopMgr INFO ===>>> start processing event #14, run #0 14 events processed so far <<<=== -xAODTestReadSym... INFO C (as AuxElement): 15000 +xAODTestReadSym... INFO C (as AuxElement): 15000; S 1400 AthenaEventLoopMgr INFO ===>>> done processing event #14, run #0 15 events processed so far <<<=== AthenaEventLoopMgr INFO ===>>> start processing event #15, run #0 15 events processed so far <<<=== -xAODTestReadSym... INFO C (as AuxElement): 16000 +xAODTestReadSym... INFO C (as AuxElement): 16000; S 1500 AthenaEventLoopMgr INFO ===>>> done processing event #15, run #0 16 events processed so far <<<=== AthenaEventLoopMgr INFO ===>>> start processing event #16, run #0 16 events processed so far <<<=== -xAODTestReadSym... INFO C (as AuxElement): 17000 +xAODTestReadSym... INFO C (as AuxElement): 17000; S 1600 AthenaEventLoopMgr INFO ===>>> done processing event #16, run #0 17 events processed so far <<<=== AthenaEventLoopMgr INFO ===>>> start processing event #17, run #0 17 events processed so far <<<=== -xAODTestReadSym... INFO C (as AuxElement): 18000 +xAODTestReadSym... INFO C (as AuxElement): 18000; S 1700 AthenaEventLoopMgr INFO ===>>> done processing event #17, run #0 18 events processed so far <<<=== AthenaEventLoopMgr INFO ===>>> start processing event #18, run #0 18 events processed so far <<<=== -xAODTestReadSym... INFO C (as AuxElement): 19000 +xAODTestReadSym... INFO C (as AuxElement): 19000; S 1800 AthenaEventLoopMgr INFO ===>>> done processing event #18, run #0 19 events processed so far <<<=== AthenaEventLoopMgr INFO ===>>> start processing event #19, run #0 19 events processed so far <<<=== -xAODTestReadSym... INFO C (as AuxElement): 20000 +xAODTestReadSym... INFO C (as AuxElement): 20000; S 1900 AthenaEventLoopMgr INFO ===>>> done processing event #19, run #0 20 events processed so far <<<=== xaoddata.root Info Database being retired... Domain[ROOT_All] Info -> Deaccess DbDatabase READ [ROOT_All] C99A5126-381F-7F4F-B568-3D70CAC1AC25 diff --git a/Control/DataModelTest/DataModelRunTests/share/xAODTestSymlinks2MT.ref b/Control/DataModelTest/DataModelRunTests/share/xAODTestSymlinks2MT.ref index fd1c6f485f64d22f8b417ea8583361d4ba818fd1..560c67e50c0a10b3ab3d5fba48cd7db322aefaa8 100644 --- a/Control/DataModelTest/DataModelRunTests/share/xAODTestSymlinks2MT.ref +++ b/Control/DataModelTest/DataModelRunTests/share/xAODTestSymlinks2MT.ref @@ -1,7 +1,7 @@ -Fri Apr 7 03:44:23 CEST 2017 +Sat Apr 8 03:23:26 CEST 2017 Preloading tcmalloc_minimal.so Py:Athena INFO including file "AthenaCommon/Preparation.py" -Py:Athena INFO using release [AthenaWorkDir-22.0.0] [x86_64-slc6-gcc62-dbg] [mt-sss/4765e91ead] -- built on [2017-04-07T0230] +Py:Athena INFO using release [AthenaWorkDir-22.0.0] [x86_64-slc6-gcc62-dbg] [mt-sss/22868139e4] -- built on [2017-04-07T2349] Py:Athena INFO including file "AthenaCommon/Bootstrap.py" Py:Athena INFO including file "AthenaCommon/Atlas.UnixStandardJob.py" Py:Athena INFO executing ROOT6Setup @@ -9,7 +9,7 @@ Py:Athena INFO executing ROOT6Setup Py:Athena INFO including file "AthenaCommon/Execution.py" Py:Athena INFO including file "DataModelRunTests/xAODTestSymlinks2MT_jo.py" Py:Athena INFO including file "DataModelRunTests/xAODTestSymlinks2_jo.py" -Py:ConfigurableDb INFO Read module info for 5290 configurables from 30 genConfDb files +Py:ConfigurableDb INFO Read module info for 5291 configurables from 30 genConfDb files Py:ConfigurableDb INFO No duplicates have been found: that's good ! Py:Athena INFO including file "AthenaCommon/runbatch.py" ApplicationMgr INFO Updating Gaudi::PluginService::SetDebug(level) to level= 'PluginDebugLevel':0 @@ -17,14 +17,14 @@ MessageSvc INFO Activating in a separate thread ApplicationMgr SUCCESS ==================================================================================================================================== Welcome to ApplicationMgr (GaudiCoreSvc v28r1) - running on lxplus042.cern.ch on Fri Apr 7 03:44:44 2017 + running on lxplus068.cern.ch on Sat Apr 8 03:23:48 2017 ==================================================================================================================================== ApplicationMgr INFO Successfully loaded modules : AthenaServices ApplicationMgr INFO Application Manager Configured successfully ApplicationMgr INFO Updating Gaudi::PluginService::SetDebug(level) to level= 'PluginDebugLevel':0 AthDictLoaderSvc INFO in initialize... AthDictLoaderSvc INFO acquired Dso-registry -ClassIDSvc INFO getRegistryEntries: read 9237 CLIDRegistry entries for module ALL +ClassIDSvc INFO getRegistryEntries: read 9243 CLIDRegistry entries for module ALL ChronoStatSvc INFO Number of skipped events for MemStat-1 CoreDumpSvc INFO install f-a-t-a-l handler... (flag = -1) CoreDumpSvc INFO Handling signals: 11(Segmentation fault) 7(Bus error) 4(Illegal instruction) 8(Floating point exception) @@ -37,7 +37,7 @@ PoolSvc INFO Set connectionsvc retry/ PoolSvc INFO Frontier compression level set to 5 DBReplicaSvc INFO Frontier server at (serverurl=http://atlasfrontier-ai.cern.ch:8000/atlr)(serverurl=http://aiatlas036.cern.ch:8000/atlr)(serverurl=http://aiatlas034.cern.ch:8000/atlr)(serverurl=http://ccfrontier.in2p3.fr:23128/ccin2p3-AtlasFrontier)(serverurl=http://ccfrontier01.in2p3.fr:23128/ccin2p3-AtlasFrontier)(serverurl=http://ccfrontier05.in2p3.fr:23128/ccin2p3-AtlasFrontier)(proxyurl=http://ca-proxy.cern.ch:3128)(proxyurl=http://ca20.cern.ch:3128)(proxyurl=http://ca17.cern.ch:3128)(proxyurl=http://atlast0fsquid.cern.ch:3128)(proxyurl=http://atlassquid1.cern.ch:3128)(proxyurl=http://atlassquid2.cern.ch:3128)(proxyurl=http://atlassquid4.cern.ch:3128) will be considered for COOL data DBReplicaSvc INFO Read replica configuration from /cvmfs/atlas-nightlies.cern.ch/repo/sw/master/2017-04-05T2225/Athena/22.0.0/InstallArea/x86_64-slc6-gcc62-dbg/share/dbreplica.config -DBReplicaSvc INFO Total of 10 servers found for host lxplus042.cern.ch [ATLF ATLAS_COOLPROD atlas_dd ATLAS_CONFIG INT8R INTR ATONR_COOL ATONR_CONF DEVDB11 ATLF ] +DBReplicaSvc INFO Total of 10 servers found for host lxplus068.cern.ch [ATLF ATLAS_COOLPROD atlas_dd ATLAS_CONFIG INT8R INTR ATONR_COOL ATONR_CONF DEVDB11 ATLF ] PoolSvc INFO Successfully setup replica sorting algorithm PoolSvc INFO Setting up APR FileCatalog and Streams PoolSvc INFO POOL WriteCatalog is xmlcatalog_file:PoolFileCatalog.xml @@ -63,7 +63,7 @@ RootCollection Info File xaoddata.root opened ImplicitCollection Info Opened the implicit collection with connection string "PFN:xaoddata.root" ImplicitCollection Info and a name "POOLContainer(DataHeader)" AthenaPoolAddressProviderSvc INFO Initializing AthenaPoolAddressProviderSvc - package version EventSelectorAthenaPool-00-00-00 -ClassIDSvc INFO getRegistryEntries: read 1425 CLIDRegistry entries for module ALL +ClassIDSvc INFO getRegistryEntries: read 1427 CLIDRegistry entries for module ALL SGInputLoader INFO Will preload the following DataObjects: ThreadPoolSvc INFO no thread init tools attached ForwardSchedulerSvc INFO Activating scheduler in a separate thread @@ -82,6 +82,9 @@ ForwardSchedulerSvc INFO Data Dependencies for Al none xAODTestReadSymlink o INPUT ('SG::AuxElement','cinfo') + o INPUT ('DMTest::S1','S2') + o INPUT ('DMTest::S2','S2') + o INPUT ('DMTest::S2','S2alias') EndIncFiringAlg none IncidentProcAlg2 @@ -89,6 +92,12 @@ ForwardSchedulerSvc INFO Data Dependencies for Al ForwardSchedulerSvc INFO Will attribute the following unmet INPUT dependencies to "SGInputLoader/SGInputLoader" Algorithm o ('SG::AuxElement','cinfo') required by Algorithm: * xAODTestReadSymlink + o ('DMTest::S1','S2') required by Algorithm: + * xAODTestReadSymlink + o ('DMTest::S2','S2') required by Algorithm: + * xAODTestReadSymlink + o ('DMTest::S2','S2alias') required by Algorithm: + * xAODTestReadSymlink ForwardSchedulerSvc INFO Concurrency level information: ForwardSchedulerSvc INFO o Number of events in flight: 'MaxEventsInFlight':1 ForwardSchedulerSvc INFO o Number of algorithms in flight: 'MaxAlgosInFlight':1 @@ -114,67 +123,67 @@ AthenaPoolConverter INFO massageEventInfo: unable AthenaHiveEventLoopMgr INFO ===>>> start of run 0 <<<=== AthenaHiveEventLoopMgr INFO ===>>> start processing event #0, run #0 on slot 0, 0 events processed so far <<<=== ClassIDSvc 0 0 INFO getRegistryEntries: read 11 CLIDRegistry entries for module ALL -xAODTestReadSymlink 0 0 INFO C (as AuxElement): 1000 -ClassIDSvc 0 0 INFO getRegistryEntries: read 48 CLIDRegistry entries for module ALL +xAODTestReadSymlink 0 0 INFO C (as AuxElement): 1000; S 0 +ClassIDSvc 0 0 INFO getRegistryEntries: read 50 CLIDRegistry entries for module ALL AthenaHiveEventLoopMgr INFO ===>>> done processing event #0, run #0 on slot 0, 1 events processed so far <<<=== AthenaHiveEventLoopMgr INFO ===>>> start processing event #1, run #0 on slot 0, 1 events processed so far <<<=== -xAODTestReadSymlink 1 0 INFO C (as AuxElement): 2000 +xAODTestReadSymlink 1 0 INFO C (as AuxElement): 2000; S 100 AthenaHiveEventLoopMgr INFO ===>>> done processing event #1, run #0 on slot 0, 2 events processed so far <<<=== AthenaHiveEventLoopMgr INFO ===>>> start processing event #2, run #0 on slot 0, 2 events processed so far <<<=== -xAODTestReadSymlink 2 0 INFO C (as AuxElement): 3000 +xAODTestReadSymlink 2 0 INFO C (as AuxElement): 3000; S 200 AthenaHiveEventLoopMgr INFO ===>>> done processing event #2, run #0 on slot 0, 3 events processed so far <<<=== AthenaHiveEventLoopMgr INFO ===>>> start processing event #3, run #0 on slot 0, 3 events processed so far <<<=== -xAODTestReadSymlink 3 0 INFO C (as AuxElement): 4000 +xAODTestReadSymlink 3 0 INFO C (as AuxElement): 4000; S 300 AthenaHiveEventLoopMgr INFO ===>>> done processing event #3, run #0 on slot 0, 4 events processed so far <<<=== AthenaHiveEventLoopMgr INFO ===>>> start processing event #4, run #0 on slot 0, 4 events processed so far <<<=== -xAODTestReadSymlink 4 0 INFO C (as AuxElement): 5000 +xAODTestReadSymlink 4 0 INFO C (as AuxElement): 5000; S 400 AthenaHiveEventLoopMgr INFO ===>>> done processing event #4, run #0 on slot 0, 5 events processed so far <<<=== AthenaHiveEventLoopMgr INFO ===>>> start processing event #5, run #0 on slot 0, 5 events processed so far <<<=== -xAODTestReadSymlink 5 0 INFO C (as AuxElement): 6000 +xAODTestReadSymlink 5 0 INFO C (as AuxElement): 6000; S 500 AthenaHiveEventLoopMgr INFO ===>>> done processing event #5, run #0 on slot 0, 6 events processed so far <<<=== AthenaHiveEventLoopMgr INFO ===>>> start processing event #6, run #0 on slot 0, 6 events processed so far <<<=== -xAODTestReadSymlink 6 0 INFO C (as AuxElement): 7000 +xAODTestReadSymlink 6 0 INFO C (as AuxElement): 7000; S 600 AthenaHiveEventLoopMgr INFO ===>>> done processing event #6, run #0 on slot 0, 7 events processed so far <<<=== AthenaHiveEventLoopMgr INFO ===>>> start processing event #7, run #0 on slot 0, 7 events processed so far <<<=== -xAODTestReadSymlink 7 0 INFO C (as AuxElement): 8000 +xAODTestReadSymlink 7 0 INFO C (as AuxElement): 8000; S 700 AthenaHiveEventLoopMgr INFO ===>>> done processing event #7, run #0 on slot 0, 8 events processed so far <<<=== AthenaHiveEventLoopMgr INFO ===>>> start processing event #8, run #0 on slot 0, 8 events processed so far <<<=== -xAODTestReadSymlink 8 0 INFO C (as AuxElement): 9000 +xAODTestReadSymlink 8 0 INFO C (as AuxElement): 9000; S 800 AthenaHiveEventLoopMgr INFO ===>>> done processing event #8, run #0 on slot 0, 9 events processed so far <<<=== AthenaHiveEventLoopMgr INFO ===>>> start processing event #9, run #0 on slot 0, 9 events processed so far <<<=== -xAODTestReadSymlink 9 0 INFO C (as AuxElement): 10000 +xAODTestReadSymlink 9 0 INFO C (as AuxElement): 10000; S 900 AthenaHiveEventLoopMgr INFO ===>>> done processing event #9, run #0 on slot 0, 10 events processed so far <<<=== AthenaHiveEventLoopMgr INFO ===>>> start processing event #10, run #0 on slot 0, 10 events processed so far <<<=== -xAODTestReadSymlink 10 0 INFO C (as AuxElement): 11000 +xAODTestReadSymlink 10 0 INFO C (as AuxElement): 11000; S 1000 AthenaHiveEventLoopMgr INFO ===>>> done processing event #10, run #0 on slot 0, 11 events processed so far <<<=== AthenaHiveEventLoopMgr INFO ===>>> start processing event #11, run #0 on slot 0, 11 events processed so far <<<=== -xAODTestReadSymlink 11 0 INFO C (as AuxElement): 12000 +xAODTestReadSymlink 11 0 INFO C (as AuxElement): 12000; S 1100 AthenaHiveEventLoopMgr INFO ===>>> done processing event #11, run #0 on slot 0, 12 events processed so far <<<=== AthenaHiveEventLoopMgr INFO ===>>> start processing event #12, run #0 on slot 0, 12 events processed so far <<<=== -xAODTestReadSymlink 12 0 INFO C (as AuxElement): 13000 +xAODTestReadSymlink 12 0 INFO C (as AuxElement): 13000; S 1200 AthenaHiveEventLoopMgr INFO ===>>> done processing event #12, run #0 on slot 0, 13 events processed so far <<<=== AthenaHiveEventLoopMgr INFO ===>>> start processing event #13, run #0 on slot 0, 13 events processed so far <<<=== -xAODTestReadSymlink 13 0 INFO C (as AuxElement): 14000 +xAODTestReadSymlink 13 0 INFO C (as AuxElement): 14000; S 1300 AthenaHiveEventLoopMgr INFO ===>>> done processing event #13, run #0 on slot 0, 14 events processed so far <<<=== AthenaHiveEventLoopMgr INFO ===>>> start processing event #14, run #0 on slot 0, 14 events processed so far <<<=== -xAODTestReadSymlink 14 0 INFO C (as AuxElement): 15000 +xAODTestReadSymlink 14 0 INFO C (as AuxElement): 15000; S 1400 AthenaHiveEventLoopMgr INFO ===>>> done processing event #14, run #0 on slot 0, 15 events processed so far <<<=== AthenaHiveEventLoopMgr INFO ===>>> start processing event #15, run #0 on slot 0, 15 events processed so far <<<=== -xAODTestReadSymlink 15 0 INFO C (as AuxElement): 16000 +xAODTestReadSymlink 15 0 INFO C (as AuxElement): 16000; S 1500 AthenaHiveEventLoopMgr INFO ===>>> done processing event #15, run #0 on slot 0, 16 events processed so far <<<=== AthenaHiveEventLoopMgr INFO ===>>> start processing event #16, run #0 on slot 0, 16 events processed so far <<<=== -xAODTestReadSymlink 16 0 INFO C (as AuxElement): 17000 +xAODTestReadSymlink 16 0 INFO C (as AuxElement): 17000; S 1600 AthenaHiveEventLoopMgr INFO ===>>> done processing event #16, run #0 on slot 0, 17 events processed so far <<<=== AthenaHiveEventLoopMgr INFO ===>>> start processing event #17, run #0 on slot 0, 17 events processed so far <<<=== -xAODTestReadSymlink 17 0 INFO C (as AuxElement): 18000 +xAODTestReadSymlink 17 0 INFO C (as AuxElement): 18000; S 1700 AthenaHiveEventLoopMgr INFO ===>>> done processing event #17, run #0 on slot 0, 18 events processed so far <<<=== AthenaHiveEventLoopMgr INFO ===>>> start processing event #18, run #0 on slot 0, 18 events processed so far <<<=== -xAODTestReadSymlink 18 0 INFO C (as AuxElement): 19000 +xAODTestReadSymlink 18 0 INFO C (as AuxElement): 19000; S 1800 AthenaHiveEventLoopMgr INFO ===>>> done processing event #18, run #0 on slot 0, 19 events processed so far <<<=== AthenaHiveEventLoopMgr INFO ===>>> start processing event #19, run #0 on slot 0, 19 events processed so far <<<=== -xAODTestReadSymlink 19 0 INFO C (as AuxElement): 20000 +xAODTestReadSymlink 19 0 INFO C (as AuxElement): 20000; S 1900 AthenaHiveEventLoopMgr INFO ===>>> done processing event #19, run #0 on slot 0, 20 events processed so far <<<=== -AthenaHiveEventLoopMgr INFO ---> Loop Finished (seconds): 0.533476 +AthenaHiveEventLoopMgr INFO ---> Loop Finished (seconds): 0.438994 xaoddata.root Info Database being retired... Domain[ROOT_All] Info -> Deaccess DbDatabase READ [ROOT_All] C99A5126-381F-7F4F-B568-3D70CAC1AC25 ApplicationMgr INFO Application Manager Stopped successfully diff --git a/Control/DataModelTest/DataModelRunTests/share/xAODTestWrite_jo.py b/Control/DataModelTest/DataModelRunTests/share/xAODTestWrite_jo.py index d42be61fe514c91130f7d54258464e0a8bf7d558..edcb0eb62a5bc32136dc7d6f056e8ea21d2246f7 100755 --- a/Control/DataModelTest/DataModelRunTests/share/xAODTestWrite_jo.py +++ b/Control/DataModelTest/DataModelRunTests/share/xAODTestWrite_jo.py @@ -43,13 +43,15 @@ from DataModelTestDataWrite.DataModelTestDataWriteConf import \ DMTest__xAODTestWriteCView, \ DMTest__xAODTestWriteCInfo, \ DMTest__xAODTestWriteCVecConst, \ - DMTest__xAODTestWrite + DMTest__xAODTestWrite, \ + DMTest__xAODTestWriteSymlinks topSequence += DMTest__xAODTestWriteCVec ("xAODTestWriteCVec") topSequence += DMTest__xAODTestWriteHVec ("xAODTestWriteHVec") topSequence += DMTest__xAODTestWriteCView ("xAODTestWriteCView") topSequence += DMTest__xAODTestWriteCInfo ("xAODTestWriteCInfo") topSequence += DMTest__xAODTestWrite ("xAODTestWrite") topSequence += DMTest__xAODTestWriteCVecConst ("xAODTestWriteCVecConst") +topSequence += DMTest__xAODTestWriteSymlinks ("xAODTestWriteSymlinks") #-------------------------------------------------------------- @@ -80,6 +82,7 @@ fullItemList+=["DMTest::CInfoAuxContainer#cinfoAux."] fullItemList+=["DMTest::HVec#hvec"] fullItemList+=["DMTest::HAuxContainer#hvecAux."] fullItemList+=["DMTest::HView#hview"] +fullItemList+=["DMTest::S2#S2"] from xAODEventFormatCnv.xAODEventFormatCnvConf import xAODMaker__EventFormatSvc fmtsvc = xAODMaker__EventFormatSvc (FormatNames = diff --git a/Control/DataModelTest/DataModelTestDataCommon/DataModelTestDataCommon/DataModelTestDataCommonDict.h b/Control/DataModelTest/DataModelTestDataCommon/DataModelTestDataCommon/DataModelTestDataCommonDict.h index 7c19696dd47c7d45bf734a24544d7b187ce796c2..64348ed784a87656a147d6f09938cf862a72c4ea 100755 --- a/Control/DataModelTest/DataModelTestDataCommon/DataModelTestDataCommon/DataModelTestDataCommonDict.h +++ b/Control/DataModelTest/DataModelTestDataCommon/DataModelTestDataCommon/DataModelTestDataCommonDict.h @@ -19,6 +19,8 @@ #include "DataModelTestDataCommon/B.h" #include "DataModelTestDataCommon/D.h" +#include "DataModelTestDataCommon/S1.h" +#include "DataModelTestDataCommon/S2.h" #include "DataModelTestDataCommon/BAux.h" #include "DataModelTestDataCommon/BAuxStandalone.h" #include "DataModelTestDataCommon/BAuxVec.h" diff --git a/Control/DataModelTest/DataModelTestDataCommon/DataModelTestDataCommon/S1.h b/Control/DataModelTest/DataModelTestDataCommon/DataModelTestDataCommon/S1.h new file mode 100644 index 0000000000000000000000000000000000000000..55bbb4a80daa14229309cdfbbe75145fa62a6abf --- /dev/null +++ b/Control/DataModelTest/DataModelTestDataCommon/DataModelTestDataCommon/S1.h @@ -0,0 +1,39 @@ +// This file's extension implies that it's C, but it's really -*- C++ -*-. +/* + * Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration. + */ +// $Id$ +/** + * @file DataModelTestDataCommon/S1.h + * @author scott snyder <snyder@bnl.gov> + * @date Apr, 2017 + * @brief For symlink tests. + */ + + +#ifndef DATAMODELTESTDATACOMMON_S1_H +#define DATAMODELTESTDATACOMMON_S1_H + + +#include "SGTools/CLASS_DEF.h" + + +namespace DMTest { + + +class S1 +{ +public: + S1 (int x = 0) : m_x (x) {} + virtual ~S1() {} + int m_x; +}; + + +} // namespace DMTest + + +CLASS_DEF (DMTest::S1, 243020043, 0) + + +#endif // not DATAMODELTESTDATACOMMON_S1_H diff --git a/Control/DataModelTest/DataModelTestDataCommon/DataModelTestDataCommon/S2.h b/Control/DataModelTest/DataModelTestDataCommon/DataModelTestDataCommon/S2.h new file mode 100644 index 0000000000000000000000000000000000000000..a6d4771217a292f4fd4977fcc50c7d148d8c5d0e --- /dev/null +++ b/Control/DataModelTest/DataModelTestDataCommon/DataModelTestDataCommon/S2.h @@ -0,0 +1,39 @@ +// This file's extension implies that it's C, but it's really -*- C++ -*-. +/* + * Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration. + */ +// $Id$ +/** + * @file DataModelTestDataCommon/S2.h + * @author scott snyder <snyder@bnl.gov> + * @date Apr, 2017 + * @brief For symlink tests. + */ + + +#ifndef DATAMODELTESTDATACOMMON_S2_H +#define DATAMODELTESTDATACOMMON_S2_H + + +#include "DataModelTestDataCommon/S1.h" +#include "SGTools/CLASS_DEF.h" + + +namespace DMTest { + + +class S2 + : public S1 +{ +public: + S2 (int x = 0) : S1(x) {} +}; + + +} // namespace DMTest + + +CLASS_DEF (DMTest::S2, 243020042, 0) + + +#endif // not DATAMODELTESTDATACOMMON_S2_H diff --git a/Control/DataModelTest/DataModelTestDataCommon/DataModelTestDataCommon/selection.xml b/Control/DataModelTest/DataModelTestDataCommon/DataModelTestDataCommon/selection.xml index 46c8ebbdccb6cc48237405b2bafffbf4edb81287..6f6ac81d83d8ab44210e62f48a23150426296fbe 100755 --- a/Control/DataModelTest/DataModelTestDataCommon/DataModelTestDataCommon/selection.xml +++ b/Control/DataModelTest/DataModelTestDataCommon/DataModelTestDataCommon/selection.xml @@ -12,6 +12,8 @@ <class name="DMTest::B"/> <class name="DMTest::D"/> + <class name="DMTest::S1" id="230C025C-A8BB-4C8A-9C82-04C9C3D92384"/> + <class name="DMTest::S2" id="EC2D9BCD-4B99-41EB-A799-82BAF48887FC"/> <class name="DMTest::BAux" id="B2751847-F5E8-456A-8C03-BCA9AEEB27DD"/> <class name="DMTest::BAuxStandalone" id="6378E4BD-95AD-4D46-9860-B15779893A75" IAuxStore="true"/> <class name="DataVector<DMTest::BAux>" id="734BB39F-4E7C-4637-8510-6716160242D4"/> diff --git a/Control/DataModelTest/DataModelTestDataCommon/src/setConverterLibrary.cxx b/Control/DataModelTest/DataModelTestDataCommon/src/setConverterLibrary.cxx index 1ba26094914849d6df6fce7f46c38a19549386d8..a7d3d3a75ec5c5fdd33ac824b489afc334f49e25 100644 --- a/Control/DataModelTest/DataModelTestDataCommon/src/setConverterLibrary.cxx +++ b/Control/DataModelTest/DataModelTestDataCommon/src/setConverterLibrary.cxx @@ -62,6 +62,8 @@ void setConverterLibrary (const std::string& lib) setConverterLibrary (9742, lib); // DMTest::GAuxContainer_v1 setConverterLibrary (9744, lib); // DMTest::G_v1 setConverterLibrary (9779, lib); // DMTest::CView_v1 + setConverterLibrary (243020043, lib); // DMTest::S1 + setConverterLibrary (243020042, lib); // DMTest::S2 setPluginLibrary ("_PERS_DMTest::HVec_v1", lib); setPluginLibrary ("_PERS_DataVector<DMTest::H_v1>", lib); } diff --git a/Control/DataModelTest/DataModelTestDataCommon/src/xAODTestReadSymlink.cxx b/Control/DataModelTest/DataModelTestDataCommon/src/xAODTestReadSymlink.cxx index aebed797353b069d9ec58f04de89f5bf1b578776..31e3a94d7d757c774c35263d1d63081d42974145 100644 --- a/Control/DataModelTest/DataModelTestDataCommon/src/xAODTestReadSymlink.cxx +++ b/Control/DataModelTest/DataModelTestDataCommon/src/xAODTestReadSymlink.cxx @@ -22,12 +22,18 @@ xAODTestReadSymlink::xAODTestReadSymlink (const std::string &name, ISvcLocator * : AthReentrantAlgorithm (name, pSvcLocator) { declareProperty ("Key", m_objKey); + declareProperty ("S1Key", m_s1Key = "S2"); + declareProperty ("S2Key", m_s2Key = "S2"); + declareProperty ("AliasKey", m_aliasKey = "S2alias"); } StatusCode xAODTestReadSymlink::initialize() { ATH_CHECK( m_objKey.initialize() ); + ATH_CHECK( m_s1Key.initialize() ); + ATH_CHECK( m_s2Key.initialize() ); + ATH_CHECK( m_aliasKey.initialize() ); return StatusCode::SUCCESS; } @@ -35,9 +41,15 @@ StatusCode xAODTestReadSymlink::initialize() StatusCode xAODTestReadSymlink::execute_r (const EventContext& ctx) const { SG::ReadHandle<SG::AuxElement> c (m_objKey, ctx); + SG::ReadHandle<DMTest::S1> s1 (m_s1Key, ctx); + SG::ReadHandle<DMTest::S2> s2 (m_s2Key, ctx); + SG::ReadHandle<DMTest::S2> alias (m_aliasKey, ctx); static const SG::AuxElement::Accessor<int> anInt ("anInt"); - ATH_MSG_INFO( "C (as AuxElement): " << anInt (*c) ); + ATH_MSG_INFO( "C (as AuxElement): " << anInt (*c) + << "; S " << s2->m_x ); + if (s2.cptr() != s1.cptr() || s2.cptr() != alias.cptr()) + ATH_MSG_ERROR( " S objects mismatch! "); return StatusCode::SUCCESS; } diff --git a/Control/DataModelTest/DataModelTestDataCommon/src/xAODTestReadSymlink.h b/Control/DataModelTest/DataModelTestDataCommon/src/xAODTestReadSymlink.h index 9c793a392959be14c1e585d3eb8f28fa434d0e85..55561d6328b62edd0d79c8deb53a0fca83414545 100644 --- a/Control/DataModelTest/DataModelTestDataCommon/src/xAODTestReadSymlink.h +++ b/Control/DataModelTest/DataModelTestDataCommon/src/xAODTestReadSymlink.h @@ -17,6 +17,8 @@ #define DATAMODELTESTDATACOMMON_XAODTESTREADSYMLINK_H +#include "DataModelTestDataCommon/S1.h" +#include "DataModelTestDataCommon/S2.h" #include "AthenaBaseComps/AthReentrantAlgorithm.h" #include "StoreGate/ReadHandleKey.h" #include "AthContainers/AuxElement.h" @@ -51,6 +53,10 @@ public: private: SG::ReadHandleKey<SG::AuxElement> m_objKey; + + SG::ReadHandleKey<DMTest::S1> m_s1Key; + SG::ReadHandleKey<DMTest::S2> m_s2Key; + SG::ReadHandleKey<DMTest::S2> m_aliasKey; }; diff --git a/Control/DataModelTest/DataModelTestDataReadCnv/CMakeLists.txt b/Control/DataModelTest/DataModelTestDataReadCnv/CMakeLists.txt index b47fbba44e92fe469715eaa8fd598d21b5c5e258..a9ade5a93433a6a7fa4a8191fec0c2bcf34b1d26 100644 --- a/Control/DataModelTest/DataModelTestDataReadCnv/CMakeLists.txt +++ b/Control/DataModelTest/DataModelTestDataReadCnv/CMakeLists.txt @@ -19,7 +19,7 @@ atlas_depends_on_subdirs( PUBLIC # Component(s) in the package: atlas_add_poolcnv_library( DataModelTestDataReadCnvPoolCnv src/*.cxx - FILES DataModelTestDataRead/BVec.h DataModelTestDataRead/BDer.h DataModelTestDataRead/DVec.h DataModelTestDataRead/DDer.h DataModelTestDataRead/ELVec.h DataModelTestDataRead/G.h DataModelTestDataRead/GVec.h DataModelTestDataRead/GAuxContainer.h DataModelTestDataRead/H.h DataModelTestDataRead/HVec.h DataModelTestDataRead/HAuxContainer.h DataModelTestDataRead/HView.h DataModelTestDataCommon/BAux.h DataModelTestDataCommon/BAuxVec.h DataModelTestDataCommon/BAuxStandalone.h DataModelTestDataCommon/C.h DataModelTestDataCommon/CVec.h DataModelTestDataCommon/CAuxContainer.h DataModelTestDataCommon/CView.h DataModelTestDataCommon/CVecWithData.h DataModelTestDataCommon/CInfoAuxContainer.h DataModelTestDataCommon/CTrigAuxContainer.h - TYPES_WITH_NAMESPACE DMTest::BVec DMTest::DVec DMTest::DDer DMTest::BDer DMTest::ELVec DMTest::BAux DMTest::BAuxVec DMTest::BAuxStandalone DMTest::C DMTest::CVec DMTest::CAuxContainer DMTest::G DMTest::GVec DMTest::GAuxContainer DMTest::CVecWithData DMTest::CInfoAuxContainer DMTest::CTrigAuxContainer DMTest::CView DMTest::H DMTest::HVec DMTest::HAuxContainer DMTest::HView + FILES DataModelTestDataRead/BVec.h DataModelTestDataRead/BDer.h DataModelTestDataRead/DVec.h DataModelTestDataRead/DDer.h DataModelTestDataRead/ELVec.h DataModelTestDataRead/G.h DataModelTestDataRead/GVec.h DataModelTestDataRead/GAuxContainer.h DataModelTestDataRead/H.h DataModelTestDataRead/HVec.h DataModelTestDataRead/HAuxContainer.h DataModelTestDataRead/HView.h DataModelTestDataCommon/BAux.h DataModelTestDataCommon/BAuxVec.h DataModelTestDataCommon/BAuxStandalone.h DataModelTestDataCommon/C.h DataModelTestDataCommon/CVec.h DataModelTestDataCommon/CAuxContainer.h DataModelTestDataCommon/CView.h DataModelTestDataCommon/CVecWithData.h DataModelTestDataCommon/CInfoAuxContainer.h DataModelTestDataCommon/CTrigAuxContainer.h DataModelTestDataCommon/S1.h DataModelTestDataCommon/S2.h + TYPES_WITH_NAMESPACE DMTest::BVec DMTest::DVec DMTest::DDer DMTest::BDer DMTest::ELVec DMTest::BAux DMTest::BAuxVec DMTest::BAuxStandalone DMTest::C DMTest::CVec DMTest::CAuxContainer DMTest::G DMTest::GVec DMTest::GAuxContainer DMTest::CVecWithData DMTest::CInfoAuxContainer DMTest::CTrigAuxContainer DMTest::CView DMTest::H DMTest::HVec DMTest::HAuxContainer DMTest::HView DMTest::S1 DMTest::S2 LINK_LIBRARIES AthenaPoolUtilities AthenaKernel DataModelTestDataCommonLib DataModelTestDataReadLib AthenaPoolCnvSvcLib ) diff --git a/Control/DataModelTest/DataModelTestDataWrite/src/components/DataModelTestDataWrite_entries.cxx b/Control/DataModelTest/DataModelTestDataWrite/src/components/DataModelTestDataWrite_entries.cxx index c85dd40d3ee72e7c8121848988b6e61d432e5592..3e924cc3cf574b88caa23a58ad1e99591893d830 100644 --- a/Control/DataModelTest/DataModelTestDataWrite/src/components/DataModelTestDataWrite_entries.cxx +++ b/Control/DataModelTest/DataModelTestDataWrite/src/components/DataModelTestDataWrite_entries.cxx @@ -15,6 +15,7 @@ #include "../xAODTestWriteCView.h" #include "../xAODTestWriteCInfo.h" #include "../xAODTestWriteCVecConst.h" +#include "../xAODTestWriteSymlinks.h" #include "../HLTResultWriter.h" DECLARE_NAMESPACE_ALGORITHM_FACTORY(DMTest, DMTestWrite) @@ -25,5 +26,6 @@ DECLARE_NAMESPACE_ALGORITHM_FACTORY(DMTest, xAODTestWriteHVec) DECLARE_NAMESPACE_ALGORITHM_FACTORY(DMTest, xAODTestWriteCView) DECLARE_NAMESPACE_ALGORITHM_FACTORY(DMTest, xAODTestWriteCInfo) DECLARE_NAMESPACE_ALGORITHM_FACTORY(DMTest, xAODTestWriteCVecConst) +DECLARE_NAMESPACE_ALGORITHM_FACTORY(DMTest, xAODTestWriteSymlinks) DECLARE_NAMESPACE_ALGORITHM_FACTORY(DMTest, HLTResultWriter) diff --git a/Control/DataModelTest/DataModelTestDataWrite/src/xAODTestWriteSymlinks.cxx b/Control/DataModelTest/DataModelTestDataWrite/src/xAODTestWriteSymlinks.cxx new file mode 100644 index 0000000000000000000000000000000000000000..549dfef439f0e48f169b5f751e559d0424a34613 --- /dev/null +++ b/Control/DataModelTest/DataModelTestDataWrite/src/xAODTestWriteSymlinks.cxx @@ -0,0 +1,69 @@ +/* + * Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration. + */ +// $Id$ +/** + * @file DataModelTestDataWrite/src/xAODTestWriteSymlinks.cxx + * @author scott snyder <snyder@bnl.gov> + * @date Apr, 2017 + * @brief Testing making symlinks/aliases through handles. + */ + + +#include "xAODTestWriteSymlinks.h" +#include "EventInfo/EventID.h" +#include "StoreGate/WriteHandle.h" +#include "StoreGate/ReadHandle.h" + + +namespace DMTest { + + +/** + * @brief Constructor. + * @param name The algorithm name. + * @param svc The service locator. + */ +xAODTestWriteSymlinks::xAODTestWriteSymlinks (const std::string &name, + ISvcLocator *pSvcLocator) + : AthReentrantAlgorithm (name, pSvcLocator) +{ + declareProperty ("EventInfoKey", m_eventInfoKey = "McEventInfo"); + declareProperty ("S2Key", m_s2Key = "S2"); + declareProperty ("S1Key", m_s1Key = "S2"); + declareProperty ("AliasKey", m_aliasKey = "S2alias"); +} + + +/** + * @brief Algorithm initialization; called at the beginning of the job. + */ +StatusCode xAODTestWriteSymlinks::initialize() +{ + m_s1Key = m_s2Key.key(); + + ATH_CHECK( m_eventInfoKey.initialize() ); + ATH_CHECK( m_s2Key.initialize() ); + ATH_CHECK( m_s1Key.initialize() ); + ATH_CHECK( m_aliasKey.initialize() ); + return StatusCode::SUCCESS; +} + + +/** + * @brief Algorithm event processing. + */ +StatusCode xAODTestWriteSymlinks::execute_r (const EventContext& ctx) const +{ + SG::ReadHandle<EventInfo> eventInfo (m_eventInfoKey, ctx); + SG::WriteHandle<DMTest::S2> s2 (m_s2Key, ctx); + unsigned int eventNumber = eventInfo->event_ID()->event_number(); + ATH_CHECK( s2.record (std::make_unique<DMTest::S2> (eventNumber*100)) ); + ATH_CHECK( s2.alias (m_aliasKey) ); + ATH_CHECK( s2.symLink (m_s1Key) ); + return StatusCode::SUCCESS; +} + + +} // namespace DMTest + diff --git a/Control/DataModelTest/DataModelTestDataWrite/src/xAODTestWriteSymlinks.h b/Control/DataModelTest/DataModelTestDataWrite/src/xAODTestWriteSymlinks.h new file mode 100644 index 0000000000000000000000000000000000000000..e58707d95c4ca54cfe18ce1c4d5e94e4f4d0de3a --- /dev/null +++ b/Control/DataModelTest/DataModelTestDataWrite/src/xAODTestWriteSymlinks.h @@ -0,0 +1,74 @@ +// This file's extension implies that it's C, but it's really -*- C++ -*-. +/* + * Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration. + */ +// $Id$ +/** + * @file DataModelTestDataWrite/src/xAODTestWriteSymlinks.h + * @author scott snyder <snyder@bnl.gov> + * @date Apr, 2017 + * @brief Testing making symlinks/aliases through handles. + */ + + +#ifndef DATAMODELTESTDATAWRITE_XAODTESTWRITESYMLINKS_H +#define DATAMODELTESTDATAWRITE_XAODTESTWRITESYMLINKS_H + + +#include "DataModelTestDataCommon/S1.h" +#include "DataModelTestDataCommon/S2.h" +#include "AthenaBaseComps/AthReentrantAlgorithm.h" +#include "EventInfo/EventInfo.h" +#include "StoreGate/ReadHandleKey.h" +#include "StoreGate/WriteHandleKey.h" + + +namespace DMTest { + + +/** + * @brief Algorithm testing making symlinks/aliases through handles. + */ +class xAODTestWriteSymlinks + : public AthReentrantAlgorithm +{ +public: + /** + * @brief Constructor. + * @param name The algorithm name. + * @param svc The service locator. + */ + xAODTestWriteSymlinks (const std::string &name, ISvcLocator *pSvcLocator); + + + /** + * @brief Algorithm initialization; called at the beginning of the job. + */ + virtual StatusCode initialize() override; + + + /** + * @brief Algorithm event processing. + */ + virtual StatusCode execute_r (const EventContext& ctx) const override; + + +private: + /// EventInfo. + SG::ReadHandleKey<EventInfo> m_eventInfoKey; + + /// Main output. + SG::WriteHandleKey<DMTest::S2> m_s2Key; + + /// Symlink. + SG::WriteHandleKey<DMTest::S1> m_s1Key; + + /// Alias. + SG::WriteHandleKey<DMTest::S2> m_aliasKey; +}; + + +} // namespace DMTest + + +#endif // not DATAMODELTESTDATAWRITE_XAODTESTWRITESYMLINKS_H diff --git a/Control/DataModelTest/DataModelTestDataWriteCnv/CMakeLists.txt b/Control/DataModelTest/DataModelTestDataWriteCnv/CMakeLists.txt index 104f8b02fb7d053d12288690c411eca91e06e2a1..cc792b6af2ef1a4b03cf2abd65fa9a312d5e3757 100644 --- a/Control/DataModelTest/DataModelTestDataWriteCnv/CMakeLists.txt +++ b/Control/DataModelTest/DataModelTestDataWriteCnv/CMakeLists.txt @@ -18,7 +18,7 @@ atlas_depends_on_subdirs( PUBLIC # Component(s) in the package: atlas_add_poolcnv_library( DataModelTestDataWriteCnvPoolCnv src/*.cxx - FILES DataModelTestDataWrite/BVec.h DataModelTestDataWrite/BDer.h DataModelTestDataWrite/DVec.h DataModelTestDataWrite/DDer.h DataModelTestDataWrite/ELVec.h DataModelTestDataWrite/G.h DataModelTestDataWrite/GVec.h DataModelTestDataWrite/GAuxContainer.h DataModelTestDataWrite/H.h DataModelTestDataWrite/HVec.h DataModelTestDataWrite/HAuxContainer.h DataModelTestDataWrite/HView.h DataModelTestDataCommon/BAux.h DataModelTestDataCommon/BAuxVec.h DataModelTestDataCommon/BAuxStandalone.h DataModelTestDataCommon/C.h DataModelTestDataCommon/CVec.h DataModelTestDataCommon/CAuxContainer.h DataModelTestDataCommon/CView.h DataModelTestDataCommon/CVecWithData.h DataModelTestDataCommon/CInfoAuxContainer.h DataModelTestDataCommon/CTrigAuxContainer.h - TYPES_WITH_NAMESPACE DMTest::BVec DMTest::DVec DMTest::DDer DMTest::BDer DMTest::ELVec DMTest::BAux DMTest::BAuxVec DMTest::BAuxStandalone DMTest::C DMTest::CVec DMTest::CAuxContainer DMTest::G DMTest::GVec DMTest::GAuxContainer DMTest::CVecWithData DMTest::CInfoAuxContainer DMTest::CTrigAuxContainer DMTest::CView DMTest::H DMTest::HVec DMTest::HAuxContainer DMTest::HView + FILES DataModelTestDataWrite/BVec.h DataModelTestDataWrite/BDer.h DataModelTestDataWrite/DVec.h DataModelTestDataWrite/DDer.h DataModelTestDataWrite/ELVec.h DataModelTestDataWrite/G.h DataModelTestDataWrite/GVec.h DataModelTestDataWrite/GAuxContainer.h DataModelTestDataWrite/H.h DataModelTestDataWrite/HVec.h DataModelTestDataWrite/HAuxContainer.h DataModelTestDataWrite/HView.h DataModelTestDataCommon/BAux.h DataModelTestDataCommon/BAuxVec.h DataModelTestDataCommon/BAuxStandalone.h DataModelTestDataCommon/C.h DataModelTestDataCommon/CVec.h DataModelTestDataCommon/CAuxContainer.h DataModelTestDataCommon/CView.h DataModelTestDataCommon/CVecWithData.h DataModelTestDataCommon/CInfoAuxContainer.h DataModelTestDataCommon/CTrigAuxContainer.h DataModelTestDataCommon/S1.h DataModelTestDataCommon/S2.h + TYPES_WITH_NAMESPACE DMTest::BVec DMTest::DVec DMTest::DDer DMTest::BDer DMTest::ELVec DMTest::BAux DMTest::BAuxVec DMTest::BAuxStandalone DMTest::C DMTest::CVec DMTest::CAuxContainer DMTest::G DMTest::GVec DMTest::GAuxContainer DMTest::CVecWithData DMTest::CInfoAuxContainer DMTest::CTrigAuxContainer DMTest::CView DMTest::H DMTest::HVec DMTest::HAuxContainer DMTest::HView DMTest::S1 DMTest::S2 LINK_LIBRARIES AthenaPoolUtilities DataModelTestDataCommonLib DataModelTestDataWriteLib AthenaPoolCnvSvcLib ) diff --git a/Control/SGTools/SGTools/TestStore.h b/Control/SGTools/SGTools/TestStore.h index 9b05a69572f4c8b81dfa88e09f8b7b1e3292ff9d..28429583d2ea3cbba37ebf6c447eee8eaa8bde95 100644 --- a/Control/SGTools/SGTools/TestStore.h +++ b/Control/SGTools/SGTools/TestStore.h @@ -61,10 +61,6 @@ public: virtual void registerKey (sgkey_t /*key*/, const std::string& /*str*/, CLID /*clid*/) override; - virtual SG::DataProxy* recordObject (SG::DataObjectSharedPtr<DataObject> obj, - const std::string& key, - bool allowMods, - bool returnExisting) override; virtual StatusCode updatedObject (CLID id, const std::string& key) override; @@ -81,6 +77,10 @@ public: virtual void boundHandle (IResetable* handle) override; virtual void unboundHandle (IResetable* handle) override; + virtual SG::DataProxy* recordObject (SG::DataObjectSharedPtr<DataObject> obj, + const std::string& key, + bool allowMods, + bool returnExisting) override; SG::DataProxy* record1 (const void* p, DataObject* obj, CLID clid, const std::string& key); diff --git a/Control/SGTools/src/TestStore.cxx b/Control/SGTools/src/TestStore.cxx index e3e7a05ed532b288a9dd1aae45c143a731d79032..6c72e1d91231ccb9d66da529d4d01ba08d528efe 100644 --- a/Control/SGTools/src/TestStore.cxx +++ b/Control/SGTools/src/TestStore.cxx @@ -12,6 +12,7 @@ #include "SGTools/TestStore.h" +#include "SGTools/DataBucketBase.h" #include <iostream> @@ -65,6 +66,10 @@ SG::DataProxy* TestStore::recordObject (SG::DataObjectSharedPtr<DataObject> obj, bool returnExisting) { const void* raw_ptr = obj.get(); + if (DataBucketBase* bucket = dynamic_cast<DataBucketBase*> (obj.get())) { + raw_ptr = bucket->object(); + } + CLID clid = obj->clID(); SG::DataProxy* proxy = this->proxy (clid, key); if (proxy) { @@ -73,6 +78,29 @@ SG::DataProxy* TestStore::recordObject (SG::DataObjectSharedPtr<DataObject> obj, else return nullptr; } + + proxy = this->proxy (raw_ptr); + if (proxy) { + sgkey_t sgkey = stringToKey (key, obj->clID()); + if (!returnExisting) + return nullptr; + if (obj->clID() == proxy->clID()) { + // Alias? + m_kmap[sgkey] = proxy; + proxy->transientAddress()->setAlias (key); + return proxy; + } + if (key == proxy->name()) { + // Symlink? + m_kmap[sgkey] = proxy; + proxy->transientAddress()->setTransientID (obj->clID()); + return proxy; + } + + // Error. + return nullptr; + } + proxy = record1 (raw_ptr, obj.get(), clid, key); if (!allowMods) proxy->setConst(); diff --git a/Control/StoreGate/StoreGate/StoreGateSvc.h b/Control/StoreGate/StoreGate/StoreGateSvc.h index 06c3c1e37fdbab69f69cc640b1fa69a14fcf8a71..b7ad4149b733a1122f2fbd08d196e245f8c4932b 100644 --- a/Control/StoreGate/StoreGate/StoreGateSvc.h +++ b/Control/StoreGate/StoreGate/StoreGateSvc.h @@ -653,6 +653,8 @@ public: * @param returnExisting If true, return proxy if this key already exists. * If the object has been recorded under a different * key, then make an alias. + * If the object has been recorded under a different + * clid, then make a link. * * Full-blown record. @c obj should usually be something * deriving from @c SG::DataBucket. diff --git a/Control/StoreGate/StoreGate/VarHandleBase.h b/Control/StoreGate/StoreGate/VarHandleBase.h index d81b4738d176e3f2657d45359d620f5827d1f690..e684554765939c070b18a40ccfc65c2bd2024acb 100644 --- a/Control/StoreGate/StoreGate/VarHandleBase.h +++ b/Control/StoreGate/StoreGate/VarHandleBase.h @@ -404,6 +404,19 @@ namespace SG { bool quiet = defaultQuiet) const; + /** + * @brief Make a symlink or alias to the object currently referenced + * by this handle. + * @param newClid CLID of link. + * @param newKey SG key of link. + * + * If newClid matches the existing clid, then make an alias. + * If newKey matches the existing key, then make a symlink. + * If neither match, it's an error. + */ + StatusCode symLink_impl (CLID newClid, const std::string& newKey) const; + + protected: //************************************************************************* // Protected data. diff --git a/Control/StoreGate/StoreGate/WriteHandle.h b/Control/StoreGate/StoreGate/WriteHandle.h index 24954bde89503c2a04adfd982ba179c8a16075f4..628b7bf092a788d35bea24c28dd025f5a6e7d687 100644 --- a/Control/StoreGate/StoreGate/WriteHandle.h +++ b/Control/StoreGate/StoreGate/WriteHandle.h @@ -377,7 +377,54 @@ public: WriteHandle& operator=( std::unique_ptr<T> data ); + /** + * @brief Make an alias. + * @param key Alternate key by which the referenced object should be known. + * + * The current handle should be valid and referencing an object + * (i.e., @c record should have been called on it). + * + * The object will also be known by the name given in @c key. + */ + StatusCode alias (const WriteHandleKey<T>& key); + + /** + * @brief Make an explicit link or alias. + * @param key Alternate clid/key by which the referenced object + * should be known. + * + * You should generally not be using this! + * + * The current handle should be valid and referencing an object + * (i.e., @c record should have been called on it). + * + * If @c U is the same as @c T, then this makes an alias. + * The object will also be known by the name given in @c key. + * + * If the name in @c key is the same as the name for the current handle, + * then this makes a symlink: the object will be retrievable + * as a different type. + * + * Note that if @c T and @c @U are related via @c SG_BASE and/or + * @c DATAVECTOR_BASE, then you shouldn't need to explicitly make a symlink; + * that should happen automatically. + * + * If a @c U* is not convertable to a @c T* via C++ rules, then you likely + * will be, at best, relying on undefined behavior. You will probably + * get warnings from the undefined behavior sanitizer when if you try + * to dereference the @c U*. + * + * This usage is here mainly to assist in migrating some existing + * patterns to MT. You should think several times before using + * in new code. + * + * If both types and the keys are different, then it is an error. + */ + template <class U> + StatusCode symLink (const WriteHandleKey<U>& key); + + private: /** * @brief Return the cached pointer directly. diff --git a/Control/StoreGate/StoreGate/WriteHandle.icc b/Control/StoreGate/StoreGate/WriteHandle.icc index 8910ed9307afe3f070a804a9ffd0bb243050710e..22e75f616b523bffaad4aa209a59d1be0bbbe693 100644 --- a/Control/StoreGate/StoreGate/WriteHandle.icc +++ b/Control/StoreGate/StoreGate/WriteHandle.icc @@ -495,6 +495,63 @@ WriteHandle<T>::operator= (std::unique_ptr<T> data) } +/** + * @brief Make an alias. + * @param key Alternate key by which the referenced object should be known. + * + * The current handle should be valid and referencing an object + * (i.e., @c record should have been called on it). + * + * The object will also be known by the name given in @c key. + */ +template <class T> +StatusCode WriteHandle<T>::alias (const WriteHandleKey<T>& other) +{ + return symLink_impl (this->clid(), other.key()); +} + + +/** + * @brief Make an explicit link. + * @param key Alternate clid by which the referenced object + * should be known. The SG key must match the key of the + * current handle. + * + * You should generally not be using this! + * + * The current handle should be valid and referencing an object + * (i.e., @c record should have been called on it). + * + * This makes a symlink: the object will be retrievable + * as a different type. + * + * Note that if @c T and @c @U are related via @c SG_BASE and/or + * @c DATAVECTOR_BASE, then you shouldn't need to explicitly make a symlink; + * that should happen automatically. + * + * If a @c U* is not convertable to a @c T* via C++ rules, then you likely + * will be, at best, relying on undefined behavior. You will probably + * get warnings from the undefined behavior sanitizer when if you try + * to dereference the @c U*. + * + * This usage is here mainly to assist in migrating some existing + * patterns to MT. You should think several times before using + * in new code. + */ +template <class T> +template <class U> +StatusCode WriteHandle<T>::symLink (const WriteHandleKey<U>& other) +{ + if (this->key() != other.key()) { + REPORT_ERROR (StatusCode::FAILURE) + << "symLink: SG keys do not match: " << other.key() << " vs " + << this->key(); + return StatusCode::FAILURE; + } + return symLink_impl (other.clid(), other.key()); +} + + /** * @brief Return the cached pointer directly. * diff --git a/Control/StoreGate/StoreGate/tools/SGImplSvc.h b/Control/StoreGate/StoreGate/tools/SGImplSvc.h index c8ebf0869cb987a2e77a53fda79b4b85f989d5ba..6eb9ed6b73d5c120e0219acd9607ad19cc86fb34 100644 --- a/Control/StoreGate/StoreGate/tools/SGImplSvc.h +++ b/Control/StoreGate/StoreGate/tools/SGImplSvc.h @@ -598,6 +598,8 @@ public: * @param returnExisting If true, return proxy if this key already exists. * If the object has been recorded under a different * key, then make an alias. + * If the object has been recorded under a different + * clid, then make a link. * * Full-blown record. @c obj should usually be something * deriving from @c SG::DataBucket. diff --git a/Control/StoreGate/share/VarHandleBase_test.ref b/Control/StoreGate/share/VarHandleBase_test.ref index 3731a00abd3f9c57903f13b693e5ced03e13efd4..1e63014e13a596957deace5cef7462db73721c5c 100644 --- a/Control/StoreGate/share/VarHandleBase_test.ref +++ b/Control/StoreGate/share/VarHandleBase_test.ref @@ -1,14 +1,14 @@ Initializing Gaudi ApplicationMgr using job opts ../share/VarHandleBase_test.txt -JobOptionsSvc INFO # =======> /afs/cern.ch/user/s/ssnyder/atlas-work3/Control/StoreGate/share/../share/VarHandleBase_test.txt +JobOptionsSvc INFO # =======> /afs/cern.ch/user/s/ssnyder/atlas-work7/Control/StoreGate/share/../share/VarHandleBase_test.txt JobOptionsSvc INFO # (1,1): ApplicationMgr.ExtSvc = ["StoreGateSvc/OtherStore"] JobOptionsSvc INFO # (2,1): OtherStore.ProxyProviderSvc = "" JobOptionsSvc INFO Job options successfully read in from ../share/VarHandleBase_test.txt ApplicationMgr SUCCESS ==================================================================================================================================== Welcome to ApplicationMgr (GaudiCoreSvc v28r1) - running on lxplus090.cern.ch on Mon Mar 20 16:42:04 2017 + running on lxplus042.cern.ch on Fri Apr 7 05:54:35 2017 ==================================================================================================================================== ApplicationMgr INFO Application Manager Configured successfully ClassIDSvc INFO getRegistryEntries: read 217 CLIDRegistry entries for module ALL @@ -41,6 +41,8 @@ VarHandleKey.Se... ERROR ServiceLocatorHelper::service: can not locate service FATAL FILE:LINE (StatusCode SG::VarHandleKey::initialize(bool)): code 0: m_storeHandle.retrieve() VarHandle(FooSv... FATAL FILE:LINE (StatusCode SG::VarHandleBase::initialize(bool)): code 0: VarHandleKey::initialize() VarHandle(FooSv... FATAL FILE:LINE (StatusCode SG::VarHandleBase::setState()): code 0: initialize() +VarHandle(FooSv...WARNING FILE:LINE (void*SG::VarHandleBase::typeless_dataPointer_impl(bool)): could not get proxy for key foo +VarHandle(FooSv...WARNING FILE:LINE (void*SG::VarHandleBase::typeless_dataPointer_impl(bool)): try using a ReadHandle test6 test7 ServiceManager FATAL No Service factory for FooSvc available. @@ -55,7 +57,7 @@ VarHandle(FooSv...WARNING FILE:LINE (void*SG::VarHandleBase::typeless_dataPointe VarHandle(FooSv...WARNING FILE:LINE (void*SG::VarHandleBase::typeless_dataPointer_fromProxy(SG::DataProxy*, bool) const): Proxy [293847295/foo] is in an invalid state VarHandle(FooSv...WARNING FILE:LINE (void*SG::VarHandleBase::typeless_dataPointer_fromProxy(SG::DataProxy*, bool) const): Request for an invalid object; requested CLID = 293847295, proxy primary ID is 293847296 test9 -VarHandleBase @0x7ffd4a4b1950 store=FooSvc, clid=293847295, key=foo----------- ptr@0, proxy@0 +VarHandleBase @0x7fff26bc2b00 store=FooSvc, clid=293847295, key=foo----------- ptr@0, proxy@0 test10 ServiceManager FATAL No Service factory for FooSvc available. VarHandleKey.Se... ERROR ServiceLocatorHelper::service: can not locate service FooSvc @@ -67,3 +69,6 @@ VarHandle(FooSv... ERROR FILE:LINE (const void*SG::VarHandleBase::get_impl(cons ServiceManager FATAL No Service factory for FooSvc available. VarHandleKey.Se... ERROR ServiceLocatorHelper::service: can not locate service FooSvc VarHandle(FooSv... ERROR FILE:LINE (const void*SG::VarHandleBase::get_impl(const EventContext*, bool) const): code 0: Cannot find proxy for 293847295/foo +test12 +VarHandle(FooSv... ERROR FILE:LINE (StatusCode SG::VarHandleBase::symLink_impl(unsigned int, const std::string&) const): code 0: symlink: Handle not valid. +VarHandle(FooSv... ERROR FILE:LINE (StatusCode SG::VarHandleBase::symLink_impl(unsigned int, const std::string&) const): code 0: symlink: Handle not valid. diff --git a/Control/StoreGate/share/WriteHandle_test.ref b/Control/StoreGate/share/WriteHandle_test.ref index 024a84f95540deecf04719d96f934b2e0c028a0f..6497cf8be4e67bad5cd72b3f76fe4a88cb7a993f 100644 --- a/Control/StoreGate/share/WriteHandle_test.ref +++ b/Control/StoreGate/share/WriteHandle_test.ref @@ -1,18 +1,17 @@ Initializing Gaudi ApplicationMgr using job opts ../share/VarHandleBase_test.txt -JobOptionsSvc INFO # =======> /home/sss/nobackup/atlas/build/../tests/../share/VarHandleBase_test.txt +JobOptionsSvc INFO # =======> /home/sss/atlas/dvtest/build/../tests/../share/VarHandleBase_test.txt JobOptionsSvc INFO # (1,1): ApplicationMgr.ExtSvc = ["StoreGateSvc/OtherStore"] JobOptionsSvc INFO # (2,1): OtherStore.ProxyProviderSvc = "" JobOptionsSvc INFO Job options successfully read in from ../share/VarHandleBase_test.txt ApplicationMgr SUCCESS ==================================================================================================================================== Welcome to ApplicationMgr (GaudiCoreSvc v27r1p99) - running on karma on Wed Feb 15 23:12:55 2017 + running on karma on Thu Apr 6 11:03:54 2017 ==================================================================================================================================== ApplicationMgr INFO Application Manager Configured successfully -ClassIDSvc INFO getRegistryEntries: read 281 CLIDRegistry entries for module ALL -ClassIDSvc ERROR uncheckedSetTypePackageForID: PyAnalysisExamples-00-00-00 can not set CLID <86839352> for type name MyObj: Known CLID for this name <293847295> It was set by StoreGate-00-00-00 +ClassIDSvc INFO getRegistryEntries: read 282 CLIDRegistry entries for module ALL EventLoopMgr WARNING Unable to locate service "EventSelector" EventLoopMgr WARNING No events will be processed from external input. HistogramPersis...WARNING Histograms saving not required. @@ -50,3 +49,5 @@ VarHandle(Store... ERROR FILE:LINE (FUNC): code 0: recordObject failed ERROR FILE:LINE (FUNC): code 0: recordObject of aux store failed test11 VarHandle(Store... ERROR FILE:LINE (FUNC): code 0: recordObject failed +test12 + ERROR FILE:LINE (FUNC): code 0: symLink: SG keys do not match: foo3 vs foo1 diff --git a/Control/StoreGate/src/SGImplSvc.cxx b/Control/StoreGate/src/SGImplSvc.cxx index 5603a653d1268a2a2a6a18dcf7d8773a3d1dd540..b49517e293a2a705bc307f7050923731bb13ca6c 100644 --- a/Control/StoreGate/src/SGImplSvc.cxx +++ b/Control/StoreGate/src/SGImplSvc.cxx @@ -812,6 +812,8 @@ StatusCode SGImplSvc::addToStore (CLID id, SG::DataProxy* proxy) * @param returnExisting If true, return proxy if this key already exists. * If the object has been recorded under a different * key, then make an alias. + * If the object has been recorded under a different + * clid, then make a link. * * Full-blown record. @c obj should usually be something * deriving from @c SG::DataBucket. @@ -840,22 +842,61 @@ SG::DataProxy* SGImplSvc::recordObject (SG::DataObjectSharedPtr<DataObject> obj, SG::DataProxy* proxy = this->proxy (obj->clID(), key); if (proxy && proxy->isValid()) return proxy; - // Look for the same object recorded under a different key. + // Look for the same object recorded under a different key/clid. proxy = this->proxy (raw_ptr); if (proxy && proxy->isValid()) { - // Make an alias. - if (addAlias (key, proxy).isFailure()) { + if (proxy->transientAddress()->transientID (obj->clID())) { + // CLID matches. Make an alias. + if (addAlias (key, proxy).isFailure()) { + CLID clid = proxy->clID(); + std::string clidTypeName; + m_pCLIDSvc->getTypeNameOfID(clid, clidTypeName).ignore(); + msg() << MSG::WARNING + << "SGImplSvc::recordObject: addAlias fails for object " + << clid << "[" << clidTypeName << "] " << proxy->name() + << " and new key " << key + << endmsg; + + proxy = nullptr; + } + } + + else if (key == proxy->name() || + proxy->alias().count (key) > 0) + { + // key matches. Make a symlink. + if (addSymLink (obj->clID(), proxy).isFailure()) { + CLID clid = proxy->clID(); + std::string clidTypeName; + m_pCLIDSvc->getTypeNameOfID(clid, clidTypeName).ignore(); + CLID newclid = obj->clID(); + std::string newclidTypeName; + m_pCLIDSvc->getTypeNameOfID(newclid, newclidTypeName).ignore(); + msg() << MSG::ERROR + << "SGImplSvc::recordObject: addSymLink fails for object " + << clid << "[" << clidTypeName << "] " << proxy->name() + << " and new clid " << newclid << "[" << newclidTypeName << "]" + << endmsg; + proxy = nullptr; + } + } + + else { CLID clid = proxy->clID(); std::string clidTypeName; m_pCLIDSvc->getTypeNameOfID(clid, clidTypeName).ignore(); - msg() << MSG::WARNING - << "SGImplSvc::recordObject: addAlias fails for object " + CLID newclid = obj->clID(); + std::string newclidTypeName; + m_pCLIDSvc->getTypeNameOfID(newclid, newclidTypeName).ignore(); + msg() << MSG::ERROR + << "SGImplSvc::recordObject: existing object found with " << clid << "[" << clidTypeName << "] " << proxy->name() - << " and new key " << key + << " but neither clid " << newclid << "[" << newclidTypeName << "]" + << " nor key " << key << " match." << endmsg; - proxy = nullptr; } + return proxy; } } diff --git a/Control/StoreGate/src/StoreGateSvc.cxx b/Control/StoreGate/src/StoreGateSvc.cxx index 4a86b556565b3466b406b50b33a6075d9d865a7f..cd8dcb502a51fea22bec5c748e015302c2a151e3 100644 --- a/Control/StoreGate/src/StoreGateSvc.cxx +++ b/Control/StoreGate/src/StoreGateSvc.cxx @@ -309,6 +309,8 @@ StatusCode StoreGateSvc::addToStore (CLID id, SG::DataProxy* proxy) * @param returnExisting If true, return proxy if this key already exists. * If the object has been recorded under a different * key, then make an alias. + * If the object has been recorded under a different + * clid, then make a link. * * Full-blown record. @c obj should usually be something * deriving from @c SG::DataBucket. diff --git a/Control/StoreGate/src/VarHandleBase.cxx b/Control/StoreGate/src/VarHandleBase.cxx index d6eac9e4bcf218ae92c03005c8750772f966161f..23e7d7af3516d1545ba800caaa33be94844f0ece 100644 --- a/Control/StoreGate/src/VarHandleBase.cxx +++ b/Control/StoreGate/src/VarHandleBase.cxx @@ -57,6 +57,33 @@ namespace errorcheck { namespace SG { + /** + * @brief Helper for symLink_impl. + * + * A simple @c DataBucket that holds an arbitrary pointer/clid. + * We stub out everything else that we don't use. + */ + class SymlinkDataObject + : public DataBucketBase + { + public: + SymlinkDataObject (CLID clid, void* obj) : m_clid (clid), m_obj (obj) {} + virtual const CLID& clID() const override { return m_clid; } + virtual void* object() override { return m_obj; } + virtual const std::type_info& tinfo() const override { return typeid(void); } + virtual void* cast (CLID, SG::IRegisterTransient*, bool) const override { std::abort(); } + virtual void* cast (const std::type_info&, SG::IRegisterTransient*, bool) const override { std::abort(); } + virtual DataBucketBase* clone() const override { std::abort(); } + virtual void relinquish() override { std::abort(); } + virtual void lock() override { } + + + private: + CLID m_clid; + void* m_obj; + }; + + /** * @brief Constructor with default key. * @param clid CLID of the referenced class. @@ -796,6 +823,32 @@ namespace SG { } + /** + * @brief Make a symlink or alias to the object currently referenced + * by this handle. + * @param newClid CLID of link. + * @param newKey SG key of link. + * + * If newClid matches the existing clid, then make an alias. + * If newKey matches the existing key, then make a symlink. + * If neither match, it's an error. + */ + StatusCode VarHandleBase::symLink_impl (CLID newClid, + const std::string& newKey) const + { + if (!m_ptr || !m_store) { + REPORT_ERROR (StatusCode::FAILURE) << "symlink: Handle not valid."; + return StatusCode::FAILURE; + } + + SG::DataObjectSharedPtr<DataObject> obj (new SymlinkDataObject (newClid, m_ptr)); + SG::DataProxy* prox = m_store->recordObject (obj, newKey, false, true); + if (!prox) + return StatusCode::FAILURE; + return StatusCode::SUCCESS; + } + + /** * @brief Return the store instance to use. * @param ctx The current event context, or nullptr. diff --git a/Control/StoreGate/test/SGtests.cxx b/Control/StoreGate/test/SGtests.cxx index 1eadac2521ddb6d6f6c89404439e3893ad7f6c8d..39f47fb3f80c2d275eb59b84dd639619fb5819a9 100644 --- a/Control/StoreGate/test/SGtests.cxx +++ b/Control/StoreGate/test/SGtests.cxx @@ -158,6 +158,27 @@ private: CLASS_DEF( TestAuxStore , 125030194 , 1 ) +class SymlinkDataObject + : public DataBucketBase +{ +public: + SymlinkDataObject (CLID clid, void* obj) : m_clid (clid), m_obj (obj) {} + virtual const CLID& clID() const override { return m_clid; } + virtual void* object() override { return m_obj; } + virtual const std::type_info& tinfo() const override { return typeid(Foo); } + virtual void* cast (CLID, SG::IRegisterTransient*, bool) const override { std::abort(); } + virtual void* cast (const std::type_info&, SG::IRegisterTransient*, bool) const override { std::abort(); } + virtual DataBucketBase* clone() const override { std::abort(); } + virtual void relinquish() override { std::abort(); } + virtual void lock() override { std::abort(); } + + +private: + CLID m_clid; + void* m_obj; +}; + + #include "AthContainersInterfaces/CLASS_AUXSTORE.h" CLASS_AUXSTORE3( TestVector<BBX> , TestAuxStore, TestAuxStore ) @@ -1017,8 +1038,10 @@ namespace Athena_test { cout << "\n*** StoreGateSvcClient_test testRecordObject BEGINS ***" << endl; Foo::dtor_log.clear(); - SG::DataObjectSharedPtr<DataObject> obj101 - (SG::asStorable (std::make_unique<Foo> (101))); + auto obj101_uptr = std::make_unique<Foo> (101); + Foo* obj101_ptr = obj101_uptr.get(); + SG::DataObjectSharedPtr<DataObject> obj101 + (SG::asStorable (std::move (obj101_uptr))); SG::DataProxy* proxy101 = rSG.recordObject (obj101, "obj101", false, false); assert (proxy101->name() == "obj101"); assert (proxy101->object() == obj101.get()); @@ -1036,6 +1059,7 @@ namespace Athena_test { assert (Foo::dtor_log.empty()); + // Dup with returnExisting false. std::cout << ">>> test duplicate record1\n"; SG::DataObjectSharedPtr<DataObject> obj103 (SG::asStorable (std::make_unique<Foo> (103))); @@ -1044,24 +1068,43 @@ namespace Athena_test { assert (obj103->refCount() == 2); // Held by m_trash std::cout << "<<< test duplicate record1\n"; + // Dup with returnExisting true. SG::DataObjectSharedPtr<DataObject> obj104 (SG::asStorable (std::make_unique<Foo> (104))); SG::DataProxy* proxy104 = rSG.recordObject (obj104, "obj101", false, true); assert (proxy104 == proxy101); assert (obj104->refCount() == 1); + // Dup with returnExisting false but different key. std::cout << ">>> test duplicate record2\n"; SG::DataProxy* proxy999 = rSG.recordObject (obj101, "obj999", false, false); assert (proxy999 == nullptr); assert (obj101->refCount() == 3); // Held by m_trash std::cout << "<<< test duplicate record2\n"; + // Making alias. assert (proxy101->refCount() == 1); proxy999 = rSG.recordObject (obj101, "obj999", false, true); assert (proxy999 == proxy101); assert (proxy101->refCount() == 2); assert (obj101->refCount() == 3); + // Making symlink. + SG::DataObjectSharedPtr<DataObject> obj105 + (new SymlinkDataObject (ClassID_traits<Base>::ID(), static_cast<Base*>(obj101_ptr))); + SG::DataProxy* proxy105 = rSG.recordObject (obj105, "obj101", false, true); + assert (proxy105 == proxy101); + assert (obj101->refCount() == 3); + assert (proxy101->refCount() == 3); + + // Error handling. + std::cout << ">>> test duplicate error\n"; + SG::DataObjectSharedPtr<DataObject> obj106 + (new SymlinkDataObject (543543, static_cast<Base*>(obj101_ptr))); + SG::DataProxy* proxy106 = rSG.recordObject (obj106, "obj101xxx", false, true); + assert (proxy106 == nullptr); + std::cout << "<<< test duplicate error\n"; + rSG.clearStore(); assert (obj101->refCount() == 1); assert (obj102->refCount() == 1); @@ -1073,7 +1116,7 @@ namespace Athena_test { assert (proxy101->name() == "obj101"); assert (proxy101->object() == obj101.get()); assert (obj101->refCount() == 2); - assert (proxy101->refCount() == 2); + assert (proxy101->refCount() == 3); assert (proxy101->isConst()); rSG.clearStore(); @@ -1083,7 +1126,7 @@ namespace Athena_test { assert (proxy101->name() == "obj101"); assert (proxy101->object() == obj101.get()); assert (obj101->refCount() == 2); - assert (proxy101->refCount() == 2); + assert (proxy101->refCount() == 3); assert (proxy101->isConst()); cout << "\n*** StoreGateSvcClient_test testRecordObject OK ***" << endl; diff --git a/Control/StoreGate/test/VarHandleBase_test.cxx b/Control/StoreGate/test/VarHandleBase_test.cxx index 245b8805eb2db6f61a0396658e1f5eeae8573b0f..92da6c4d052c67f6916ae947958a4dc32b8d2553 100644 --- a/Control/StoreGate/test/VarHandleBase_test.cxx +++ b/Control/StoreGate/test/VarHandleBase_test.cxx @@ -48,6 +48,7 @@ public: using SG::VarHandleBase::get_impl; using SG::VarHandleBase::record_impl; using SG::VarHandleBase::put_impl; + using SG::VarHandleBase::symLink_impl; using SG::VarHandleBase::m_store; using SG::VarHandleBase::m_proxy; using SG::VarHandleBase::m_ptr; @@ -626,6 +627,7 @@ void test10() true, false, store) == nullptr); } + // get_impl void test11() { @@ -666,6 +668,35 @@ void test11() } +// symLink_impl +void test12() +{ + std::cout << "test12\n"; + + SGTest::TestStore testStore; + TestHandle h1 (293847295, "foo", Gaudi::DataHandle::Writer, "FooSvc"); + assert (h1.symLink_impl (293847295, "bar").isFailure()); + assert (h1.setProxyDict (&testStore).isSuccess()); + assert (h1.symLink_impl (293847295, "bar").isFailure()); + + auto obj = std::make_unique<MyObj>(); + MyObj* objptr = obj.get(); + assert (h1.record_impl (std::unique_ptr<DataObject>(SG::asStorable(std::move(obj))), + objptr, + true, false).isSuccess()); + SG::DataProxy* prox = testStore.proxy (293847295, "foo"); + assert (prox != nullptr); + + assert (h1.symLink_impl (293847295, "bar").isSuccess()); + assert (testStore.proxy (293847295, "bar") == prox); + + assert (h1.symLink_impl (293847294, "foo").isSuccess()); + assert (testStore.proxy (293847294, "foo") == prox); + + assert (h1.symLink_impl (293847294, "bar").isFailure()); +} + + int main() { errorcheck::ReportMessage::hideErrorLocus(); @@ -683,6 +714,7 @@ int main() test9(); test10(); test11(); + test12(); return 0; } diff --git a/Control/StoreGate/test/WriteHandle_test.cxx b/Control/StoreGate/test/WriteHandle_test.cxx index de9f799354f8e40333d9d7fe03ad4518b90bf40a..77799e82acf98535d6d8f24ef2d22c1c34f27841 100644 --- a/Control/StoreGate/test/WriteHandle_test.cxx +++ b/Control/StoreGate/test/WriteHandle_test.cxx @@ -66,6 +66,10 @@ CLASS_DEF (MyObj, 293847295, 1) static const CLID MyCLID = 293847295; +class MyObj2 {}; +CLASS_DEF (MyObj2, 293847395, 1) + + class MyDObj : public DataObject { public: @@ -430,19 +434,22 @@ void test6() assert (!h1.isConst()); assert (h1.ptr() == p1.get()); + SG::DataObjectSharedPtr<MyDObj> p4 (new MyDObj (400)); + assert (p4->refCount() == 1); + SG::WriteHandle<MyDObj> h4 ("foo4", "FooSvc"); assert (h4.setProxyDict (&testStore).isSuccess()); - assert (h4.record (p1).isSuccess()); - assert (p1->refCount() == 3); + assert (h4.record (p4).isSuccess()); + assert (p4->refCount() == 2); assert (h4.isValid()); - assert (h4->x == 300); + assert (h4->x == 400); assert (h4.isConst()); - assert (h4.ptr() == p1.get()); + assert (h4.ptr() == p4.get()); - SG::WriteHandle<MyDObj> h5 ("foo4", "FooSvc"); + SG::WriteHandle<MyDObj> h5 ("foo5", "FooSvc"); assert (h5.setProxyDict (&testStore).isSuccess()); assert (h5.record (p1).isFailure()); - assert (p1->refCount() == 3); + assert (p1->refCount() == 2); assert (!h5.isValid()); } @@ -608,15 +615,18 @@ void test11() assert (h1.put (p1) == p1.get()); assert (p1->refCount() == 2); + SG::DataObjectSharedPtr<MyDObj> p4 (new MyDObj (400)); + assert (p4->refCount() == 1); + SG::WriteHandle<MyDObj> h4 ("foo4", "FooSvc"); assert (h4.setProxyDict (&testStore).isSuccess()); - assert (h4.put (p1) == p1.get()); - assert (p1->refCount() == 3); + assert (h4.put (p4) == p4.get()); + assert (p4->refCount() == 2); - SG::WriteHandle<MyDObj> h5 ("foo4"); + SG::WriteHandle<MyDObj> h5 ("foo5"); assert (h5.setProxyDict (&testStore).isSuccess()); assert (h5.put (p1) == nullptr); - assert (p1->refCount() == 3); + assert (p1->refCount() == 2); // Record to a different context. MyObj::deleted.clear(); @@ -627,6 +637,39 @@ void test11() } +// symlink/alias. +void test12() +{ + std::cout << "test12\n"; + + SGTest::TestStore testStore; + + SG::WriteHandle<MyObj> h1 ("foo1", "FooSvc"); + assert (h1.setProxyDict (&testStore).isSuccess()); + + assert (h1.record (std::make_unique<MyObj>(20)).isSuccess()); + assert (h1.isValid()); + assert (h1->x == 20); + SG::DataProxy* prox1 = testStore.proxy (ClassID_traits<MyObj>::ID(), "foo1"); + + // Making alias. + SG::WriteHandleKey<MyObj> h2 ("foo3", "FooSvc"); + assert (h1.alias (h2).isSuccess()); + assert (testStore.proxy (ClassID_traits<MyObj>::ID(), "foo3") == prox1); + assert (prox1->transientAddress()->alias().count ("foo3") == 1); + + // Making symlink. + SG::WriteHandleKey<MyObj2> h3 ("foo1", "FooSvc"); + assert (h1.symLink (h3).isSuccess()); + assert (testStore.proxy (ClassID_traits<MyObj2>::ID(), "foo1") == prox1); + assert (prox1->transientAddress()->transientID (ClassID_traits<MyObj2>::ID())); + + // Should give an error. + SG::WriteHandleKey<MyObj2> h4 ("foo3", "FooSvc"); + assert (h1.symLink (h4).isFailure()); +} + + int main() { errorcheck::ReportMessage::hideErrorLocus(); @@ -645,5 +688,6 @@ int main() test9(); test10(); test11(); + test12(); return 0; }