oxidecomputer / oxidecomputer/steno
gracefully handle invalid DAGs from the database
Nobody has claimed this yet.
- Dominant language
- Rust
- Stars
- 170
- Forks
- 15
- PR merge metrics
- No merged PRs in 30d
Description
It's unclear how high priority this is. This should be impossible because we validate DAGs before we write them to the database. And we only intend to run a given saga with a given Nexus version. However, if we ever did mess this up, a Nexus instance running that saga would wind up in a panic loop, which is pretty bad.
Contributor guide
No contributing guide indexed for this repository
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 at src/saga_exec.rs lines 1072-1074 and trace how a DAG loaded from the database reaches the saga executor. Review the existing error path and determine how an invalid DAG should be handled so it does not cause a panic loop; done means the failure is handled gracefully rather than panicking repeatedly.
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