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