Skip to main content

Module database

Module database 

Source
Expand description

Public database, connection, transaction, and recovery API.

State remains available for small embedded/in-memory executor tests, but applications should use Database. A transaction works on a private snapshot and publishes it with an optimistic generation check. Readers therefore never observe half of a write, and concurrent writers fail with a transaction conflict instead of silently losing updates.

Structsยง

Connection
A connection that can hold one transaction across multiple statements.
Database
A cloneable handle to an embedded Basalt database.
Transaction
A private MVCC-style snapshot. Reads use the snapshot without holding a database lock; commit publishes it only if no newer generation exists.