Skip to content
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

Catch-and-restart on fewer miniprotocol exceptions #762

Open
nfrisby opened this issue Sep 10, 2019 · 2 comments
Open

Catch-and-restart on fewer miniprotocol exceptions #762

nfrisby opened this issue Sep 10, 2019 · 2 comments

Comments

@nfrisby
Copy link
Contributor

nfrisby commented Sep 10, 2019

IntersectMBO/ouroboros-network#773 added a handler to the mini protocol threads in test-consensus: when they throw exceptions matching a certain type, they are caught and the mini protocol threads (both client and server sides of that direction) are simply restarted at the beginning of the next slot. This coarsely emulates the related behavior of the implementation.

Right now the handler is only limited by type. This Issue is to further refine the handler to only catch certain data constructors. Ultimately, it should only catch exceptions that are expected to be raised during normal operation (eg ForkTooDeep). All other exceptions are unexpected and should cause the test-consensus infrastructure to crash out with QuickCheck failures, by simply not being caught by this handler.

I don't yet know exactly which constructors should be caught. Currently, it includes at least ForkTooDeep and InvalidRollForward in my experience. (We anticipate that #763 will render InvalidRollForward unexpected.)

This Issue is similar to if not blocked by the ongoing determination of concrete error policies (eg IntersectMBO/ouroboros-network#798).

@mrBliss
Copy link
Contributor

mrBliss commented Jan 6, 2020

What still needs to be done for this?

@edsko edsko changed the title Protocol testing: catch-and-restart on fewer miniprotocol exceptions Catch-and-restart on fewer miniprotocol exceptions Jan 6, 2020
@nfrisby
Copy link
Contributor Author

nfrisby commented Jan 6, 2020

What still needs to be done for this?

Short-answer: There has been no progress. Were you looking for the longer answer? I can concretize, if you'd like, but not particularly tersely :)

@dnadales dnadales transferred this issue from IntersectMBO/ouroboros-network Dec 1, 2023
@dnadales dnadales moved this to 🔖 Ready in Consensus Team Backlog Dec 1, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants