pool::RootKeyContainer Node1 pool::RootKeyContainer - m_dir - m_dbH - m_rootDb - m_ioHandler - m_policy - m_ioBytes + RootKeyContainer() + ~RootKeyContainer() + RootKeyContainer() + operator=() + close() + open() + isShapeSupported() + select() + size() + nextRecordId() and 7 more... # destroyObject() # writeObject() Node2 pool::DbContainerImp # m_name # m_canUpdate # m_canDestroy - m_stack - m_size - m_writeSize - m_stackType + DbContainerImp() + release() + size() + name() + nextRecordId() + useNextRecordId() + close() + getOption() + setOption() + transAct() and 15 more... # ~DbContainerImp() # stackType() # stackSize() # updatesPending() # stackEntry() # destroyObject() # updateObject() # writeObject() # commitTransaction() Node2->Node1 Node3 pool::IDbContainer + release() + size() + name() + isShapeSupported() + setOption() + getOption() + allocate() + allocate() + free() + nextRecordId() and 15 more... # ~IDbContainer() Node3->Node2