Jacek Sieka
70df0ad057
don't mark quarantined blocks as missing
2020-08-04 22:37:06 +03:00
Jacek Sieka
48aca60e81
add target block to quarantine when missing ( #1438 )
2020-08-04 19:00:55 +00:00
tersec
a979568d74
switch mapIt/find to in-place linear search ( #1436 )
2020-08-04 17:15:27 +00:00
Jacek Sieka
cf8cd8321b
Revert "Lazy crypto [alt design #1369 ] ( #1371 )" ( #1435 )
...
This reverts commit 023f7f4518
.
2020-08-04 17:15:13 +00:00
Jacek Sieka
c6674de5d2
use epoch ref to update fork choice
...
this dramatically speeds up startup in long periods of non-finality
2020-08-04 20:00:31 +03:00
Jacek Sieka
196bc6ea3b
remove redundant attestation check ( #1433 )
...
only viable blocks (descendants of the finalized checkpoint) are in the
dag already
2020-08-04 15:52:46 +00:00
cheatfate
b70462acf8
Fix request manager is not penalizing peers which are failed to deliver blocks.
2020-08-04 18:14:51 +03:00
Zahary Karadjov
4deed117a9
Hotfix: Allow 'make madella' to work with the latest Medalla metadata
2020-08-04 17:55:37 +03:00
Ștefan Talpalaru
b4e434849b
makeBannerAndConfig(): disable ProveInit warning
2020-08-04 15:00:55 +02:00
Ștefan Talpalaru
a1d3532f49
move stateSnapshotContents from BeaconNodeConf ( #1425 )
2020-08-04 12:35:20 +02:00
Zahary Karadjov
d45ee66c21
Remove a confusing warning on Keystore import
2020-08-04 12:17:06 +03:00
Viktor Kirilov
d7d1e072ba
fix for the BN/VC communication since the #1371 PR ( #1416 )
2020-08-04 08:15:26 +00:00
tersec
df80071bcf
update attestation and block validation to v0.12.2; clean up getAncestorAt()/get_ancestor() ( #1417 )
...
* update attestation validation to v0.12.2; clean up getAncestorAt()/get_ancestor()
* update beacon block validation to v0.12.2
2020-08-03 19:47:42 +00:00
Jacek Sieka
d22a2cec2b
Start libp2p before writing ENR file ( #1418 )
...
this makes sure that all libp2p transports are open for business when
the file hits the ground
2020-08-03 19:35:27 +02:00
Dmitriy Ryajov
52d9d269d7
bump libp2p (delayed send, without hooks) ( #1413 )
...
* use `switch.isConnected`
* libp2p
* add timeout to publish
* use isConnected
* adjust timeouts
* latest libp2p master
* do not drop peers
2020-08-03 16:43:22 +00:00
tersec
5b13d8f3fa
synchronize test summaries with make test (and do a few small cleanups) ( #1415 )
2020-08-03 12:07:25 +00:00
tersec
1c6936a35c
add attestations received before referred-to blocks to unresolved list ( #1410 )
2020-08-03 10:49:15 +00:00
tersec
f2dd57db1e
increase allowed missing validators in verifyFinalization mode ( #1414 )
2020-08-03 05:31:35 +00:00
Zahary Karadjov
8c2a9a4950
Switch back to the old undepleted Infura key; Bake in the Medalla genesis state
2020-08-03 03:59:45 +03:00
Zahary Karadjov
d052623381
Fix a trivial issue with 'make medalla' and add more logging
2020-08-03 00:19:25 +03:00
Zahary Karadjov
be2c2e27f3
Cosmetic fixes
2020-08-02 23:00:43 +03:00
Zahary Karadjov
c882b7c2f3
Add Scrypt support in the Keystores
2020-08-02 23:00:43 +03:00
Zahary Karadjov
1aba7aed6d
Updated Keystore test vectors
2020-08-02 23:00:43 +03:00
Zahary Karadjov
c293254ded
Add 'deposits import' command; Switch to NJS when loading the keystores and improve the data validation
2020-08-02 23:00:43 +03:00
Zahary Karadjov
d58668157a
Use consistent naming for the synonyms 'deposits-dir' and 'validators-dir'
2020-08-02 23:00:43 +03:00
Zahary Karadjov
2a94f6eca6
medalla-deposit target capable of executing mass deposits
2020-08-02 23:00:43 +03:00
tersec
85febf072e
assert on missing active validators' attestations when verifying finalization ( #1387 )
...
* assert on missing > 10 supposed-to-be-active validators' attestations in finalization verification mode
* clean up state_sim imports
2020-08-01 18:24:25 +00:00
Viktor Kirilov
0a96e5f564
renamed CandidateChains to ChainDagRef and made the Quarantine type a ref type so there is a single instance in the beacon node ( #1407 )
2020-07-31 14:49:06 +00:00
tersec
e0a6f58abe
convert 10 v0.12.1 spec refs to v0.12.2 ( #1406 )
2020-07-31 09:59:14 +00:00
Eugene Kabanov
65fa1c1124
Ignoring json serialization errors. ( #1403 )
...
Add ability to use logs from jenkins.
2020-07-31 09:43:11 +00:00
Viktor Kirilov
c032366547
removed the BlockPool type and all of the proxy functions around it ( #1401 )
...
* removed the BlockPool type and all of the proxy functions around it - passing the chain DAG and the quarantine explicitly where appropriately - they don't need to be bundled in a type
* fixed the build after the rebase
2020-07-30 21:18:17 +02:00
Jacek Sieka
c5fecd472f
more fork-choice fixes ( #1388 )
...
* more fork-choice fixes
* use target block/epoch to validate attestations
* make addLocalValidators sync
* add current and previous epoch to cache before doing state transition
* update head state using clearance state as a shortcut, when possible
* use blockslot for fork choice balances
* send attestations using epochref cache
* fix invalid finalized parent being used
also simplify epoch block traversal
* single error handling style in fork choice
* import fix, remove unused async
2020-07-30 17:48:25 +02:00
tersec
55607f107f
add metric to track finalization delay ( #1399 )
2020-07-30 16:27:34 +02:00
tersec
254a510c0d
mark .borrow. procs as noSideEffect ( #1402 )
2020-07-30 14:47:59 +02:00
tersec
99f2d8e06c
update 14 v0.12.1 spec refs to v0.12.2 ( #1400 )
2020-07-30 09:47:57 +00:00
Mamy Ratsimbazafy
023f7f4518
Lazy crypto [alt design #1369 ] ( #1371 )
...
* Lazy loading of crypto objects
* Try to fix incorrect field access by hiding fields but no luck. SSZ/Chronicles/macro bug?
* Fix incorrect blsValue access. was "aggregate" not "chronicles"
* Fix tests that rely on the internal BLSValue representation
2020-07-29 18:13:05 +00:00
Eugene Kabanov
371ea7d99b
Implement log tracing of attestation send and receive messages (attempt 2) ( #1394 )
...
* Implement log tracing of attestation send and receive messages.
* Cosmetic changes.
* Fix for latest changes in nim-json-serialization
2020-07-29 17:20:20 +02:00
tersec
d97cc35d30
switch 14 v0.12.1 spec refs to v0.12.2 spec refs ( #1395 )
2020-07-29 12:47:03 +00:00
tersec
1220cc05ad
Revert "Implement log tracing of attestation send and receive messages. ( #1361 )" ( #1389 )
...
This reverts commit ac12af16bf
.
2020-07-28 17:45:31 +00:00
tersec
a07dab300c
verifyFinalization checks for justification being consistent with later finalization ( #1386 )
2020-07-28 17:35:32 +00:00
Viktor Kirilov
0ffcbd10e5
All logs should be stored in appropriate node's folder - related to #1349
2020-07-28 20:14:17 +03:00
Eugene Kabanov
ac12af16bf
Implement log tracing of attestation send and receive messages. ( #1361 )
...
* Implement log tracing of attestation send and receive messages.
* Cosmetic changes.
2020-07-28 17:06:03 +00:00
Zahary Karadjov
b801dd65b9
Makefile targets for Medalla
2020-07-28 19:27:45 +03:00
Zahary Karadjov
0c60e452e7
Allow the deposit contract deployment block to be specified as a number (needed for Medalla)
2020-07-28 18:13:01 +03:00
tersec
b45de824a4
convert 22 v0.12.1 spec refs to v0.12.2 and remove 1 unnecessary spec ref ( #1384 )
2020-07-28 14:55:46 +00:00
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
Zahary Karadjov
6ccfff7d58
Allow network metadata without bootstrap nodes
2020-07-28 13:46:22 +03:00
Zahary Karadjov
f4c19e303a
Non-interactive generation of keystores in the local sim
2020-07-28 07:36:25 +03:00
Zahary Karadjov
40ea9e9886
Integrate the Wallet support with the Deposits creation; Produce Launchpad-compatible deposits
2020-07-28 07:36:25 +03:00
Zahary Karadjov
fcd412f7a1
Finish the 'create wallet' command; Addresses #1319
2020-07-28 07:36:25 +03:00