diff options
| author | Marcos Magueta <maguetamarcos@gmail.com> | 2026-05-08 22:57:05 -0300 |
|---|---|---|
| committer | Marcos Magueta <maguetamarcos@gmail.com> | 2026-05-08 22:57:05 -0300 |
| commit | 0657d6815943b5350bf4a596cd826f7a9de14a90 (patch) | |
| tree | 53d4fbd03731e483f1bd83a58beab64a330c7f1d /include/CursorManager.h | |
| parent | be67e04f498f02c601788f2e23913827d2aa3c21 (diff) | |
| download | RNT-0657d6815943b5350bf4a596cd826f7a9de14a90.tar.gz RNT-0657d6815943b5350bf4a596cd826f7a9de14a90.zip | |
port docs to doxygen
Diffstat (limited to 'include/CursorManager.h')
| -rw-r--r-- | include/CursorManager.h | 39 |
1 files changed, 21 insertions, 18 deletions
diff --git a/include/CursorManager.h b/include/CursorManager.h index 61fba87..7e1ebe0 100644 --- a/include/CursorManager.h +++ b/include/CursorManager.h @@ -2,33 +2,36 @@ #include "Api.h" +/** + * @file CursorManager.h + * @brief Declares paging and cursor orchestration for query execution. + */ + namespace nt { - /** + /** * @class CursorManager * @brief Orchestrates data pagination from storage backends to the query executor. * - * The Cursor Manager implements the glue between the 'registry' objects - * and the Volcano-style iterator model. It translates high-level plan - * requests into low-level backend operations (LMDB, etcd, etc.). + * The cursor manager is the glue between registry objects and the + * Volcano-style iterator model. It translates high-level plan requests into + * low-level backend operations such as LMDB or etcd reads. * - * DUTIES: - * 1. Snapshot Anchoring & Pins: - * We need to bind the retrieval to a multigroup snapshot, the object - * for it should hold the reference for the tree that holds all the relations and tuples. + * Responsibilities: + * - Snapshot anchoring and pins: bind retrieval to a multigroup snapshot. + * The snapshot object should hold the reference to the tree containing + * all relations and tuples. * - * 2. State Maintenance: - * Tracks the current position (Iterators/Offsets) within a relation - * to support sequential Next() calls from the algebra engine. + * - State maintenance: track the current iterator or offset inside a + * relation to support sequential Next() calls from the algebra engine. * - * 3. Prefetching & Buffering: - * Abstracts the 'paging' logic of the backend. For remote backends - * like etcd, it manages local buffers to hide latency from the executor. - * Think of a driver for an operating system. + * - Prefetching and buffering: abstract backend paging. For remote + * backends like etcd, manage local buffers to hide latency from the + * executor. Think of this as a database equivalent of an operating-system + * driver. * - * 4. Boundary Enforcement: - * Ensures scans do not cross commit boundaries or logical branch - * definitions unless explicitly requested by the plan. + * - Boundary enforcement: ensure scans do not cross commit boundaries or + * logical branch definitions unless explicitly requested by the plan. */ class NT_API CursorManager { |
