Skip to content

index

index #

The SQLite index: one file, five tables, every write inside one immediate transaction.

  • [.database][] — Database, the connection and its transaction; the schema version stamped into the file.
  • [.objects][] — the objects table: every sealed tree and the facts eviction ranks it by (size, compute cost, use score).
  • [.names][] — the names table: call:<key>/<position> for a memoized result, state:<key> for a state's current version (kept).
  • [.pins][] — the pins table: which living process holds which object.
  • [.steps][] — the steps table: every step a living process has open — a memoized call, a map, a pmap, a cg.step block — its parent, its owner, and how far along it is.
  • [.file_hashes][] — the file_hashes table: the stat-keyed HashCache that lets an unchanged tree hash without being re-read, on its own connection so hashing never waits on the index.

The table modules are free functions over a connection handed out by Database.transaction. This __init__ is documentation-only; internal modules import from the leaf modules directly.