Skip to content

[execution] don't inc ExtSeqno in case if tx is not included to block#736

Merged
olegrok merged 1 commit intomainfrom
fix-tmp-receipt-seqno
Apr 2, 2025
Merged

[execution] don't inc ExtSeqno in case if tx is not included to block#736
olegrok merged 1 commit intomainfrom
fix-tmp-receipt-seqno

Conversation

@olegrok
Copy link
Copy Markdown
Contributor

@olegrok olegrok commented Apr 2, 2025

The previous patch
(cbed748) fixed the possibility of adding identical transactions to
multiple blocks. However, it introduced a regression.

Transactions that are not included in a block (and create so-called temporary receipts) could still
modify the state. This breaks replay, since the
account cannot be brought to the correct state
without that transaction.

This patch fixes the issue by rolling back ExtSeqno if the transaction is not included in a block.

This mainly affects deploy transactions. For
execution transactions, gas is paid if
verifyExternal succeeds, so state changes are valid in that case.

@olegrok olegrok requested a review from shermike April 2, 2025 19:25
@olegrok olegrok marked this pull request as ready for review April 2, 2025 19:28
The previous patch
(cbed748) fixed the
possibility of adding identical transactions to
multiple blocks. However, it introduced a regression.

Transactions that are not included in a block (and
create so-called temporary receipts) could still
modify the state. This breaks replay, since the
account cannot be brought to the correct state
without that transaction.

This patch fixes the issue by rolling back ExtSeqno
if the transaction is not included in a block.

This mainly affects deploy transactions. For
execution transactions, gas is paid if
`verifyExternal` succeeds, so state changes are valid
in that case.
@olegrok olegrok enabled auto-merge April 2, 2025 20:21
@olegrok olegrok added this pull request to the merge queue Apr 2, 2025
Merged via the queue into main with commit 3b9e6d7 Apr 2, 2025
15 checks passed
@olegrok olegrok deleted the fix-tmp-receipt-seqno branch April 2, 2025 20:37
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

Successfully merging this pull request may close these issues.

3 participants