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

Simulation: simulate ABCIApp state machine #2778

Closed
cwgoes opened this issue Nov 12, 2018 · 4 comments · Fixed by #4946
Closed

Simulation: simulate ABCIApp state machine #2778

cwgoes opened this issue Nov 12, 2018 · 4 comments · Fixed by #4946

Comments

@cwgoes
Copy link
Contributor

cwgoes commented Nov 12, 2018

Write simple Tendermint simulation code to collate transactions, propose blocks, and execute the multi-connection ABCIApp state machine just like Tendermint does. Include the full range of possible relevant states (e.g. transactions failing checktx still sent to delivertx, gas limits exceeded, transactions reordered from mempool order).

This should be in addition to, not instead of, direct-msg simulation (what we have presently), because it will be slower, but this will help us catch issues like #2772.

cc @ValarDragon

@cwgoes
Copy link
Contributor Author

cwgoes commented Jul 4, 2019

We could still do this; do you think it would be useful @rigelrozanski or should this be closed?

@rigelrozanski
Copy link
Contributor

I don't fully grasp why this is useful. Is it to catch unanticipated possible behaviours of tendermint?

transactions failing checktx still sent to delivertx

Is this possible to occur? malicious validator?

@cwgoes
Copy link
Contributor Author

cwgoes commented Jul 25, 2019

Is this possible to occur? malicious validator?

Yes; the proposer can do this, for example.

@rigelrozanski
Copy link
Contributor

rigelrozanski commented Jul 29, 2019

Okay then yes - I see this as a useful feature worth developing. However doesn't seem pressing

  • Ideally I'd like to see this type of testing infrastructure provided within tendermint (so it can be easily maintained as tendermint changes).

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging a pull request may close this issue.

4 participants