Fix messaging performance regression
The changes in !407 (merged) made CommonMessaging thread safe, but replaced a the very fast, inlined check msgLevel(DEBUG)
with a very expensive check in a thread local pointer, causing ~10% slow down in LHCb reconstruction workflow.
With these changes I restore the old speed of the check, still keeping the cached MsgStream
in a thread local pointer.
It required, though, a change in the way CommonMessaging
is initialized (always instead of on demand) and in the component classes inheriting from CommonMessaging
to make sure that the initialization takes correctly into account all constraints (output level property, m_level
cache and MsgStream
always in sync).
The change in CommonMessaging
initialization required some minor changes in test reference files too.
I also included a fix for GAUDI-1316.
Fixes GAUDI-1319
Fixes GAUDI-1316