nimbus-eth2/beacon_chain
Jacek Sieka 157ddd2ac4
Fork choice fixes 5 (#1381)
* limit attestations kept in attestation pool

With fork choice updated, the attestation pool only needs to keep track
of attestations that will eventually end up in blocks - we can thus
limit the horizon of attestations that we keep more aggressively.

To get here, we expose getEpochRef which gets metadata about a
particular epochref, and make sure to populate it when a block is added
- this ensures that state rewinds during block addition are minimized.

In addition, we'll use the target root/epoch when validating
attestations - this helps minimize the number of different states that
we need to rewind to, in general.

* remove CandidateChains.justifiedState

unused

* remove BlockPools.Head object

* avoid quadratic quarantine loop

* fix
2020-07-28 13:54:32 +00:00
..
block_pools Fork choice fixes 5 (#1381) 2020-07-28 13:54:32 +00:00
fork_choice Fork choice fixes 5 (#1381) 2020-07-28 13:54:32 +00:00
spec Fork choice fixes 5 (#1381) 2020-07-28 13:54:32 +00:00
ssz cache block hash (#1329) 2020-07-16 15:16:51 +02:00
tracing replace links to Apache and MIT licenses with HTTPS versions (#592) 2019-11-25 16:30:02 +01:00
.gitignore interop updates 2019-09-02 22:14:18 +03:00
attestation_aggregation.nim Fork choice fixes 5 (#1381) 2020-07-28 13:54:32 +00:00
attestation_pool.nim Fork choice fixes 5 (#1381) 2020-07-28 13:54:32 +00:00
beacon_chain_db.nim cache block hash (#1329) 2020-07-16 15:16:51 +02:00
beacon_node.nim Fork choice fixes 5 (#1381) 2020-07-28 13:54:32 +00:00
beacon_node.nim.cfg Use only secp256k1 as identity in libp2p. (#1343) 2020-07-21 18:07:14 +02:00
beacon_node_common.nim Fork choice fixes 5 (#1381) 2020-07-28 13:54:32 +00:00
beacon_node_types.nim Fork choice fixes 5 (#1381) 2020-07-28 13:54:32 +00:00
block_pool.nim Fork choice fixes 5 (#1381) 2020-07-28 13:54:32 +00:00
conf.nim Integrate the Wallet support with the Deposits creation; Produce Launchpad-compatible deposits 2020-07-28 07:36:25 +03:00
deposit_contract.nim Non-interactive generation of keystores in the local sim 2020-07-28 07:36:25 +03:00
deposit_contract_code.txt Integrate the Wallet support with the Deposits creation; Produce Launchpad-compatible deposits 2020-07-28 07:36:25 +03:00
eth2_discovery.nim Remove unsused import 2020-07-10 16:30:45 +03:00
eth2_json_rpc_serialization.nim Add an option for graffiti customization 2020-07-12 21:01:31 +03:00
eth2_network.nim Initial commit. 2020-07-27 17:48:26 +03:00
extras.nim remove skipMerkleValidation and skipBlockParentRootValidation (#1197) 2020-06-18 07:56:47 +02:00
faststreams_backend.nim Enable Snappy by default (using LibP2P steams for now) 2020-05-13 12:18:42 +03:00
inspector.nim Bump nim-eth and adjust code for it (#1293) 2020-07-10 11:17:15 +02:00
inspector.nim.cfg Use only secp256k1 as identity in libp2p. (#1343) 2020-07-21 18:07:14 +02:00
interop.nim Working test suite with run-time presets 2020-07-08 02:02:14 +03:00
keystore_management.nim Integrate the Wallet support with the Deposits creation; Produce Launchpad-compatible deposits 2020-07-28 07:36:25 +03:00
libp2p_json_serialization.nim bump libp2p (#1267) 2020-07-01 13:41:40 +02:00
libp2p_streams_backend.nim Initial commit. 2020-07-27 17:48:26 +03:00
logtrace.nim Integrate the Wallet support with the Deposits creation; Produce Launchpad-compatible deposits 2020-07-28 07:36:25 +03:00
mainchain_monitor.nim spec cleanups (#1379) 2020-07-27 16:04:44 +00:00
merkle_minimal.nim v0.12.2 beacon chain protocol update (#1378) 2020-07-27 12:59:57 +02:00
network_metadata.nim Allow network metadata without bootstrap nodes 2020-07-28 13:46:22 +03:00
nimbus_binary_common.nim cache block hash (#1329) 2020-07-16 15:16:51 +02:00
nimquery.nim Integrate Discovery V5 and support ENR bootstrap records 2020-01-21 01:26:57 +02:00
peer_pool.nim Fix PeerPool issue with peers overflow maxPeers setting. (#1285) 2020-07-07 11:49:08 +02:00
request_manager.nim cache block hash (#1329) 2020-07-16 15:16:51 +02:00
ssz.nim Implement more of the KeyStore spec and integrate it in the beacon node 2020-06-11 17:40:08 +03:00
sszdump.nim cache block hash (#1329) 2020-07-16 15:16:51 +02:00
statusbar.nim Cosmetic improvement for the statusbar 2020-06-11 17:40:08 +03:00
sync_manager.nim Initial commit. 2020-07-27 17:48:26 +03:00
sync_protocol.nim Fork choice fixes 5 (#1381) 2020-07-28 13:54:32 +00:00
sync_protocol.nim.generated.nim launch_local_testnet.sh: make node 0 the bootstrap node 2020-07-16 19:04:57 +02:00
time.nim update 24 v0.11.x spec refs to v0.12.1 2020-06-17 12:11:03 +00:00
validator_api.nim Fork choice fixes 5 (#1381) 2020-07-28 13:54:32 +00:00
validator_client.nim cache block hash (#1329) 2020-07-16 15:16:51 +02:00
validator_client.nim.cfg Use only secp256k1 as identity in libp2p. (#1343) 2020-07-21 18:07:14 +02:00
validator_duties.nim Fork choice fixes 5 (#1381) 2020-07-28 13:54:32 +00:00
validator_pool.nim update 29 spec refs to v0.12.1 2020-07-08 20:49:25 +00:00
version.nim Add an option for graffiti customization 2020-07-12 21:01:31 +03:00