elips/docs
Chapter VII · concurrency

Read-only mode & shared readers

Open the same database as read_only from any number of processes. They take a shared flock; mutations are rejected at the API boundary.

python
replica = elips.open("/var/data/elips", read_only=True)
for hit in replica.vault("docs").seek(q, top=10):
    ...
  • One read_write opener via exclusive lock
  • Many read_only openers via shared lock
  • Read-only vaults reject place/erase/checkpoint with StorageError

This is the supported mode for shared-reader analytics and read-fanout serving. Writers run elsewhere; replicas pick up new segments on the next open or rotation.