Thread safe handling of CORAL transactions by RDBAccessSvc
Given CORAL transaction context seems to be global, one thread can commit a transaction, which is active at that moment in another thread. Worked around this issue by starting read-only transaction when a session is created, and committing that transaction only when the corresponding session is closed.
This addresses the issue discussed in ATLASRECTS-5737.
Other changes:
- Removed several redundant include statements;
- Applied thread-safety fixes to the way RDBQuery handles database connection;
- Implemented a minor reorganization of the internal cache of RDBAccessSvc
Edited by Vakhtang Tsulaia