The Hive EEST glamsterdam-devnet shard sees this test fail intermittently in the merge queue. In the 24h window before #21361, 7 of 14 failing merge-group runs included at least one parametrization of this test, spread across 5 different parametrizations:
| Parametrization |
Times observed |
Error mode |
same_tx-extra_nonce |
3 |
B |
same_tx-extra_account_access |
3 |
A |
same_tx-extra_storage_read |
1 |
A |
out_of_bounds-extra_storage_read |
1 |
A |
system_tx-extra_account_access |
2 |
A |
Two distinct error modes are observed.
Mode A — wrong-cause classification (6 of 7 occurrences, 4 of 5 parametrizations)
Undefined exception message:
expected exception: "BlockException.INVALID_BLOCK_ACCESS_LIST"
returned exception: "previously known bad block"
(mapper: "ErigonExceptionMapper")
Same shape as the EIP-7954 issue tracked in #21363 — the test offers the bad block a second time and erigon classifies it as "previously known bad block" rather than re-deriving the original rejection reason. Plausibly the same root cause as #21363 surfacing on a different EIP's fixture.
Mode B — different validation path fires first (3 of 7 occurrences, only the same_tx-extra_nonce parametrization)
Client returned unexpected validation error:
got: "[BlockException.INVALID_STATE_ROOT] [5/5 Execution] invalid block: wrong trie root, block=1"
expected: "BlockException.INVALID_BLOCK_ACCESS_LIST"
Erigon rejects the block for a state-root mismatch rather than for the bad BAL. The fixture for same_tx-extra_nonce adds a spurious nonce entry to the BAL, and execution catches the resulting state divergence via the trie root before the BAL invariant check fires. Looks like a check-ordering / spec-interpretation discrepancy rather than a flake — same_tx-extra_nonce was Mode B in every run where it failed.
Test
tests/amsterdam/eip7928_block_level_access_lists/test_block_access_lists_invalid::test_bal_invalid_extraneous_entries[<parametrization>]
Why this is open
#21361 raised max-failures for the shard from 2 → 4 so the merge queue tolerates this on top of the 2 known-tolerated baseline failures and the deterministic EIP-7954 issue tracked in #21363. This issue tracks the actual fix; when both this and #21363 are resolved we ratchet max-failures back down.
Example failing jobs
Acceptance
The Hive EEST
glamsterdam-devnetshard sees this test fail intermittently in the merge queue. In the 24h window before #21361, 7 of 14 failing merge-group runs included at least one parametrization of this test, spread across 5 different parametrizations:same_tx-extra_noncesame_tx-extra_account_accesssame_tx-extra_storage_readout_of_bounds-extra_storage_readsystem_tx-extra_account_accessTwo distinct error modes are observed.
Mode A — wrong-cause classification (6 of 7 occurrences, 4 of 5 parametrizations)
Same shape as the EIP-7954 issue tracked in #21363 — the test offers the bad block a second time and erigon classifies it as "previously known bad block" rather than re-deriving the original rejection reason. Plausibly the same root cause as #21363 surfacing on a different EIP's fixture.
Mode B — different validation path fires first (3 of 7 occurrences, only the
same_tx-extra_nonceparametrization)Erigon rejects the block for a state-root mismatch rather than for the bad BAL. The fixture for
same_tx-extra_nonceadds a spurious nonce entry to the BAL, and execution catches the resulting state divergence via the trie root before the BAL invariant check fires. Looks like a check-ordering / spec-interpretation discrepancy rather than a flake —same_tx-extra_noncewas Mode B in every run where it failed.Test
Why this is open
#21361 raised
max-failuresfor the shard from 2 → 4 so the merge queue tolerates this on top of the 2 known-tolerated baseline failures and the deterministic EIP-7954 issue tracked in #21363. This issue tracks the actual fix; when both this and #21363 are resolved we ratchetmax-failuresback down.Example failing jobs
same_tx-extra_storage_read) + Mode B (same_tx-extra_nonce)same_tx-extra_account_access) + Mode B (same_tx-extra_nonce)out_of_bounds-extra_storage_read)same_tx-extra_nonce)Acceptance
same_tx-extra_noncefor INVALID_BLOCK_ACCESS_LIST before the state-root check fires)glamsterdam-devnetshard runsmax-failuresin.github/workflows/test-hive-eest.ymlis lowered once both flakes are fixed