StackExchange / StackExchange/StackExchange.Redis
Feature: Stall Detection
Open
Nobody has claimed this yet.
➕ enhancement
- Dominant language
- C#
- Stars
- 6.2k
- Forks
- 1.6k
- Avg merge
- 1d 15h
- Merged PRs (30d)
- 43
Description
Talking on the weekly sync, basic idea is we have a timer that fires say once per second. We only need 1 entire process (static, not per-multiplexer).
Overall setup:
- 1 static timer
- Timer fires once per second, recording 3 values:
- Timespan since the last timer fire ("is this a stall?")
- Timestamp of the current run (for the next cycle)
- Stall data - (string describing the stall, or clearing it if there's no stall)
- Exception messages include this new stall data if present
Question:
- What is a stall? (e.g. how long?) - 1 sec timer took 2+ to fire?
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
Start by resolving the open design question in the issue: what delay makes the once-per-second timer a stall, and how should the static timer record and clear stall data? Then determine how that data should be included in exception messages; the work is done when those behaviors are specified and implemented consistently.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- csharp, redis
- Domain
- backend, observability
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100