Commit Graph
632 Commits
Author SHA1 Message Date
Paul Hauner 177df12149 Testnet stability (#451)
* Change reduced tree for adding weightless node

* Add more comments for reduced tree fork choice

* Small refactor on reduced tree for readability

* Move test_harness forking logic into itself

* Add new `AncestorIter` trait to store

* Add unfinished tests to fork choice

* Make `beacon_state.genesis_block_root` public

* Add failing lmd_ghost fork choice tests

* Extend fork_choice tests, create failing test

* Implement Debug for generic ReducedTree

* Add lazy_static to fork choice tests

* Add verify_integrity fn to reduced tree

* Fix bugs in reduced tree

* Ensure all reduced tree tests verify integrity

* Slightly alter reduce tree test params

* Add (failing) reduced tree test

* Fix bug in fork choice

Iter ancestors was not working well with skip slots

* Put maximum depth for common ancestor search

Ensures that we don't search back past the finalized root.

* Add basic finalization tests for reduced tree

* Change fork choice to use beacon_block_root

Previously it was using target_root, which was wrong

* Change reduced tree for adding weightless node

* Add more comments for reduced tree fork choice

* Small refactor on reduced tree for readability

* Move test_harness forking logic into itself

* Add new `AncestorIter` trait to store

* Add unfinished tests to fork choice

* Make `beacon_state.genesis_block_root` public

* Add failing lmd_ghost fork choice tests

* Extend fork_choice tests, create failing test

* Implement Debug for generic ReducedTree

* Add lazy_static to fork choice tests

* Add verify_integrity fn to reduced tree

* Fix bugs in reduced tree

* Ensure all reduced tree tests verify integrity

* Slightly alter reduce tree test params

* Add (failing) reduced tree test

* Fix bug in fork choice

Iter ancestors was not working well with skip slots

* Put maximum depth for common ancestor search

Ensures that we don't search back past the finalized root.

* Add basic finalization tests for reduced tree

* Add network dir CLI flag

* Simplify "NewSlot" log message

* Rename network-dir CLI flag

* Change fork choice to use beacon_block_root

Previously it was using target_root, which was wrong

* Update db dir size for metrics

* Change slog to use `FullFormat` logging

* Update some comments and log formatting

* Add prom gauge for best block root

* Only add known target blocks to fork choice

* Add finalized and justified root prom metrics

* Add CLI flag for setting log level

* Add logger to beacon chain

* Add debug-level CLI flag to validator

* Allow block processing if fork choice fails

* Create warn log when there's low libp2p peer count

* Minor change to logging

* Make ancestor iter return option

* Disable fork choice test when !debug_assertions

* Fix type, removed code fragment

* Tidy some borrow-checker evading

* Lower reduced tree random test iterations
2019-07-29 13:45:45 +10:00
Paul Hauner 7458022fcf Fork choice bug fixes (#449)
* Change reduced tree for adding weightless node

* Add more comments for reduced tree fork choice

* Small refactor on reduced tree for readability

* Move test_harness forking logic into itself

* Add new `AncestorIter` trait to store

* Add unfinished tests to fork choice

* Make `beacon_state.genesis_block_root` public

* Add failing lmd_ghost fork choice tests

* Extend fork_choice tests, create failing test

* Implement Debug for generic ReducedTree

* Add lazy_static to fork choice tests

* Add verify_integrity fn to reduced tree

* Fix bugs in reduced tree

* Ensure all reduced tree tests verify integrity

* Slightly alter reduce tree test params

* Add (failing) reduced tree test

* Fix bug in fork choice

Iter ancestors was not working well with skip slots

* Put maximum depth for common ancestor search

Ensures that we don't search back past the finalized root.

* Add basic finalization tests for reduced tree

* Change fork choice to use beacon_block_root

Previously it was using target_root, which was wrong

* Make ancestor iter return option

* Disable fork choice test when !debug_assertions

* Fix type, removed code fragment

* Tidy some borrow-checker evading

* Lower reduced tree random test iterations
2019-07-29 12:08:52 +10:00
Pawan Dhananjay db094022b9 Remove unused dependencies (#456) 2019-07-29 09:55:57 +10:00
John Adler fec7168512 Fix lots of typos. 2019-07-26 15:26:06 -04:00
Age Manning b5af73d056 Merge pull request #441 from sigp/rpc-update
RPC Rewrite
2019-07-24 20:08:16 +10:00
Age Manning ae96325c81 Allows Libp2p service to be read outside network thread 2019-07-24 17:45:31 +10:00
Age Manning 7d38cba252 Remove encoding error and redundant code 2019-07-24 15:17:44 +10:00
Age Manning 89ff7fb6b8 Complete initial testing of new RPC 2019-07-23 22:45:42 +10:00
Age Manning b350a78fec Update RPC. WIP 2019-07-22 14:13:18 +10:00
b-m-f e9671084af Saves ENR to disk on every address update
Signed-off-by: b-m-f <max@ehlers.berlin>
2019-07-18 16:48:04 +01:00
Age Manning b2a1b20e24 Merge latest master 2019-07-16 23:26:31 +10:00
Age Manning 414d41cb57 Shift changes into message handler and simple sync for rpc-rewrite 2019-07-16 22:32:37 +10:00
Kirk Baird 0513559252 Fix syncing bugs by recursively attempting to process parents in the … (#429)
* Fix syncing bugs by recursively attempting to process parents in the import queue, change BlockRootsIterator

* Swap from crossbeam channel to tokio mpsc

* Recursion fix

* Remove exess block processing

* Fix network lag, correct attestation topic

* Correct network poll logic

* Overhaul of SimpleSync and modify BlockRootsIterator to return start_slot

* Fix bug in tests relating to StateRootsIterator

* Remove old, commented-out heartbeat code.

* Tidy docs on import queue enum

* Change source logging msg in simple sync

* Rename function parameter in simple sync

* Use `BestBlockRootsIterator` in `reduced_tree`

* Update comments for `BestBlockRootsIterator`

* Fix duplicate dep in cargo.toml
2019-07-16 17:28:15 +10:00
Age Manning 704263e35f Clean up Protocol types 2019-07-15 18:41:05 +10:00
Age Manning 15c99b5f37 RPC Update. WIP 2019-07-15 17:07:23 +10:00
Age Manning 15cdd2afb9 Initial codec module 2019-07-13 18:57:18 +10:00
Age Manning d84780a339 Initial base codec 2019-07-13 18:35:33 +10:00
Age Manning 0292679f27 Improved error handling. Switching to codecs for easier encoding support 2019-07-11 15:11:31 +10:00
Kirk Baird 08069704c1 Add cli flag for logging to JSON file 2019-07-10 10:27:44 +10:00
Age Manning 4a84b2f7cc Improved RPC handling. WIP 2019-07-09 15:44:23 +10:00
Age Manning bb0e28b8e3 Improved rpc protocols handler. WIP 2019-07-06 23:43:44 +10:00
Age Manning f1127e4e0d Initial addition of an RPC Protocol Handler 2019-07-06 21:32:32 +10:00
Age Manning cda61c1577 Adds basic inbound/outbound upgrades for eth2 rpc 2019-07-05 18:59:53 +10:00
Age Manning 746935fa41 Initial sub-protocol implementation 2019-07-04 15:26:02 +10:00
Age Manning 1aeec12b78 Improve error handling of default directory 2019-07-04 14:14:27 +10:00
Age Manning dd410535cb Remove Phase 1 TODO 2019-07-04 14:14:27 +10:00
Age Manning bffe6c327f Removes left-over debugging statements 2019-07-04 14:14:27 +10:00
Age Manning 177daf2609 Typo fixes 2019-07-04 14:14:27 +10:00
Age Manning af28d5e20c Add persistent network identification 2019-07-04 14:14:27 +10:00
Age Manning 7dc5e2f959 Update to latest libp2p 2019-07-04 14:14:27 +10:00
Age Manning 0952a36a21 Initial integration of discovery v5 2019-07-04 14:14:27 +10:00
Age Manning 44c9058477 Integrate discv5 into lighthouse 2019-07-04 14:14:27 +10:00
Age Manning 6ee2b4df34 Complete merging of network addition branch 2019-07-04 14:14:26 +10:00
Age Manning c7e17c8641 Updates for latest master 2019-07-04 14:14:26 +10:00
Age Manning 43135484ca Update to lastest libp2p 2019-07-04 14:13:43 +10:00
Age Manning b33ce5dd10 Initial core grouping of libp2p behaviours 2019-07-04 14:13:43 +10:00
Age Manning cb7d5eba1c Discovery and gossip bug fixes 2019-07-04 14:12:06 +10:00
Age Manning f80c34b74f Builds on discovery. Adds identify to discovery 2019-07-04 14:11:17 +10:00
Age Manning d2f80e3b2a Adds env logger to output libp2p logs 2019-07-04 14:11:17 +10:00
Age Manning e36fa3152d Adds verbosity cli flag 2019-07-04 14:11:17 +10:00
Age Manning a38f4c4cd1 Adds Kademlia for peer discovery 2019-07-04 14:08:48 +10:00
Age Manning be6ebb5ffa Add custom inactivity timeout to gossipsub 2019-07-04 14:08:48 +10:00
Age Manning 2d710f19fc Update to latest libp2p 2019-07-04 14:08:48 +10:00
Age Manning 7920f8098f Complete moving network logc into beacon node 2019-07-04 14:07:26 +10:00
Age Manning 64abd0bc5b Removes network parameters from chain spec 2019-07-04 14:07:26 +10:00
Age Manning a31d6bcb22 RPC methods get pubsub topics from chain spec 2019-07-04 14:07:26 +10:00
Age Manning 4e24c8e651 Add topics to chain id 2019-07-04 14:07:26 +10:00
Age Manning c7bd02caaf Propogate valid attestations accross the network 2019-07-04 14:07:26 +10:00
Paul Hauner 027f0a539d Prepare ssz for publishing on crates.io 2019-07-03 16:06:20 +10:00
Paul Hauner d395feb027 Merge pull request #418 from sigp/fix-syncing
Improve syncing, fix bugs
2019-07-03 13:48:44 +10:00