Relational NT
A relational database kernel shaped around NT-style object management.
Loading...
Searching...
No Matches
nt::ObjectManager::Multigroup Class Reference

Registry object representing a multigroup snapshot. More...

#include <ObjectManager.h>

Inheritance diagram for nt::ObjectManager::Multigroup:
nt::ObjectManager::IObject

Public Attributes

std::string merkle_root

Detailed Description

Registry object representing a multigroup snapshot.

merkle_root is the hex hash of the Merkle<std::string> root node that maps relation_name → relation_merkle_root for this snapshot. Updates are path-localised: inserting one tuple advances the root through O(log_B) node rewrites, leaving sibling subtrees byte- identical.

Every commit produces a new Multigroup entry under /system/snapshots/<merkle_root> with one child Relation per leaf at /system/snapshots/<merkle_root>/relations/<relation_name>. Snapshots are immutable (disposable=false, exclusive=false); the rest of the system refers to them by hash. A Multigroup is eligible for GC only when its reference_count drops to zero (no BRANCH_TREE still pins it, no pinned cursor still references it).


The documentation for this class was generated from the following file: