aboutsummaryrefslogtreecommitdiffstats
path: root/include/CursorManager.h
diff options
context:
space:
mode:
authorMarcos Magueta <maguetamarcos@gmail.com>2026-05-08 22:57:05 -0300
committerMarcos Magueta <maguetamarcos@gmail.com>2026-05-08 22:57:05 -0300
commit0657d6815943b5350bf4a596cd826f7a9de14a90 (patch)
tree53d4fbd03731e483f1bd83a58beab64a330c7f1d /include/CursorManager.h
parentbe67e04f498f02c601788f2e23913827d2aa3c21 (diff)
downloadRNT-0657d6815943b5350bf4a596cd826f7a9de14a90.tar.gz
RNT-0657d6815943b5350bf4a596cd826f7a9de14a90.zip
port docs to doxygen
Diffstat (limited to '')
-rw-r--r--include/CursorManager.h39
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
{