fix(baseapp): ABCI Consensus Failure Fix#16700
Merged
Merged
Conversation
cosmos#16448) Co-authored-by: Jeancarlo Barrios <JeancarloBarrios@users.noreply.github.com>
…) (cosmos#16451) Co-authored-by: Chill Validation <92176880+chillyvee@users.noreply.github.com>
Comment on lines
679
to
+688
| // vote extensions, so skip those. | ||
| txResults := make([]*abci.ExecTxResult, 0, len(req.Txs)) | ||
| for _, rawTx := range req.Txs { | ||
| var response *abci.ExecTxResult | ||
|
|
||
| if _, err := app.txDecoder(rawTx); err == nil { | ||
| txResults = append(txResults, app.deliverTx(rawTx)) | ||
| response = app.deliverTx(rawTx) | ||
| } else { | ||
| // In the case where a transaction included in a block proposal is malformed, | ||
| // we still want to return a default response to comet. This is because comet |
Contributor
There was a problem hiding this comment.
Change potentially affects state.
Call sequence:
(*github.com/cosmos/cosmos-sdk/baseapp.BaseApp).FinalizeBlock (baseapp/abci.go:648)
tac0turtle
reviewed
Jun 26, 2023
Contributor
tac0turtle
left a comment
There was a problem hiding this comment.
can we make this against main, then a bot will backport it
Contributor
Author
|
@tac0turtle Switched and caught up to main. |
julienrbrt
reviewed
Jun 26, 2023
| * (x/crypto) [#15258](https://github.com/cosmos/cosmos-sdk/pull/15258) Write keyhash file with permissions 0600 instead of 0555. | ||
| * (cli) [#16138](https://github.com/cosmos/cosmos-sdk/pull/16138) Fix snapshot commands panic if snapshot don't exists. | ||
| * (x/gov) [#16230](https://github.com/cosmos/cosmos-sdk/pull/16231) Fix: rawlog JSON formatting of proposal_vote option field | ||
| * (baseapp) [#16700](https://github.com/cosmos/cosmos-sdk/pull/16700) Fix: Consensus Failure in returning no response to malformed transactions |
Contributor
There was a problem hiding this comment.
Can you move the changelog to unreleased?
alexanderbez
approved these changes
Jun 27, 2023
Contributor
alexanderbez
left a comment
There was a problem hiding this comment.
preliminary ACK, thanks @davidterpay!
However, we need to:
- Update the changelog entry placement as @julienrbrt pointed out
- Add a unit test in
abci_test.gothat creates and sets proposal handlers that inject VE. Note, we already have VE handlers that do this, you just need to set them.
Contributor
Author
|
Pushed a unit test that
|
julienrbrt
reviewed
Jun 28, 2023
|
|
||
| ## [Unreleased] | ||
|
|
||
| * (baseapp) [#16700](https://github.com/cosmos/cosmos-sdk/pull/16700) Fix: Consensus Failure in returning no response to malformed transactions |
Contributor
There was a problem hiding this comment.
nit, can you place it under the bug fixes category
Contributor
Author
|
nit fixed 🫡 |
mergify Bot
pushed a commit
that referenced
this pull request
Jun 28, 2023
Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com> Co-authored-by: Jeancarlo Barrios <JeancarloBarrios@users.noreply.github.com> Co-authored-by: Julien Robert <julien@rbrt.fr> Co-authored-by: Chill Validation <92176880+chillyvee@users.noreply.github.com> (cherry picked from commit 078e7cb) # Conflicts: # CHANGELOG.md
julienrbrt
added a commit
that referenced
this pull request
Jun 28, 2023
Contributor
|
Phenomenal work @davidterpay -- thanks so much 🙏 |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Description
In this PR, I fix the issue outlined here #16676. TLDR is that
FinalizeBlockmust return a response for all transactions included in a proposal, otherwise Comet will trigger a consensus failure.Closes: #16676
Author Checklist
All items are required. Please add a note to the item if the item is not applicable and
please add links to any relevant follow up issues.
I have...
!to the type prefix if API or client breaking changeCHANGELOG.mdReviewers Checklist
All items are required. Please add a note if the item is not applicable and please add
your handle next to the items reviewed if you only reviewed selected items.
I have...
!in the type prefix if API or client breaking change