Commit Graph

3113 Commits

Author SHA1 Message Date
Ștefan Talpalaru e58a355a1c
CI release: ARM and ARM64 builds (#2213) 2021-01-07 10:19:29 +01:00
Zahary Karadjov 338428cbd7 Add Eth1 deposits simulation to block_sim 2021-01-04 13:22:00 +02:00
Jacek Sieka 52ca12c79f
bump nat, avoid one more finalizer (#2209) 2020-12-31 15:58:31 +01:00
Nikola Ristić 3a59b76a01
Update broken repo link (#2208) 2020-12-30 09:55:20 +01:00
Giovanni Petrantoni ed24f60f70
remove async from sub/unsub (#2197)
* remove await/async from sub/unsub

* fix unsubscribe wrong key (missed _snappy)

* use the right libp2p commit hash

* remove unused async

* fix inspector

* fix subnet calculation in RPC and insert broadcast attestations into node's pool

* unify codepaths to ensure only mostly-checked-to-be-valid attestations enter the pool, even from node's own broadcasts

* update attestation pool tests for new validateAttestation param

Co-authored-by: Dustin Brody <tersec@users.noreply.github.com>
2020-12-24 09:48:52 +01:00
tersec 97c4f7c5c0
fix subnet calculation in RPC and insert broadcast attestations into node's pool (#2207)
* fix subnet calculation in RPC and insert broadcast attestations into node's pool

* unify codepaths to ensure only mostly-checked-to-be-valid attestations enter the pool, even from node's own broadcasts

* update attestation pool tests for new validateAttestation param
2020-12-23 13:59:04 +01:00
tersec afbaa36ef7
make subnet cycling more robust; use one stability subnet/validator; explicitly represent gossip enabled/disabled (#2201)
* make subnet cycling more robust; use one stability subnet/validator; explicitly represent gossip enabled/disabled

* fix asymmetry in _snappy being used for subscriptions but not unsubscriptions

* remove redundant comment

* minimal RPC and VC support for infoming BN of subnets

* create and verify slot signatures in RPC interface and VC

* loosen old slot check

* because Slot + uint64 works but uint64 + Slot doesn't

* document assumptions for head state use; don't clear stability subnets; guard against VC not having checked an epoch ahead, fixing a crash; clarify unsigned comparison

* revert unsub fix
2020-12-22 10:05:36 +01:00
Sacha Saint-Leger be74df70e0
Update systemd page: change metrics default and add note (#2204)
* change default and add note on metrics to systemd page

* add link to metrics guide from systemd page
2020-12-21 17:59:20 +01:00
Sacha Saint-Leger a1ba188de3
Update systemd page and delete old files (#2200)
* remove old pages

* update systemd file and move it to how-to's
2020-12-21 10:04:46 +01:00
Jacek Sieka 6c8f630170
Revert "have each validator randomly pick a stability subnet, per spec (#2194)"
This reverts commit 048a67d525.

Fails with:
```
Error: unhandled exception: /data/beacon-node-builds/devel-large/repo/beacon_chain/nimbus_beacon_node.nim(442, 12) `node.attestationSubnets.stabilitySubnets.len == 0`  [AssertionError]
```
2020-12-18 23:04:31 +01:00
Jacek Sieka 0f8a3a5ae8
checkpoint database at end of each slot (#2195)
* checkpoint database at end of each slot

To avoid spending time on synchronizing with the file system while doing
processing, the manual checkpointing mode turns off fsync during
processing and instead checkpoints the database when the slot has ended.

From an sqlite perspecitve, in WAL mode this guaranees database
consistency but may lead to data loss which is fine - anything missing
from the beacon chain database can be recovered on the next startup.

* log sync status and delay in slot start message

* bump
2020-12-18 22:01:24 +01:00
Jacek Sieka 452042b17b
msgid formatting, libp2p bump (#2198)
* msgid formatting, libp2p bump

* fix libp2p commit
2020-12-18 18:45:27 +00:00
Jacek Sieka 3d87bc0033 Branch guide
* update developer resources to include new branch structure
(https://github.com/status-im/nimbus-eth2/issues/2163)
* remove some information duplicated between readme and developer
handbook
2020-12-18 19:32:27 +02:00
tersec 048a67d525
have each validator randomly pick a stability subnet, per spec (#2194) 2020-12-18 15:46:07 +01:00
Kim De Mey 8cc7effe52
Fix ENR attnets update to only hold persistent subnets (#2193)
* Fix ENR attnets update to only hold persistent subnets

* Use only stability subnet in metadata and enr
2020-12-18 09:50:29 +01:00
Zahary Karadjov 7d95e86c50
Merge branch 'stable' into devel 2020-12-16 22:22:21 +02:00
Zahary Karadjov f06e6d46a2
v1.0.4 2020-12-16 22:20:45 +02:00
Ștefan Talpalaru c7505a50da
bump vendor/nimbus-benchmarking 2020-12-16 21:02:06 +02:00
Jacek Sieka 5d8cdb88c6
update validator metrics on startup 2020-12-16 20:44:48 +02:00
Jacek Sieka 974f0b7d5e
bump secp 2020-12-16 20:44:04 +02:00
Jacek Sieka e946db56ea
disable frame pointer omission optimization (#2189)
* disable frame pointer omission optimization

it breaks the GC

* oops
2020-12-16 20:41:53 +02:00
Jacek Sieka de779c7812 update validator metrics on startup 2020-12-16 19:42:19 +02:00
Jacek Sieka ca2a09d424 bump secp 2020-12-16 19:41:12 +02:00
Jacek Sieka fea2b712f0
cache not needed to validate exits (#2188) 2020-12-16 15:36:02 +01:00
Ștefan Talpalaru ff23ca27c2
bump vendor/nimbus-benchmarking 2020-12-16 14:11:11 +01:00
Jacek Sieka b367db1a2a
disable frame pointer omission optimization (#2189)
* disable frame pointer omission optimization

it breaks the GC

* oops
2020-12-16 14:07:48 +01:00
Jacek Sieka 7d5edb4353
use new stew helpers for assignment (#2172)
* bump libp2p (reduces libp2p gossip memory usage to ~1/3)
* use "generic" assign version
2020-12-16 09:37:22 +01:00
Jacek Sieka b0086c5d99
bump libp2p (#2187)
* bump libp2p

* also stew
2020-12-16 09:36:51 +01:00
Zahary Karadjov c56677867b
Remove some accidentally left debugging changes 2020-12-16 01:09:19 +02:00
Zahary Karadjov 8ebf9c30b0
More complete reset of the web3 provider on each failure; Fix #2184 2020-12-16 00:21:11 +02:00
Jacek Sieka d59fc8ff5b
readd os import, sometimes used 2020-12-15 16:34:56 +01:00
tersec 91786686d5
don't repeat already-included attestations (#2061)
Don't repeat already-included attestations

Also removes the superfluous (and badly scaling) attestation-cache-eviction
2020-12-15 17:16:10 +02:00
Jacek Sieka 4e191a06ac use stew/leb128
* 3 varint parsers -> 1
* 1/3 memory usage / allocations when writing stuff to libp2p
2020-12-15 17:06:15 +02:00
Jacek Sieka 9211b1ca03 import fixes 2020-12-15 16:19:46 +02:00
Sacha Saint-Leger 9df437541d
Book updates (#2183)
* remove eth2stats from systemd guide

* Make clear that eth2stats is not recommended for mainnet

* edits
2020-12-15 12:31:23 +01:00
tersec 8d1443f03c
detect already-aggregate-voted condition before attestation pool; add is_aggregator tests (#2170)
* detect already-aggregate-voted condition before attestation pool; add is_aggregator tests

* replace pair of attestation-per-epoch tracking lists with single list and remove Option use

* fix attestation condition

* use safer type conversions; add more is_aggregator tests
2020-12-14 20:58:32 +00:00
Ștefan Talpalaru e52c88386b
build warnings (#2179) 2020-12-14 16:45:31 +00:00
Ștefan Talpalaru 9daf6be73c
graceful exit on SIGTERM (#2178)
Much easier than convincing all users to change the default signal in
their service definition file to SIGINT.
2020-12-14 16:45:14 +00:00
Sacha Saint-Leger 14c5d6db1e
Update Pi guide: systemd advice (#2181) 2020-12-14 12:51:16 +01:00
Ștefan Talpalaru 07ea1cd177
Revert "disableMarchNative: also disable ADX in BLST (#2175)"
This reverts commit 6cfe7de6b0.

It's useless, since "-madx" will not be enabled without "-march=native".
2020-12-11 16:51:09 +01:00
Kim De Mey f49fcb9df3
Bump nim-eth for discovery v5 ip limits (#2085) 2020-12-11 14:35:08 +01:00
Giovanni Petrantoni c91091197f
Lower gossipFactor since we default to 160 peers (#2169)
And it might potentially send a bit more IHAVE messages then wanted.
2020-12-11 12:15:34 +01:00
Ștefan Talpalaru e59437c5e2
new Make target: "benchmarks" (#2174)
It runs some benchmarks, collects the output and generates HTML charts.
2020-12-11 12:12:43 +01:00
Ștefan Talpalaru 6cfe7de6b0
disableMarchNative: also disable ADX in BLST (#2175) 2020-12-11 08:16:17 +01:00
Jacek Sieka bc977799f6 Log warning when running without metrics support 2020-12-10 17:22:29 +02:00
Ștefan Talpalaru 92750d5313 reduce peak memory usage during build 2020-12-10 17:17:12 +02:00
yslcrypto e361221d72 remove mention of genesis 2020-12-10 13:09:38 +01:00
Mamy Ratsimbazafy 2b3b219c77
Bump blst: perf + 32-bit platforms support + pure C fallback + drop Miracl fallback tests (#2152)
* bump BLST

* Cached subgroup checks

* Bump BLST - BLST now has pure C fallback for all arch (Miracl unneeded)

* Drop testing Miracl fallback in Nimbus

* Charting uncharted waters: 32-bit should imply -mno-adx
2020-12-10 10:18:07 +01:00
Zahary Karadjov 91741326cc
v1.0.3 2020-12-10 02:56:02 +02:00
Zahary Karadjov 57fdd87a24 Log Eth1 request failures more precisely 2020-12-10 02:54:58 +02:00