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

Prevent the Mempool test shrinker from rendering some transactions invalid #700

Open
nfrisby opened this issue Mar 10, 2020 · 0 comments
Open
Labels
better-tests Ideas to improve the tests

Comments

@nfrisby
Copy link
Contributor

nfrisby commented Mar 10, 2020

When debugging IntersectMBO/ouroboros-network#1779, we were confused for a moment because the shrinker was masking the real error. After shrinking (i.e. what we initially saw), the error was a property failure: all transactions were rejected with MissingInput. We eventually realized that before shrinking, the failure was an error exception due to an Invalid initial transaction, which itself was caused by the hash collision.

This Issue is to refine the shrinker so that it does not introduce failures. Specifically, it should either not make changes that make previously-valid transactions invalid or it should remove them/update their expectation flag/etc when it invalidates them.

It may be that the rather insidious circumstance of a hash collision was causing that particular misbehavior. In that case, it might be fine to summarize in this Issue why more usual circumstances won't cause the shrinker to misbehave and then close Issue.

@dnadales dnadales transferred this issue from IntersectMBO/ouroboros-network Dec 1, 2023
@dnadales dnadales added the better-tests Ideas to improve the tests label 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
better-tests Ideas to improve the tests
Projects
None yet
Development

No branches or pull requests

2 participants