TimelyDataflow / TimelyDataflow/timely-dataflow
[communication] Message counter can panic in shutdown
Nobody has claimed this yet.
- Dominant language
- Rust
- Stars
- 3.6k
- Forks
- 293
- Avg merge
- 14h 46m
- Merged PRs (30d)
- 4
Description
The message counter that uses a Rust MPSC can panic in shutdown if its attempt to report messages fails (presumably because the other side has hung up). It isn't immediately obvious why the other end is shutting down if there are still messages to read, so perhaps there is more to diagnose here, but we've seen this in the wild in tests. Some more discipline about error cases and intended invariants would help here.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
The issue names no file or test. Locate the message counter and its Rust MPSC reporting path, then inspect how shutdown handles a failed send and whether the receiving side can hang up while messages remain. Reproduce the panic in an existing test scenario if available; done means shutdown no longer panics on this error case and the intended invariant is covered by regression testing.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- rust
- Domain
- distributed-systems
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 35/100