libfoedus-core
FOEDUS Core Library
|
▼Nfoedus | Root package of FOEDUS (Fast Optimistic Engine for Data Unification Services) |
►Nassorted | Assorted Methods/Classes that are too subtle to have their own packages |
►CBacktraceContext | |
CGlibcBacktraceInfo | |
CLibBacktraceInfo | |
CConstDiv | The pre-calculated p-m pair for optimized integer division by constant |
CDumbSpinlock | A simple spinlock using a boolean field |
CFixedString | An embedded string object of fixed max-length, which uses no external memory |
CHex | Convenient way of writing hex integers to stream |
CHexString | Equivalent to std::hex in case the stream doesn't support it |
CProbCounter | Implements a probabilistic counter [Morris 1978] |
CProtectedBoundary | A 4kb dummy data placed between separate memory regions so that we can check if/where a bogus memory access happens |
CSpinlockStat | Helper for SPINLOCK_WHILE |
CTop | Write only first few bytes to stream |
CUniformRandom | A very simple and deterministic random generator that is more aligned with standard benchmark such as TPC-C |
CZipfianRandom | A simple zipfian generator based off of YCSB's Java implementation |
►Ncache | Snapshot Cache Manager, which caches data pages retrieved from snapshot files |
CCacheBucket | Hash bucket in cache table |
►CCacheHashtable | A NUMA-local hashtable of cached snapshot pages |
CEvictArgs | Parameters for evict() |
CStat | |
CCacheManager | Snapshot cache manager |
CCacheManagerPimpl | Pimpl object of CacheManager |
CCacheOptions | Set of options for snapshot cache manager |
CCacheOverflowEntry | An entry in the overflow linked list for snapshot cache |
CCacheRefCount | A loosely maintained reference count for CLOCK algorithm |
CHashFunc | A simple hash function logic used in snasphot cache |
CSnapshotFileSet | Holds a set of read-only file objects for snapshot files |
►Ndebugging | Debug-Support functionalities |
CDebuggingOptions | Set of options for debugging support |
►CDebuggingSupports | APIs to support debugging functionalities |
CPapiCounters | |
CRdtscWatch | A RDTSC-based low-overhead stop watch |
CStopWatch | A high-resolution stop watch |
►Nexternalize | Object Externalization |
CExternalizable | Represents an object that can be written to and read from files/bytes in XML format |
CTinyxmlGetter | Functor to help use tinyxml2's Element QueryXxxText() |
CTinyxmlGetter< assorted::FixedString< MAXLEN, CHAR > > | |
CTinyxmlGetter< bool > | |
CTinyxmlGetter< double > | |
CTinyxmlGetter< float > | |
CTinyxmlGetter< int16_t > | |
CTinyxmlGetter< int32_t > | |
CTinyxmlGetter< int64_t > | |
CTinyxmlGetter< int8_t > | |
CTinyxmlGetter< std::string > | |
CTinyxmlGetter< uint16_t > | |
CTinyxmlGetter< uint32_t > | |
CTinyxmlGetter< uint64_t > | |
CTinyxmlGetter< uint8_t > | |
CTinyxmlSetter | Functor to help use tinyxml2's Element SetText() |
CTinyxmlSetter< assorted::FixedString< MAXLEN, CHAR > > | |
CTinyxmlSetter< std::string > | |
►Nfs | Filesystem wrapper, an analogue of boost::filesystem |
CDeviceEmulationOptions | Set of configurations to emulate slower devices for some experiments |
CDirectIoFile | Represents an I/O stream on one file without filesystem caching |
CFileStatus | Analogue of boost::filesystem::file_status |
CPath | Analogue of boost::filesystem::path |
CSpaceInfo | Analogue of boost::filesystem::space_info |
►Nlog | Log Manager, which writes out transactional logs |
CBaseLogType | Base class for log type |
CEngineLogType | Base class for log type of engine-wide operation |
CEpochHistory | Represents an event where a logger switched its epoch |
CEpochMarkerLogType | A log type to declare a switch of epoch in a logger or the engine |
CFillerLogType | A dummy log type to fill up a sector in log files |
CLogger | A log writer that writes out buffered logs to stable storages |
CLoggerControlBlock | Shared data of Logger |
CLoggerRef | A view of Logger object for other SOCs and master engine |
CLogHeader | A common header part for all log types |
CLogManager | Log Manager class that provides API to write/read transaction logs |
CLogManagerControlBlock | Shared data in LogManagerPimpl |
CLogManagerPimpl | Pimpl object of LogManager |
CLogOptions | Set of options for log manager |
CLogRange | Contiguous range of log entries that might span multiple files |
CMetaLogBuffer | A single log buffer for metadata (eg create/drop storage) |
CMetaLogControlBlock | Control block for MetaLogBuffer and MetaLogger |
CMetaLogger | A log writer for metadata operation |
CRecordLogType | Base class for log type of record-wise operation |
CStorageLogType | Base class for log type of storage-wide operation |
CThreadEpockMark | A thread-buffer's epoch marker, which indicates where a thread switched an epoch |
►CThreadLogBuffer | A thread-local log buffer |
COffsetRange | |
CThreadLogBufferMeta | Metadata part of ThreadLogBuffer, without the actual buffer which is way way larger |
►Nmemory | Memory Manager, which controls memory allocations, deallocations, and sharing |
CAlignedMemory | Represents one memory block aligned to actual OS/hardware pages |
CAlignedMemorySlice | A slice of foedus::memory::AlignedMemory |
CAutoVolatilePageReleaseScope | Automatically invokes a page offset acquired for volatile page |
CDivvyupPageGrabBatch | A helper class to grab a bunch of pages from multiple nodes in arbitrary fashion |
CEngineMemory | Repository of all memories dynamically acquired and shared within one database engine |
CGlobalVolatilePageResolver | Resolves an offset in a volatile page pool to an actual pointer and vice versa |
CLocalPageResolver | Resolves an offset in local (same NUMA node) page pool to a pointer and vice versa |
CMemoryOptions | Set of options for memory manager |
►CNumaCoreMemory | Repository of memories dynamically acquired within one CPU core (thread) |
CSmallThreadLocalMemoryPieces | Packs pointers to pieces of small_thread_local_memory_ |
CNumaNodeMemory | Repository of memories dynamically acquired and shared within one NUMA node (socket) |
CNumaNodeMemoryRef | A view of NumaNodeMemory for other SOCs and master engine |
►CPagePool | Page pool for volatile read/write store (VolatilePage) and the read-only bufferpool (SnapshotPage) |
CStat | |
CPagePoolControlBlock | Shared data in PagePoolPimpl |
►CPagePoolOffsetAndEpochChunk | Used to store an epoch value with each entry in PagePoolOffsetChunk |
COffsetAndEpoch | |
CPagePoolOffsetChunk | To reduce the overhead of grabbing/releasing pages from pool, we pack this many pointers for each grab/release |
CPagePoolOffsetDynamicChunk | Used to point to an already existing array |
CPagePoolPimpl | Pimpl object of PagePool |
CPageReleaseBatch | A helper class to return a bunch of pages to individual nodes |
CRoundRobinPageGrabBatch | A helper class to grab a bunch of pages from multiple nodes in round-robin fashion per chunk |
CScopedNumaPreferred | Automatically sets and resets numa_set_preferred() |
CSharedMemory | Represents memory shared between processes |
►Nproc | System and User Procedures |
CProcArguments | Set of arguments, both inputs and outputs, given to each procedure |
CProcManager | Procedure manager, which maintains the list of system/user procedures |
CProcManagerControlBlock | This small control block is used to synchronize the access to the array |
►CProcManagerPimpl | Pimpl object of ProcManager |
CSharedData | All shared data in this module |
CProcOptions | Set of options for loading system/user procedures |
►Nrestart | Restart Manager, which recovers the state of database by re-playing transaction logs at start-up |
CRestartManager | Restart manager, which recovers the state of database by invoking log-gleaner at start-up |
CRestartManagerControlBlock | Shared data in RestartManagerPimpl |
CRestartManagerPimpl | Pimpl object of RestartManager |
CRestartOptions | Set of options for restart manager |
►Nsavepoint | Savepoint Manager, which durably and atomically remembers what happened in the engine occasionally (eg |
CFixedSavepoint | Savepoint that can be stored in shared memory |
CLoggerSavepointInfo | Information in savepoint for one logger |
CSavepoint | The information we maintain in savepoint manager and externalize to a file |
CSavepointManager | Savepoint manager that atomically and durably writes out a savepoint file |
CSavepointManagerControlBlock | Shared data in SavepointManagerPimpl |
CSavepointManagerPimpl | Pimpl object of SavepointManager |
CSavepointOptions | Set of options for savepoint manager |
►Nsnapshot | Snapshot Manager, which manages snapshot files of the database |
CBlockHeaderBase | All log blocks in mapper/reducers start with this header |
CDumpFileSortedBuffer | Implementation of SortedBuffer that is backed by a dumped file |
CFillerBlockHeader | A header for a dummy storage block that fills the gap between the end of previous storage block and the beginning of next storage block |
CFullBlockHeader | All blocks that have content start with this header |
CInMemorySortedBuffer | Implementation of SortedBuffer that is backed by fully in-memory buffer |
CLogBuffer | Packages handling of 4-bytes representation of position in log buffers |
CLogGleaner | A log-gleaner, which constructs a new set of snapshot files during snapshotting |
CLogGleanerControlBlock | Shared data for LogGleaner |
CLogGleanerRef | A remote view of LogGleaner from all engines |
►CLogGleanerResource | Local resource for the log gleaner, which runs only in the master node |
CPerNodeResource | These buffers are used to read intermediate results from each reducer to compose the root page or other kinds of pages that weren't composed in each reducer (eg |
CLogMapper | A log mapper, which reads log files from one logger and sends them to corresponding log reducers |
CLogReducer | A log reducer, which receives log entries sent from mappers and applies them to construct new snapshot files |
CLogReducerControlBlock | Shared data for LogReducer |
CLogReducerRef | A remote view of LogReducer from all engines |
CMapReduceBase | Base class for LogMapper and LogReducer to share common code |
►CMergeSort | Receives an arbitrary number of sorted buffers and emits one fully sorted stream of logs |
CAdjustComparatorMasstree | Used in batch_sort_adjust_sort if the storage is a masstree storage |
CGroupifyResult | Represents a group of consecutive logs in the current batch |
CInputStatus | Current status of each input |
CPositionEntry | Provides additional information for each entry we are sorting |
CSortEntry | Entries we actually sort |
►CReducerBufferStatus | Compactly represents important status informations of a reducer buffer |
CComponents | |
CSnapshot | Represents one snapshot that converts all logs from base epoch to valid_until epoch into snapshot file(s) |
CSnapshotManager | Snapshot manager that atomically and durably writes out a snapshot file |
CSnapshotManagerControlBlock | Shared data in SnapshotManagerPimpl |
CSnapshotManagerPimpl | Pimpl object of SnapshotManager |
CSnapshotMetadata | Represents the data in one snapshot metadata file |
CSnapshotOptions | Set of options for snapshot manager |
CSnapshotWriter | Writes out one snapshot file for all data pages in one reducer |
CSortedBuffer | Represents one input stream of sorted log entries |
►Nsoc | System On Chip (SOC) and interprocess communication (IPC) |
CChildEngineStatus | Current status of a child SOC engine |
CGlobalMemoryAnchors | Just a set of pointers within global_memory_ for ease of use |
CMasterEngineStatus | Current status of master engine |
CNodeMemoryAnchors | Same as GlobalMemoryAnchors except this is for node_memories_ |
CSharedCond | A conditional variable that can be placed in shared memory and used from multiple processes |
CSharedMemoryRepo | Repository of all shared memory in one FOEDUS instance |
CSharedMutex | A mutex that can be placed in shared memory and used from multiple processes |
CSharedMutexScope | Auto-lock scope object for SharedMutex |
CSharedPolling | A polling-wait mechanism that can be placed in shared memory and used from multiple processes |
CSharedRendezvous | A one-time single-producer multiple-consumer event synchronization in shared memory for multiple processes |
CSocManager | SOC manager, which maintains the shared resource across SOCs and, if this engine is a master engine, manages child SOCs |
CSocManagerPimpl | Pimpl object of SocManager |
CSocOptions | Set of options for SOC manager |
CThreadMemoryAnchors | Part of NodeMemoryAnchors for each thread |
►Nstorage | Storage Manager, which implements a couple of key/value stores |
►Narray | Array Storage, a dense and regular array |
CArrayCommonUpdateLogType | A base class for ArrayOverwriteLogType/ArrayIncrementLogType |
CArrayComposeContext | ArrayComposer's compose() implementation separated from the class itself |
CArrayComposer | Composer for an array storage |
CArrayCreateLogType | Log type of CREATE ARRAY STORAGE operation |
CArrayIncrementLogType | Log type of array-storage's increment operation |
CArrayMetadata | Metadata of an array storage |
CArrayMetadataSerializer | |
CArrayOverwriteLogType | Log type of array-storage's overwrite operation |
►CArrayPage | Represents one data page in Array Storage |
CData | Data union for either leaf (dynamic size) or interior (fixed size) |
CArrayPartitioner | Partitioner for an array storage |
CArrayPartitionerData | |
CArrayRange | Represents an offset range in an array storage |
CArrayRootInfoPage | Output of one compose() call, which are then combined in construct_root() |
CArrayStorage | Represents a key-value store based on a dense and regular array |
CArrayStorageControlBlock | Shared data of this storage type |
CArrayStoragePimpl | Pimpl object of ArrayStorage |
CLookupRoute | Compactly represents the route to reach the given offset |
CLookupRouteFinder | Packages logic and required properties to calculate LookupRoute in array storage from offset |
CSortEntry | Used in sort_batch() |
►Nhash | Hashtable Storage, a concurrent hashtable |
CBloomFilterFingerprint | A fingerprint for bloom filter in each HashDataPage |
CComposedBin | Represents an output of composer on one bin |
CComposedBinsBuffer | Abstracts how we batch-read several HashComposedBinsPage emit from individual composers |
CComposedBinsMergedStream | Packages all ComposedBinsBuffer to easily extract bins of current interest |
CDataPageBloomFilter | To quickly check whether a HashDataPage might contain a specific hash value, we maintain a non-counting bloom filter in each page |
CHashBinRange | Represents a range of hash bins in a hash storage, such as what an intermediate page is responsible for |
CHashCombo | A set of information that are used in many places, extracted from the given key |
CHashCommonLogType | A base class for HashInsertLogType/HashDeleteLogType/HashOverwriteLogType |
CHashComposeContext | HashComposer's compose() implementation separated from the class itself |
CHashComposedBinsPage | A page to pack many ComposedBin as an output of composer |
CHashComposer | Composer for a hash storage |
CHashCreateLogType | Log type of CREATE HASH STORAGE operation |
►CHashDataPage | Represents an individual data page in Hashtable Storage |
CSlot | Fix-sized slot for each record, which is placed at the end of data region |
CHashDeleteLogType | Log type of hash-storage's delete operation |
CHashInsertLogType | Log type of hash-storage's insert operation |
CHashIntermediatePage | Represents an intermediate page in Hashtable Storage |
CHashMetadata | Metadata of an hash storage |
CHashMetadataSerializer | |
CHashOverwriteLogType | Log type of hash-storage's overwrite operation |
CHashPartitioner | Partitioner for a hash storage |
CHashPartitionerData | |
CHashStorage | Represents a key-value store based on a dense and regular hash |
CHashStorageControlBlock | Shared data of this storage type |
CHashStoragePimpl | Pimpl object of HashStorage |
►CHashTmpBin | An in-memory single-threaded data structure to compose tuples in a hash bin |
CRecord | Represents a record with a unique key |
CHashUpdateLogType | Log type of hash-storage's update operation |
CIntermediateRoute | Compactly represents the route of intermediate pages to reach the given hash bin |
CRecordLocation | Return value of locate_record() |
CReserveRecords | A system transaction to reserve a physical record(s) in a hash data page |
CSortEntry | Used in sort_batch() |
CTmpSnashotPage | |
►Nmasstree | Masstree Storage, 64-bit B-tries with internal B-trees |
CAdopt | A system transaction to adopt foster twins into an intermediate page |
CGrowFirstLayerRoot | A system transaction to grow a first-layer root |
CGrowNonFirstLayerRoot | A system transaction to grow a second- or depper-layer root |
CHighFence | Used only for debugging as this is not space efficient |
►CMasstreeBorderPage | Represents one border page in Masstree Storage |
CFindKeyForReserveResult | Return value for find_key_for_reserve() |
CSlot | Fix-sized slot for each record, which is placed at the end of data region |
CSlotLengthPart | A piece of Slot object that must be read/written in one-shot, meaning no one reads half-written values whether it reads old values or new values |
CSlotLengthUnion | |
►CMasstreeCommonLogType | A base class for MasstreeInsertLogType/MasstreeDeleteLogType/MasstreeOverwriteLogType |
CRecordAddresses | |
►CMasstreeComposeContext | MasstreeComposer's compose() implementation separated from the class itself |
CFenceAndPointer | |
CPageBoundaryInfo | Represents a minimal information to install a new snapshot page pointer |
CPageBoundarySort | Points to PageBoundaryInfo with a sorting information |
CPathLevel | One level in the path |
CMasstreeComposer | Composer for an masstree storage |
CMasstreeCreateLogType | Log type of CREATE MASSTREE STORAGE operation |
►CMasstreeCursor | Represents a cursor object for Masstree storage |
CRoute | Represents one page in the current search path from layer0-root |
CMasstreeDeleteLogType | Log type of masstree-storage's delete operation |
CMasstreeInsertLogType | Log type of masstree-storage's insert operation |
►CMasstreeIntermediatePage | Represents one intermediate page in Masstree Storage |
CMiniPage | |
CMasstreeIntermediatePointerIterator | Handy iterator for MasstreeIntermediate |
CMasstreeMetadata | Metadata of a masstree storage |
CMasstreeMetadataSerializer | |
CMasstreeOverwriteLogType | Log type of masstree-storage's overwrite operation |
CMasstreePage | Common base of MasstreeIntermediatePage and MasstreeBorderPage |
CMasstreePartitioner | Partitioner for a masstree storage |
CMasstreePartitionerData | Dynamic information of one partitioner |
►CMasstreeStorage | Represents a Masstree storage |
CPeekBoundariesArguments | Arguments for peek_volatile_page_boundaries() |
CMasstreeStorageControlBlock | Shared data of this storage type |
CMasstreeStoragePimpl | Pimpl object of MasstreeStorage |
CMasstreeUpdateLogType | Log type of masstree-storage's update operation |
COwnerSamples | Number of vol pages in each node sampled per pointer in the root page |
CRecordLocation | Return value of MasstreeStoragePimpl::locate_record()/reserve_record() |
CReserveRecords | A system transaction to reserve a physical record(s) in a border page |
CSortEntry | Unlike array's sort entry, we don't always use this because keys are arbitrary lengthes |
►CSplitBorder | A system transaction to split a border page in Master-Tree |
CSplitStrategy | |
►CSplitIntermediate | A system transaction to split an intermediate page in Master-Tree |
CSplitStrategy | Constructed by hierarchically reading all separators and pointers in old page |
►Nsequential | Sequential Storage, an append/scan only data structure |
CHeadPagePointer | Each pointer to a snapshot head page comes with a bit more information to help reading |
CSequentialAppendLogType | Log type of sequential-storage's append operation |
►CSequentialComposer | Composer for an sequential storage |
CRootInfoPage | Output of one compose() call, which are then combined in construct_root() |
CSequentialCreateLogType | Log type of CREATE SEQUENTIAL STORAGE operation |
CSequentialCursor | A cursor interface to read tuples from a sequential storage |
CSequentialMetadata | Metadata of a sequential storage |
CSequentialMetadataSerializer | |
CSequentialPage | Represents one data page in Sequential Storage |
CSequentialPartitioner | Partitioner for an sequential storage |
CSequentialRecordBatch | A chunk of records returned by SequentialCursor |
CSequentialRecordIterator | Iterator for one SequentialRecordBatch, or a page |
CSequentialRootPage | Represents one stable root page in Sequential Storage |
CSequentialStorage | Represents an append/scan-only store |
CSequentialStorageControlBlock | Shared data of this storage type |
►CSequentialStoragePimpl | Lock-free list of records stored in the volatile part of sequential storage |
CPointerPage | |
CSequentialTruncateLogType | Log type of TRUNCATE SEQUENTIAL STORAGE operation |
CStreamStatus | Unlike other composers, this one doesn't need merge sort |
►CComposer | Represents a logic to compose a new version of data pages for one storage |
CComposeArguments | Arguments for compose() |
CConstructRootArguments | Arguments for construct_root() |
CDropResult | Retrun value of drop_volatiles() |
CDropVolatilesArguments | Arguments for drop_volatiles() |
CCreateLogType | Base type for CREATE STORAGE operation |
CDropLogType | Log type of DROP STORAGE operation |
CDualPagePointer | Represents a pointer to another page (usually a child page) |
►CMetadata | Metadata of one storage |
CSnapshotThresholds | Tuning parameters related to snapshotting |
CMetadataSerializer | |
CPage | Just a marker to denote that the memory region represents a data page |
CPageHeader | Just a marker to denote that a memory region represents a data page |
CPageVersion | Just a synonym of XctId to be used as a page lock mechanism |
CPageVersionStatus | |
►CPartitioner | Partitioning and sorting logic for one storage |
CDesignPartitionArguments | Arguments for design_partition() |
CPartitionBatchArguments | Arguments for partition_batch() |
CSortBatchArguments | Arguments for sort_batch() |
CPartitionerMetadata | Tiny metadata of partitioner for every storage used while log gleaning |
CRecord | Represents one record in our key-value store |
CStorage | Represents one key-value store |
CStorageControlBlock | A base layout of shared data for all storage types |
CStorageManager | Storage Manager class that provides API to create/open/close/drop key-value stores |
CStorageManagerControlBlock | Shared data in StorageManagerPimpl |
CStorageManagerPimpl | Pimpl object of StorageManager |
CStorageOptions | Set of options for storage manager |
CVolatilePageInitArguments | Set of arguments, both inputs and outputs, given to each volatile page initializer |
CVolatilePagePointer | Represents a pointer to a volatile page with modification count for preventing ABA |
►Nthread | Thread and Thread-Group, which abstracts NUMA-core/node and provides API to attach/detach tasks to pooled threads |
CConditionVariable | An analogue of pthread's condition variable and std::condition_variable to avoid glibc's bug in pthread_cond_broadcast/signal (thus in notify_all/one in turn) |
CGrabFreeVolatilePagesScope | Obtains multiple free volatile pages at once and releases them automatically when this object gets out of scope |
CImpersonateSession | A user session running on an impersonated thread |
CNumaThreadScope | Pin the current thread to the given NUMA node in this object's scope |
CRendezvous | The frequently appearing triplet of condition_varible, "signal" flag for spurious wakeup, and mutex for a one-time single-producer multiple-consumer event synchronization |
CStoppableThread | The frequently appearing quartet of std::thread, condition_varible, stop-request flag, and mutex |
CThread | Represents one thread running on one NUMA core |
CThreadControlBlock | Shared data of ThreadPimpl |
CThreadGroup | Represents a group of pre-allocated threads running in one NUMA node |
CThreadGroupRef | A view of Thread group object for other SOCs and master engine |
CThreadOptions | Set of options about threads and thread-groups |
CThreadPimpl | Pimpl object of Thread |
CThreadPimplCllReleaseAllFunctor | |
CThreadPimplMcsAdaptor | Implements McsAdaptorConcept over ThreadPimpl |
CThreadPool | The pool of pre-allocated threads in the engine to execute transactions |
CThreadPoolPimpl | Pimpl object of ThreadPool |
CThreadRef | A view of Thread object for other SOCs and master engine |
►Nxct | Transaction Manager, which provides APIs to begin/commit/abort transactions |
CAcquireAsyncRet | Return value of acquire_async_rw |
CCurrentLockList | Sorted list of all locks, either read-lock or write-lock, taken in the current run |
CCurrentLockListIteratorForWriteSet | An iterator over CurrentLockList to find entries along with sorted write-set |
CInCommitEpochGuard | Automatically sets in-commit-epoch with appropriate fence during pre-commit protocol |
CLockableXctId | Transaction ID, a 128-bit data to manage record versions and provide locking mechanism |
►CLockEntry | An entry in CLL and RLL, representing a lock that is taken or will be taken |
CLessThan | For std::binary_search() etc without creating the object |
CLockFreeReadXctAccess | Represents a record of special read-access during a transaction without any need for locking |
CLockFreeWriteXctAccess | Represents a record of special write-access during a transaction without any need for locking |
CMcsAdaptorConcept | Defines an adapter template interface for our MCS lock classes |
CMcsImpl | Implements an MCS-locking Algorithm |
CMcsImpl< ADAPTOR, McsRwExtendedBlock > | The Extended MCS-RW lock |
CMcsImpl< ADAPTOR, McsRwSimpleBlock > | The Simple MCS-RW lock |
CMcsMockAdaptor | Implements McsAdaptorConcept |
CMcsMockContext | Analogous to the entire engine |
CMcsMockDataPage | A dummy page layout to store RwLockableXctId |
CMcsMockNode | Analogous to one thread-group/socket/node |
CMcsMockThread | A dummy implementation that provides McsAdaptorConcept for testing |
CMcsOwnerlessLockScope | |
CMcsRwAsyncMapping | |
►CMcsRwExtendedBlock | Pre-allocated MCS block for extended version of RW-locks |
►CField | |
CComponents | |
CMcsRwLock | An MCS reader-writer lock data structure |
►CMcsRwSimpleBlock | Reader-writer (RW) MCS lock classes |
►CSelf | |
CComponents | |
CMcsWwBlock | Pre-allocated MCS block for WW-locks |
CMcsWwBlockData | Exclusive-only (WW) MCS lock classes |
CMcsWwImpl | A specialized/simplified implementation of an MCS-locking Algorithm for exclusive-only (WW) locks |
CMcsWwLock | An exclusive-only (WW) MCS lock data structure |
CMcsWwOwnerlessImpl | A ownerless (contextless) interface for McsWwImpl |
CPageComparator | |
CPageVersionAccess | Represents a record of reading a page during a transaction |
CPointerAccess | Represents a record of following a page pointer during a transaction |
CReadXctAccess | Represents a record of read-access during a transaction |
CRecordXctAccess | Base of ReadXctAccess and WriteXctAccess |
CRetrospectiveLockList | Retrospective lock list |
CRwLockableXctId | The MCS reader-writer lock variant of LockableXctId |
CSysxctFunctor | A functor representing the logic in a system transaction via virtual-function |
►CSysxctLockEntry | An entry in CLL/RLL for system transactions |
CLessThan | For std::binary_search() etc without creating the object |
CSysxctLockList | RLL/CLL of a system transaction |
CSysxctWorkspace | Per-thread reused work memory for system transactions |
CTrackMovedRecordResult | Result of track_moved_record() |
CWriteXctAccess | Represents a record of write-access during a transaction |
CXct | Represents a user transaction |
CXctId | Persistent status part of Transaction ID |
CXctManager | Xct Manager class that provides API to begin/abort/commit transaction |
CXctManagerControlBlock | Shared data in XctManagerPimpl |
CXctManagerPimpl | Pimpl object of XctManager |
CXctOptions | Set of options for xct manager |
CAttachable | Attachable Resources on Shared Memory |
CDefaultInitializable | Typical implementation of Initializable as a skeleton base class |
CEngine | Database engine object that holds all resources and provides APIs |
CEngineOptions | Set of option values given to the engine at start-up |
►CEnginePimpl | Pimpl object of Engine |
CModulePtr | Pair of module pointer and its type |
CEpoch | Represents a time epoch |
CErrorStack | Brings error stacktrace information as return value of functions |
CErrorStackBatch | Batches zero or more ErrorStack objects to represent in one ErrorStack |
CFixedErrorStack | Representation of ErrorStack that can be copied to other processes and even serialized to files |
CInitializable | The pure-virtual interface to initialize/uninitialize non-trivial resources |
CUninitializeGuard | Calls Initializable::uninitialize() automatically when it gets out of scope |
Cbitmask | |
Cnodemask_t |