package index
Module IndexSource
Index
Index is a scalable implementation of persistent indices in OCaml.
Index provides the standard key-value interface: find, mem and replace. It requires three IO instances:
- A `log` IO containing all of the recently-added bindings; this is also kept in memory.
- When the `log` IO is full, it is merged into the `index` IO. Search is done first in `log` then in `index`, which makes recently added bindings search faster.
- A `lock` IO to ensure safe concurrent access.
Platform dependencies required by Make.
Signatures and implementations of caches. Make requires a cache in order to provide instance sharing.
The exception raised when a write operation is attempted on a read_only index.
The exception is raised when a sync operation is attempted on a read-write index.
The exception raised when any operation is attempted on a closed index, except for close, which is idempotent.