Skip to content
Snippets Groups Projects
Commit 3ab73357 authored by scott snyder's avatar scott snyder
Browse files

StoreGate: Fix potential deadlock between SGImplSvc and DataProxy

The SGImplSvc::proxy methods take out a lock on the store, fetch
the proxy, then call isValid() on the proxy.  DataProxy::isValid()
will acquire a lock on the proxy and than can call back to the store
via TransientAddress::contextFromStore().  Thus, we can get a deadlock
if SGImplSvc::proxy() is called in one thread and DataProxy::isValid()
in another.

Resolve by releasing the SGImplSvc lock in proxy() before calling
DataProxy::isValid().
parent 6602a7ca
6 merge requests!58791DataQualityConfigurations: Modify L1Calo config for web display,!46784MuonCondInterface: Enable thread-safety checking.,!46776Updated LArMonitoring config file for WD to match new files produced using MT,!45405updated ART test cron job,!42417Draft: DIRE and VINCIA Base Fragments for Pythia 8.3,!34558StoreGate: Fix potential deadlock between SGImplSvc and DataProxy
Loading
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment