nimbus-eth2/beacon_chain
Etan Kissling df0ff5f0fb
fix initialization of sync committee cache after loading non-epoch state (#6160)
When initializing from a state that's not aligned to an epoch boundary,
an earlier state is loaded that's epoch aligned, and subsequently topped
up with the missing blocks. `dag.headSyncCommittee` is initialized prior
to topping up the missing blocks, though. If the sync committee changes
while applying the blocks (e.g., a sync committee period boundary hits),
the cached information becomes unlinked from `dag.head`, leading to
valid blocks based on that chain being rejected. To fix this, move cache
initialization after the top up with blocks. This has been observed on
Goerli by initializing from 7919502 and attempting to top up 7920111.
The block gets rejected with an invalid state root on nodes that have
restarted after setting 7920111 as head, while it gets accepted by all
other nodes. Error message is `block: state root verification failed`.
The incorrect initialization behaviour was introduced in #4592, before
which the sync committee cache was initialized after applying blocks.
2024-04-03 23:03:06 +02:00
..
consensus_object_pools fix initialization of sync committee cache after loading non-epoch state (#6160) 2024-04-03 23:03:06 +02:00
el add Electra to ConsensusFork enum (#6169) 2024-04-03 16:43:43 +02:00
fork_choice make `Gwei` `distinct` (#6090) 2024-03-19 14:22:07 +01:00
gossip_processing add Electra to ConsensusFork enum (#6169) 2024-04-03 16:43:43 +02:00
libnimbus_lc automated consensus spec URL updating to v1.4.0 (#6074) 2024-03-14 07:26:36 +01:00
networking add Electra to ConsensusFork enum (#6169) 2024-04-03 16:43:43 +02:00
rpc add Electra to ConsensusFork enum (#6169) 2024-04-03 16:43:43 +02:00
spec add Electra to ConsensusFork enum (#6169) 2024-04-03 16:43:43 +02:00
sync avoid modifying blobless collection during iteration in edge case (#6168) 2024-04-03 23:02:24 +02:00
validator_client add Electra to ConsensusFork enum (#6169) 2024-04-03 16:43:43 +02:00
validators add Electra to ConsensusFork enum (#6169) 2024-04-03 16:43:43 +02:00
.editorconfig Add .editorconfig file and remove trailing newlines 2021-09-14 12:12:49 +03:00
.gitignore Rename binaries; Mimic the original repo layout in the distribution 2020-11-09 11:38:52 +02:00
beacon_chain_db.nim add Electra to ConsensusFork enum (#6169) 2024-04-03 16:43:43 +02:00
beacon_chain_db_immutable.nim make `Gwei` `distinct` (#6090) 2024-03-19 14:22:07 +01:00
beacon_chain_db_light_client.nim verify `genesis_time` more strictly (fixes #1667) (#5694) 2024-01-06 15:26:56 +01:00
beacon_clock.nim add metric for database checkpoint duration (#5897) 2024-02-19 11:00:11 +01:00
beacon_node.nim move split view catchup to research branch (#6133) 2024-03-25 19:09:31 +01:00
beacon_node_light_client.nim add Electra to ConsensusFork enum (#6169) 2024-04-03 16:43:43 +02:00
beacon_node_status.nim verify `genesis_time` more strictly (fixes #1667) (#5694) 2024-01-06 15:26:56 +01:00
bloomfilter.nim Bloom filter acceleration for deposit processing (#5982) 2024-03-07 23:38:24 +00:00
conf.nim Revert "Revert "Set default localBlockValueBoost to 10 (#6103)" (#6118)" (#6126) 2024-03-23 10:17:29 +01:00
conf_common.nim Dissect Windows specific code from beacon node. (#5612) 2024-01-13 12:53:53 +02:00
conf_light_client.nim verify `genesis_time` more strictly (fixes #1667) (#5694) 2024-01-06 15:26:56 +01:00
db_limits.nim verify `genesis_time` more strictly (fixes #1667) (#5694) 2024-01-06 15:26:56 +01:00
deposits.nim fix some styleCheck hints (#6016) 2024-03-03 02:04:45 +01:00
era_db.nim add Electra to ConsensusFork enum (#6169) 2024-04-03 16:43:43 +02:00
extras.nim verify `genesis_time` more strictly (fixes #1667) (#5694) 2024-01-06 15:26:56 +01:00
filepath.nim verify `genesis_time` more strictly (fixes #1667) (#5694) 2024-01-06 15:26:56 +01:00
future_combinators.nim BN+LC+SN: Fix cancellation deprecate warnings. (#5455) 2023-09-22 11:06:27 +00:00
light_client.nim raises for gossip (#5808) 2024-01-22 17:34:54 +01:00
light_client_db.nim verify `genesis_time` more strictly (fixes #1667) (#5694) 2024-01-06 15:26:56 +01:00
nim.cfg chronos: bump (#5684) 2024-01-05 10:08:38 +01:00
nimbus_beacon_node.nim add Electra to ConsensusFork enum (#6169) 2024-04-03 16:43:43 +02:00
nimbus_beacon_node.nim.cfg remove `news` leftovers (#4299) 2022-11-08 20:06:54 +00:00
nimbus_binary_common.nim Dissect Windows specific code from beacon node. (#5612) 2024-01-13 12:53:53 +02:00
nimbus_light_client.nim raises for gossip (#5808) 2024-01-22 17:34:54 +01:00
nimbus_light_client.nim.cfg remove `news` leftovers (#4299) 2022-11-08 20:06:54 +00:00
nimbus_signing_node.nim add Electra to ConsensusFork enum (#6169) 2024-04-03 16:43:43 +02:00
nimbus_signing_node.nim.cfg Revert writing backfill root to database (#3215) 2021-12-21 11:40:14 +01:00
nimbus_validator_client.nim Add Keymanager API graffiti endpoints. (#6054) 2024-03-14 03:44:00 +00:00
nimbus_validator_client.nim.cfg remove `news` leftovers (#4299) 2022-11-08 20:06:54 +00:00
sszdump.nim verify `genesis_time` more strictly (fixes #1667) (#5694) 2024-01-06 15:26:56 +01:00
statediff.nim Shared validator pubkey (#5883) 2024-02-21 20:06:19 +01:00
statusbar.nim verify `genesis_time` more strictly (fixes #1667) (#5694) 2024-01-06 15:26:56 +01:00
trusted_node_sync.nim automated consensus spec URL updating to v1.4.0 (#6074) 2024-03-14 07:26:36 +01:00
version.nim Version v24.3.0 2024-03-28 05:23:23 +00:00
wallets.nim add `{.push raises: [].}` to recently modified files (#5908) 2024-02-18 01:16:49 +00:00
winservice.nim add `{.push raises: [].}` to recently modified files (#5908) 2024-02-18 01:16:49 +00:00