matrix-org / matrix-org/seshat

`Connection::get_stats` can result in `FsError` due to race with tantivy

Open
#42 0 comments 0 reactions 0 assignees View on GitHub
Dominant language
Rust
Stars
127
Forks
29
Avg merge
22h 40m
Merged PRs (30d)
3

Description

`get_stats` operates directly on tantivy's index directory, so races can happen which result in `FsError(Error { kind: NotFound, message: "entity not found" })`. It's safe to ignore the error, however it might make sense to refactor that so the race can't happen.

Contributor guide

Open the contributing guide

Research direction

Start at the Connection::get_stats entry point and inspect how it accesses tantivy's index directory. Reproduce or trace the race that produces FsError(NotFound), then confirm that the refactoring prevents the race rather than relying on ignoring the error.

Written by the indexing model from the issue text.

Assessment

Tech stack
rust
Domain
databases
Issue type
Refactor
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
42/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.