abci++: update PrepareProposal API to accept just a list of bytes#9283
abci++: update PrepareProposal API to accept just a list of bytes#9283williambanfield merged 11 commits intofeature/abci++pppfrom
Conversation
|
@sergio-mena should we open another issue to update the spec? I'm happy to take a stab at doing it here. |
|
@williambanfield, since @jmalicevic is working on the v0.37.0 version of the spec, I think the best course of action is to add a checkbox here #9201, and let Jasmina know about it. Otherwise we risk stepping on each other's toes. |
| } | ||
|
|
||
| func (app *Application) CheckTx(req types.RequestCheckTx) types.ResponseCheckTx { | ||
| if req.Type == types.CheckTxType_Recheck { |
There was a problem hiding this comment.
Are we sure we want this if?
It would also make sense if we got a replay attempt for a transaction, wouldn't it?
There was a problem hiding this comment.
We clear the list of transactions to remove after every height, so this really only pertains to the recheck attempts that occur directly after the height. Replay attempts may happen but at the moment, the application does not guard against those at all otherwise, so I don't think we need to add that extra functionality to this code.
|
Sorry to comment on this late, the spec says that there is a check for duplicate transactions in the transaction list returned via ResponsePrepareProposal. I could not find this in the code, is it there? |
|
Excellent point, I'd say checking for duplicate transactions is something we'd still want to check at Tendermint level. Let's wait for @williambanfield to see what he thinks. |
What does this change do?
This changes the
ResponsePrepareProposaltype, substituting the[]TxRecordfor just[]bytes. This change is made in the.protofile and in all necessary additional places in the code.The
TxRecordtype has been removed, as has theTxRecordSetalong with the validation logic that theTxRecordSetimplemented. This validation logic is no longer necessary. The tests for this type have been removed, as have the tests forResponsePrepareProposalthat tested that theTxRecordwas used correctly.Closes #9269
PR checklist
CHANGELOG_PENDING.mdupdated, or no changelog entry neededdocs/) and code comments, or nodocumentation updates needed