prysm-pulse/beacon-chain/sync
Victor Farazdagi 3ec2a0f9e0
Refactoring of initial sync (#5096)
* implements blocks queue

* refactors updateCounter method

* fixes deadlock on stop w/o start

* refactors updateSchedulerState

* more tests on schduler

* parseFetchResponse tests

* wraps up tests for blocks queue

* eod commit

* fixes data race in round robin

* revamps fetcher

* fixes race conditions + livelocks + deadlocks

* less verbose output

* fixes data race, by isolating critical sections

* minor refactoring: resolves blocking calls

* implements init-sync queue

* udpate fetch/send buffers in blocks fetcher

* blockState enum-like type alias

* refactors common code into releaseTicket()

* better gc

* linter

* minor fix to round robin

* moves original round robin into its own package

* adds enableInitSyncQueue flag

* fixes issue with init-sync service selection

* Update beacon-chain/sync/initial-sync/round_robin.go

Co-Authored-By: terence tsao <terence@prysmaticlabs.com>

* initsyncv1 -> initsyncold

* adds span

Co-authored-by: prylabs-bulldozer[bot] <58059840+prylabs-bulldozer[bot]@users.noreply.github.com>
Co-authored-by: Raul Jordan <raul@prysmaticlabs.com>
Co-authored-by: terence tsao <terence@prysmaticlabs.com>
2020-03-17 12:27:18 -05:00
..
initial-sync Refactoring of initial sync (#5096) 2020-03-17 12:27:18 -05:00
initial-sync-old Refactoring of initial sync (#5096) 2020-03-17 12:27:18 -05:00
BUILD.bazel handle slashing from p2p (#5047) 2020-03-13 16:47:27 -05:00
deadlines.go Initial Sync: Round robin (#3538) 2019-09-25 12:00:04 -05:00
decode_pubsub.go Use libp2p gossipsub upstream validator framework (#4318) 2019-12-20 03:18:08 +00:00
doc.go Regular Sync - First Pass (#3201) 2019-08-16 13:13:04 -04:00
error_test.go Service as proper names (#4293) 2019-12-16 19:53:55 -06:00
error.go Rate limiter for rpc beacon blocks (#4549) 2020-01-15 17:19:06 -08:00
log.go Regular Sync - First Pass (#3201) 2019-08-16 13:13:04 -04:00
metrics.go Handle attestations with missing block (#4705) 2020-02-02 01:42:29 +00:00
pending_attestations_queue_test.go fuzz core/blocks package (#4907) 2020-03-03 19:02:14 +05:30
pending_attestations_queue.go Handing pending atts if they dont have the state (#4904) 2020-02-19 06:46:30 -08:00
pending_blocks_queue_test.go Update run time to v0.9.3 (#4154) 2020-01-07 18:47:39 +00:00
pending_blocks_queue.go add lock (#4739) 2020-02-04 16:31:31 +08:00
rpc_beacon_blocks_by_range_test.go Rate limiter for rpc beacon blocks (#4549) 2020-01-15 17:19:06 -08:00
rpc_beacon_blocks_by_range.go Rate limiter for rpc beacon blocks (#4549) 2020-01-15 17:19:06 -08:00
rpc_beacon_blocks_by_root_test.go Ensure New State Type Tests Pass in Prysm (#4646) 2020-01-31 12:57:01 -08:00
rpc_beacon_blocks_by_root.go Pending blocks queue: Better locking priority (#4709) 2020-02-01 22:47:51 +00:00
rpc_chunked_response.go Update run time to v0.9.3 (#4154) 2020-01-07 18:47:39 +00:00
rpc_goodbye_test.go Fix Goodbye RPC handler (#4831) 2020-02-11 09:08:01 -06:00
rpc_goodbye.go Fix Goodbye RPC handler (#4831) 2020-02-11 09:08:01 -06:00
rpc_status_test.go Ensure New State Type Tests Pass in Prysm (#4646) 2020-01-31 12:57:01 -08:00
rpc_status.go Ensure initial sync is initialised (#4587) 2020-01-20 10:38:27 -06:00
rpc_test.go Service as proper names (#4293) 2019-12-16 19:53:55 -06:00
rpc.go Resolve Miscellaneous Bugs in Beacon Node (#4743) 2020-02-04 11:21:02 -06:00
service.go handle slashing from p2p (#5047) 2020-03-13 16:47:27 -05:00
subscriber_beacon_aggregate_proof_test.go Update run time to v0.9.3 (#4154) 2020-01-07 18:47:39 +00:00
subscriber_beacon_aggregate_proof.go Update run time to v0.9.3 (#4154) 2020-01-07 18:47:39 +00:00
subscriber_beacon_blocks_test.go Stream Blocks Functionality for RPC (#4771) 2020-02-06 20:14:38 +00:00
subscriber_beacon_blocks.go Stream Blocks Functionality for RPC (#4771) 2020-02-06 20:14:38 +00:00
subscriber_committee_index_beacon_attestation_test.go Stream Indexed Attestations RPC Implementation (#4941) 2020-02-26 20:14:22 +00:00
subscriber_committee_index_beacon_attestation.go Stream Indexed Attestations RPC Implementation (#4941) 2020-02-26 20:14:22 +00:00
subscriber_handlers.go handle slashing from p2p (#5047) 2020-03-13 16:47:27 -05:00
subscriber_test.go handle slashing from p2p (#5047) 2020-03-13 16:47:27 -05:00
subscriber.go Fix Dynamic Topic Subscriptions (#4767) 2020-02-08 06:49:17 +08:00
validate_aggregate_proof_test.go fuzz core/blocks package (#4907) 2020-03-03 19:02:14 +05:30
validate_aggregate_proof.go fuzz core/blocks package (#4907) 2020-03-03 19:02:14 +05:30
validate_attester_slashing_test.go fuzz core/blocks package (#4907) 2020-03-03 19:02:14 +05:30
validate_attester_slashing.go Ensure New State Type Tests Pass in Prysm (#4646) 2020-01-31 12:57:01 -08:00
validate_beacon_blocks_test.go Update run time to v0.9.3 (#4154) 2020-01-07 18:47:39 +00:00
validate_beacon_blocks.go Update run time to v0.9.3 (#4154) 2020-01-07 18:47:39 +00:00
validate_committee_index_beacon_attestation_test.go Handing pending atts if they dont have the state (#4904) 2020-02-19 06:46:30 -08:00
validate_committee_index_beacon_attestation.go Handing pending atts if they dont have the state (#4904) 2020-02-19 06:46:30 -08:00
validate_proposer_slashing_test.go fuzz core/blocks package (#4907) 2020-03-03 19:02:14 +05:30
validate_proposer_slashing.go Ensure New State Type Tests Pass in Prysm (#4646) 2020-01-31 12:57:01 -08:00
validate_voluntary_exit_test.go fuzz core/blocks package (#4907) 2020-03-03 19:02:14 +05:30
validate_voluntary_exit.go Ensure New State Type Tests Pass in Prysm (#4646) 2020-01-31 12:57:01 -08:00