1033 Commits

Author SHA1 Message Date
Ștefan Talpalaru
5d1e20012a
import base58 from stew 2020-01-13 20:02:29 +01:00
Ștefan Talpalaru
7c4d636f83
undo try blocks; that's not the traceback's source 2020-01-13 19:02:38 +01:00
Ștefan Talpalaru
468e0815b3
not a CatchableError 2020-01-13 18:53:59 +01:00
Ștefan Talpalaru
003a4c90be
sendErrorResponse(): don't crash when unable to send to peer 2020-01-13 17:12:49 +01:00
Jacek Sieka
148527c716 slot fixes
* fix slot time navigation, add tests
* skip block proposal if head is more recent already - shouldn't happen
* use correct head when attesting to previous blocks
* log slot start/end processing
2019-12-23 17:56:56 +00:00
Dustin Brody
46de726e3d mark all compatible 0.9.3 functions and data structures as 0.9.4 2019-12-20 17:24:42 +00:00
Mamy Ratsimbazafy
106352aff3
Nbench - Flexible benchmarking of Nimbus internals (#641)
* nbench PoC

* Remove the yaml files from the example scenarios

* update README with current status

* Add an alternative implementation that uses defer

* Forgot to add the old proc body

* slots-processing

* allow benching state_transition failures

* Add Attestations processing (workaround confutils bug:
- https://github.com/status-im/nim-confutils/issues/10
- https://github.com/status-im/nim-confutils/issues/11
- https://github.com/status-im/nim-confutils/issues/12

* Add CLI command in the readme

* Filter report and add notes about CPU cycles

* Report averages

* Add debugecho style time/cycle print

* Report when we skip BLS and state root verification

* Update to 0.9.3

* Generalize scenario parsing

* Support all block processing scenarios

* parallel bench runner PoC

* gitBetter load issues reporting (the load issues were invalid signature and expected to fail)
2019-12-20 17:14:43 +01:00
Dustin Brody
417f96213d fix genesis interop by fixing deposit signature handling; add TRACE-level compilation to CI 2019-12-20 15:26:48 +00:00
Jacek Sieka
746659bdc6
bump stew, fix warnings (#655) 2019-12-20 14:25:33 +01:00
Jacek Sieka
b994da78a7 Move some attestation/block logic out of beacon node
* state data cache in block pool
* keep head state around
* more attestation logic in attestation pool
* first fork choice tests (!)
* fix fork choice (it's still likely broken / out of date)
2019-12-19 16:17:45 +00:00
Dustin Brody
ea4afd7454 mark 19 more 0.9.2-compatible entities as 0.9.3-compatible 2019-12-19 11:46:30 +00:00
Dustin Brody
350a6c071a mark a couple compatible dozen 0.9.2 functions/data structures as 0.9.3 2019-12-18 16:13:39 +00:00
Dustin Brody
0328cd49bf mark several more functions and data structures as 0.9.3 2019-12-18 10:00:17 +00:00
Dustin Brody
1610981be6 mark several more spec-referencing code/data parts as 0.9.3 2019-12-17 16:51:46 +00:00
Dustin Brody
27bf8908a9 mark a couple dozen functions and data structures as 0.9.3; fix TRACE-level compiling; stop downloading 0.9.2 test vectors; update cosmetic/display spec versions in test suite 2019-12-17 16:51:46 +00:00
Jacek Sieka
22c44d254c
fix decoding for 0.9.3 types 2019-12-17 11:25:36 +01:00
Zahary Karadjov
15f289a281
Temporary switch back to the LibP2P daemon as the default choice 2019-12-17 00:13:51 +02:00
Dustin Brody
c824416f56 initial 0.9.3 spec update 2019-12-17 00:06:03 +02:00
Jacek Sieka
8c104a0b94 inspector: add readme entry, decoding option 2019-12-16 16:08:30 +02:00
Jacek Sieka
963f23e5ea
remove obsolete insecure comment 2019-12-16 13:36:39 +01:00
Jacek Sieka
c66ca39cee update heads when adding resolved blocks 2019-12-16 12:18:08 +02:00
Jacek Sieka
4e85b50cb6 update head while syncing 2019-12-16 12:18:08 +02:00
Dustin Brody
741570113b properly construct attestation data for selected slot 2019-12-13 09:04:30 +00:00
Dustin Brody
fbdb078eb3 fix return type to properly construct AggregateAndProof; check ATTESTATION_PROPAGATION_SLOT_RANGE as required, maintaining consistent slot offset 2019-12-13 09:04:30 +00:00
Dustin Brody
5880fc22ad roadmap rest of naive attestation aggregation 2019-12-13 09:04:30 +00:00
Dustin Brody
c4daa726b5 fix AggregateAndProof definition 2019-12-13 09:04:30 +00:00
Dustin Brody
e2c68e075f outline general flow of naive attestation aggregation 2019-12-13 09:04:30 +00:00
Dustin Brody
294db6aaca initially implement specified attestation aggregation functions and data structures 2019-12-13 09:04:30 +00:00
tersec
cb1bc6cbf1 move attesting up from halfway to one third of the way through slots (#643)
* per honest validator and naïve/simple aggregator attestation specs, move attesting up from halfway to one third of the way through slots

* Update beacon_chain/beacon_node.nim

Co-Authored-By: Jacek Sieka <jacek@status.im>
2019-12-11 14:02:07 +01:00
Jacek Sieka
a3145f0f5c cleanups
* move stuff out of beaconnode
* fix use-after-free in query
2019-12-10 14:47:52 +00:00
Zahary Karadjov
10e6d4842f Local sim finalizes with native LibP2P 2019-12-10 15:02:16 +02:00
Zahary Karadjov
98656377a3 Eliminate the code duplication in the LibP2P back-ends 2019-12-10 15:02:16 +02:00
Zahary Karadjov
889031453f The beacon node can be compiled with the LibP2P native back-end
This hasn't been tested yet even in local sim.
2019-12-10 15:02:16 +02:00
Jacek Sieka
eea523a89e logging fixes
* don't log out-of-sync when there's no work to do
* small logging fixes
2019-12-10 10:18:30 +00:00
Zahary Karadjov
8ab0248209
Revert "tighten a few imports"
This reverts commit b24a9200d91b185bf44ec556f553e5cb8a856280.
2019-12-10 02:18:47 +02:00
Jacek Sieka
b24a9200d9 tighten a few imports 2019-12-09 12:58:28 +00:00
Dustin Brody
eef040954c remove unused hasSigningRoot(...); stop running time-consuming-but-stubbed-out tests; add timing for peer connection tests 2019-12-06 16:48:32 +00:00
Dustin Brody
362ef752dc dedeplicate some functions duplicated between libp2p_backend and libp2p_daemon_backend; remove some unused declared variables 2019-12-06 12:55:13 +00:00
Dustin Brody
5729ceb58e rename notice field 2019-12-06 12:12:59 +00:00
Dustin Brody
86f267bc5d switch debug to notice and add some contextual information 2019-12-06 12:12:59 +00:00
Dustin Brody
c762c0232d render get_beacon_proposer_index(...) return value an option and remove overly aggressive assertion formerly causing crashes when missing validators (#617)
* render get_beacon_proposer_index(...) return value an option and remove overly aggressive assertion formerly causing crashes when missing validators

* follow addBlock(...) after refactoring

* [skip ci] fix typo
2019-12-04 11:49:59 +01:00
kdeme
3b3a2b10f1 First attempt to have some fuzz tests exported for the fuzzing framework 2019-12-03 14:33:47 +02:00
Zahary Karadjov
a1198e5532
web3 fixes suggested by @yglukhov [skip ci] 2019-12-03 14:10:47 +02:00
Jacek Sieka
afc0686b36 save ssz dummps during processing (#471) 2019-12-03 11:32:27 +00:00
Jacek Sieka
c457904a61 avoid recursion when getting lmd ancestors 2019-12-03 13:24:16 +02:00
Zahary Karadjov
a641331448
Reduce the sync-related tracing in the testnets [skip ci] 2019-12-03 13:07:43 +02:00
Zahary Karadjov
ee2448b221 Simple validator onboarding
On your very first connection to each testnet, you'll be asked to
become a validator. Please consult our private repo for a Goerli
Eth1 private key that you can use for deposits.

Other changes:

* Added a simple wrapper ./connect-to-testnet script calling the
  nims file in the correct environment. No extension was used to
  make the command the same on Unix and Windows.

* Bumped a number of modules with fixes from this week

* `make testnet0` and `make testnet1` will no longer delete your
  existing database. This is considered a more appropriate behavior
  for testing forward sync.
2019-12-03 02:23:17 +02:00
Ștefan Talpalaru
7682a010a9 remove getCurrentExceptionMsg() 2019-12-02 22:06:42 +02:00
Dustin Brody
e88e559caf render visible gradual validator emptying on catchup 2019-12-02 18:24:30 +02:00
Jacek Sieka
90212eed2a avoid producing blocks/attestations when out of sync
this is a temporary measure until we figure something better out - as it
stands, we'll advance with empty slots and crash because all validators
are out.
2019-12-02 15:26:42 +00:00