Expand description
Transaction system for atomic database modifications
This module provides the transaction API for making atomic changes to an Eidetica database. Transactions ensure that all changes within a transaction are applied atomically and maintain proper parent-child relationships in the Merkle-CRDT DAG structure.
§Subtree Parent Management
One of the critical responsibilities of the transaction system is establishing proper subtree parent relationships. When a store (subtree) is accessed for the first time in a transaction, the system must determine the correct parent entries for that subtree. This involves:
- Checking for existing subtree tips (leaf nodes)
- If no tips exist, traversing the DAG to find reachable subtree entries
- Setting appropriate parent relationships (empty for first entry, or proper parents)
Re-exports§
pub use errors::TransactionError;
Modules§
- errors
- Transaction specific errors
Structs§
- Transaction
- Represents a single, atomic transaction for modifying a
Database.