libfoedus-core
FOEDUS Core Library
Modules
Here is a list of all modules:
[detail level 123]
 FOEDUS ComponentsMain modules of libfoedus
 Snapshot Cache ManagerSnapshot Cache Manager, which caches data pages retrieved from snapshot files.
 Debug-Support functionalitiesDebug-Support functionalities.
 Database EngineDatabase Engine, the top-level component of foedus
 Log ManagerLog Manager, which writes out transactional logs.
 Log TypesDefines the content and apply logic of transactional operatrions
 Memory ManagerMemory Manager, which controls memory allocations, deallocations, and sharing.
 Memory HierarchyNUMA-Aware Memory Hierarchy in libfoedus-core
 System and User ProceduresSystem and User Procedures.
 Restart ManagerRestart Manager, which recovers the state of database by re-playing transaction logs at start-up.
 Savepoint ManagerSavepoint Manager, which durably and atomically remembers what happened in the engine occasionally (eg.
 Snapshot ManagerSnapshot Manager, which manages snapshot files of the database.
 SOC and IPCSystem On Chip (SOC) and interprocess communication (IPC).
 Storage ManagerStorage Manager, which implements a couple of key/value stores.
 Array StorageArray Storage, a dense and regular array.
 Hashtable StorageHashtable Storage, a concurrent hashtable.
 Masstree StorageMasstree Storage, 64-bit B-tries with internal B-trees.
 Sequential StorageSequential Storage, an append/scan only data structure.
 Thread and Thread-GroupThread and Thread-Group, which abstracts NUMA-core/node and provides API to attach/detach tasks to pooled threads.
 Thread-Pool and ImpersonationAPIs to pool and impersonate worker threads in libfoedus-core
 Transaction ManagerTransaction Manager, which provides APIs to begin/commit/abort transactions.
 Retrospective Lock ListRetrospective Lock List (RLL) to avoid deadlocks
 Physical-only, short-living system transactions.
 FOEDUS Programming IdiomsYou must first get used to these things to use/develop libfoedus
 Assorted Methods/ClassesAssorted Methods/Classes that are too subtle to have their own packages.
 Compiler Specific OptimizationsA few macros and functions to exploit compiler specific optimizations
 Memorandum on ARMv8 (AArch64) SupportWe keep notes on FOEDUS's ARMv8 (AArch64) Support here
 C++11 Keywords in Public HeadersDefines macros for hiding C++11 features in public headers for clients that use C++98
 Debug-Support functionalitiesDebug-Support functionalities.
 Error codes, messages, and stacktracesError codes (foedus::ErrorCode), their error messages defined in error_code.xmacro, and stacktrace information (ErrorStack) returned by our API functions
 Object ExternalizationObject Externalization.
 Filesystem wrapperFilesystem wrapper, an analogue of boost::filesystem.
 Initialize/Uninitialize ResourcesDefines a uniform class interface to initialize/uninitialize non-trivial resources