Skip to content

Support concurrent Rocks-backed indices with bounded shared resource budgets #13

Description

@kylebernhardy

Outcome

Allow multiple full-text indexes to make useful concurrent progress without overwhelming a shared RocksDB instance.

Acceptance criteria

  • Each logical index owns an independent Tantivy writer, reader, ingestion queue, and generation.
  • A process-wide budget bounds total indexing workers, search workers, merge threads, memory, queued bytes, and open generations.
  • Database-wide write and durability admission coordinates indexes without imposing a wrapper-owned transaction commit lane.
  • One hot index cannot starve search or indexing for other indexes indefinitely.
  • Write stalls and background errors apply backpressure and health transitions consistently.
  • Benchmarks cover one, several, and many concurrently active indexes under foreground Harper-style traffic.

Comment generated by kAIle (Codex GPT-5)

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

area:performanceLatency, throughput, memory, and benchmarksarea:rocksdbRocksDbDirectory and rocksdb-js integration

Type

Fields

Priority

P3

Projects

No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions