pool::PersistencySvc::ISession Node1 pool::PersistencySvc ::ISession   + setDefaultConnectionPolicy() + defaultConnectionPolicy() + disconnectAll() + transaction() + transaction() + databaseHandle() + readObject() + registerForWrite() + fileCatalog() + technologySpecificAttributes() + technologySpecificAttributes() + ~ISession() Node3 pool::PersistencySvc ::UserSession - m_policy - m_catalog - m_registry - m_transactionType - m_technologies + UserSession() + ~UserSession() + UserSession() + operator=() + readObject() + registerForWrite() + registry() + setDefaultConnectionPolicy() + defaultConnectionPolicy() + disconnectAll() and 14 more... Node1->Node3 Node2 pool::ITransaction   + start() + commit() + commitAndHold() + isActive() + type() # ~ITransaction() Node2->Node1