-
Notifications
You must be signed in to change notification settings - Fork 11.3k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[Consensus 2.0] propagate errors from Core to upstream #16355
Conversation
The latest updates on your projects. Learn more about Vercel for Git ↗︎
4 Ignored Deployments
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Nice. I'm thinking of handling errors in the following ways:
- Shutdown: propagate to core thread and shut it down.
- Storage errors: ok to panic at lower level since usually there is no way to retry.
- Client network errors: retry request.
- Peer request validation errors: return error to peers.
- Transaction submission failures: return error to Sui.
Agreed with all the above. Regarding this: |
45596db
to
bf67ad1
Compare
…rantee that the subscribers are live.
) ## Description Propagates the errors from Core to upstream components (namely CoreThread) to handle. When the error is a `Shutdown` one then we close the core loop and exit, otherwise we panic as it is deemed a fatal one. Since we are doing this I've also propagated an error from the commit observer to follow a uniform approach. ## Test Plan CI --- If your changes are not user-facing and do not break anything, you can skip the following section. Otherwise, please briefly describe what has changed under the Release Notes section. ### Type of Change (Check all that apply) - [ ] protocol change - [ ] user-visible impact - [ ] breaking change for a client SDKs - [ ] breaking change for FNs (FN binary must upgrade) - [ ] breaking change for validators or node operators (must upgrade binaries) - [ ] breaking change for on-chain data layout - [ ] necessitate either a data wipe or data migration ### Release notes
Description
Propagates the errors from Core to upstream components (namely CoreThread) to handle. When the error is a
Shutdown
one then we close the core loop and exit, otherwise we panic as it is deemed a fatal one. Since we are doing this I've also propagated an error from the commit observer to follow a uniform approach.Test Plan
CI
If your changes are not user-facing and do not break anything, you can skip the following section. Otherwise, please briefly describe what has changed under the Release Notes section.
Type of Change (Check all that apply)
Release notes