Commit Graph

87 Commits

Author SHA1 Message Date
Agnish Ghosh e8b64d8dd2 subnet sampling part 2 2024-09-19 13:36:56 +05:30
Agnish Ghosh 9b79a9df5b gossip wait time 2024-09-18 14:51:48 +05:30
Agnish Ghosh 7d04142e4a simplify usage of get custody columns 2024-09-09 01:58:21 +05:30
Agnish Ghosh 3aa85100f9 move lookupCscFromPeer to Eth2Network, add reqColumns check in data column sidecar range request 2024-09-02 16:45:10 +05:30
Agnish Ghosh 66cb3ff54e only persist data columns after block validity 2024-08-28 18:03:21 +05:30
Agnish Ghosh e87871e2cb save work 2024-08-23 15:56:36 +05:30
Agnish Ghosh ee9889ca91 disable blobs for syncing because of fake deneb fork 2024-08-23 12:31:54 +05:30
Agnish Ghosh de7cbd8ca4 reduce gossip wait time for data columns 2024-08-23 11:46:06 +05:30
Agnish Ghosh bf60839e67 increase waiting time for data column root request 2024-08-23 02:59:45 +05:30
Agnish Ghosh b4ba4bd7d1 lookup csc fix 2024-08-22 20:09:43 +05:30
Agnish Ghosh 6127bd6ed2 make all csc uint64 2024-08-22 18:34:26 +05:30
Agnish Ghosh 3f56281351 fixed lookup csc from peer 2024-08-22 13:52:41 +05:30
Agnish Ghosh e163aa08c0 enable filtering of peers during data column root request 2024-08-21 18:23:05 +05:30
Agnish Ghosh 0034fea1d6 reduce outgoing root requests 2024-08-19 20:42:58 +05:30
Agnish Ghosh f71354b307 experimentally disable verifying data column sidecar before storing block 2024-08-19 13:52:47 +05:30
Agnish Ghosh 635eebbed1 fix response time 2024-08-19 13:17:33 +05:30
Agnish Ghosh 9ed7a193cd disable rman for blobs 2024-08-19 02:58:50 +05:30
Agnish Ghosh 7e7c14989e bump up data column gossip wait time 2024-08-18 22:23:33 +05:30
Agnish Ghosh f5354eb46d
bump parallel requests for data columns upto 64 for supernode 2024-08-18 12:17:25 +05:30
Agnish Ghosh 04fd58efbf
disable valid csc set experimentally 2024-08-18 04:11:39 +05:30
Agnish Ghosh cd5532c078 add filtering to peer pool and protocol, remove filtering from SyncManager level 2024-08-17 20:51:36 +05:30
Agnish Ghosh b32205de7c
upstream peerdas alpha3 related spec changes + fix upstream related issues (#6468)
* reworked some of the das core specs, pr'd to check whether whether the conflicting type issue is centric to my machine or not

* bumped nim-blscurve to 9c6e80c6109133c0af3025654f5a8820282cff05, same as unstable

* bumped nim-eth2-scenarios, nim-nat-traversal at par with unstable, added more pathches, made peerdas devnet branch backward compatible, peerdas passing new ssz tests as per alpha3, disabled electra fixture tests, as branch hasn't been rebased for a while

* refactor test fixture files

* rm: serializeDataColumn

* refactor: took data columns extracted from blobs during block proposal to the heap

* disable blob broadcast in pd devnet

* fix addBlock in message router

* fix: data column iterator

* added debug checkpoints to check CI

* refactor if else conditions

* add: updated das core specs to alpha 3, and unit tests pass
2024-08-05 19:27:39 +05:30
Agnish Ghosh c6513122b9 fix reviewed code 2024-07-23 12:38:16 +05:30
Agnish Ghosh b001499281 add: valid custody peer set to RequestManager 2024-07-23 12:36:42 +05:30
Agnish Ghosh 74ee8bb74d
refactor cells and proofs logic + fix edge cases 2024-07-06 13:24:51 +05:30
Agnish Ghosh 1729bdcf57
reduce parallel requests 2024-07-06 00:30:18 +05:30
Agnish Ghosh b927ddd65a
fix: get_data_column_sidecars 2024-07-04 13:55:51 +05:30
Agnish Ghosh 152d276d78
added reconstruction logic 2024-07-03 21:50:52 +05:30
Agnish Ghosh 0e710da37b
update timings 2024-07-02 21:27:50 +05:30
Agnish Ghosh 67fe8aca0b
disable blob activity (exp), improve gossip validation 2024-07-02 14:36:44 +05:30
Agnish Ghosh 26ac58716b
request man for data columns 2024-07-01 15:00:18 +05:30
Agnish Ghosh ca3bd3eeee
experimental: disable scoring for data columns 2024-06-28 18:04:46 +05:30
Agnish Ghosh 5bf1e021a7
initiate data column quarantine 2024-06-28 14:53:08 +05:30
Agnish Ghosh e2afc583cb
fix: reviews, pass1 2024-06-21 14:51:54 +05:30
Agnish Ghosh 51f189ef53
add: getMissingDataColumns, requestManagerDataColumnLoop 2024-06-19 03:46:03 +05:30
Agnish Ghosh 46d07b140d
add: data column support in sync_protocol, sync_manager, request_manager, fix: gossipValidation rules 2024-06-18 19:01:56 +05:30
tersec e51c5ec783
add Electra blob support to block/blob quarantines, block processor, and request manager (#6201) 2024-04-11 09:31:39 +00:00
Etan Kissling 96e27d9d35
avoid modifying blobless collection during iteration in edge case (#6168)
The fallback when blobless quarantine contains a block with all blobs
modifies collection while iterating, potentially asserting if reachable.
Using a second loop to process this situation resolves that.
2024-04-03 23:02:24 +02:00
Etan Kissling 2d9586a5a8
enqueue missing parent block if stored in local DB (#6122)
When checking for `MissingParent`, it may be that the parent block was
already discovered as part of a prior run. In that case, it can be
loaded from storage and processed without having to rediscover the
entire branch from the network. This is similar to #6112 but for blocks
that are discovered via gossip / sync mgr instead of via request mgr.
2024-03-22 14:35:46 +01:00
Etan Kissling 6f466894ab
answer `RequestManager` queries from disk if possible (#6109)
When restarting beacon node, orphaned blocks remain in the database but
on startup, only the canonical chain as selected by fork choice loads.
When a new block is discovered that builds on top of an orphaned block,
the orphaned block is re-downloaded using sync/request manager, despite
it already being present on disk. Such queries can be answered locally
to improve discovery speed of alternate forks.
2024-03-21 18:37:31 +01:00
tersec e865817d44
add some push raises, ElectraBeaconStateNoImmutableValidators, and ELECTRA_FORK_VERSION/EPOCH (#5949) 2024-02-24 05:08:22 +00:00
tersec 642774e596
unrevert rest of https://github.com/status-im/nimbus-eth2/pull/5765 (#5867)
* unrevert rest of https://github.com/status-im/nimbus-eth2/pull/5765

* rm stray e2store docs changes

* reduce diff

* fix indent

---------

Co-authored-by: Jacek Sieka <jacek@status.im>
2024-02-09 09:35:41 +01:00
tersec 225ef5e69a
partially revert https://github.com/status-im/nimbus-eth2/pull/5765 (#5833) 2024-01-28 23:45:52 +01:00
Jacek Sieka 3ff9b69bf1
simplify eth2_network error handling (#5765)
This PR gets rid of a bunch of redundant exception handling through
async raises guarantees.

More can be removed once libp2p gets properly annotated.
2024-01-19 21:05:52 +00:00
Jacek Sieka 62cbdeefc5
verify `genesis_time` more strictly (fixes #1667) (#5694)
Bogus values lead to crashes down the line when timers overflow
2024-01-06 15:26:56 +01:00
tersec 2fc43c9ba7
track block/blob matching/quarantines using both indices and commitments (#5621) 2023-12-01 18:58:46 +00:00
tersec 91b5204e52
stop checking beacon parent root for fcU caching (#5635) 2023-12-01 12:24:23 +00:00
Etan Kissling d8a7f0df81
update Deneb for blob sidecar inclusion proofs (#5565)
`BlobSidecar` is no longer signed, instead use Merkle proof to link
blobs with block.

- https://github.com/ethereum/consensus-specs/pull/3531

Associated beacon-API / builder-specs still TBD; minimal changes done
to compile in similar style to previous spec, but not standardized yet.

- https://github.com/ethereum/beacon-APIs/pull/369
- https://github.com/ethereum/builder-specs/pull/90
2023-11-06 07:48:43 +01:00
Etan Kissling a05278e263
wrap `kzgs`/`proofs`/`blobs` fields as `BlobsBundle` (#5562)
Less type conversion / copying by keeping the `BlobsBundle` together.
2023-11-04 13:49:58 +00:00
Eugene Kabanov caaad4777c
BN+LC+SN: Fix cancellation deprecate warnings. (#5455)
* Fix deprecation cancel() warnings in SN, BN, LC.

* Fix missing import.
2023-09-22 11:06:27 +00:00