Commit Graph

65 Commits

Author SHA1 Message Date
Roman Krasiuk
3cf6015149 perf(proofs): root calculation using hash builder (#2517) 2023-05-02 17:41:22 +02:00
Roman Krasiuk
423265648d proofs: prefer encode_list over encode_iter (#2518) 2023-05-02 07:23:45 -07:00
Roman Krasiuk
576f33b151 fix: consensus validation method typo (#2432) 2023-04-27 16:04:50 +02:00
rakita
837555e296 chore(consensus): Clear up the naming and intention behind checks (#2415)
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2023-04-26 18:04:36 +02:00
Roman Krasiuk
b4d69e68dc perf: remove redundant ommers sealing (#2386) 2023-04-25 05:53:16 -07:00
rakita
370c39525a feat(stages): Simplify TD stage (#2344) 2023-04-21 20:56:13 +02:00
Bjerg
68d8506d8e feat: block level indexing (#2275)
Co-authored-by: rakita <dragan0rakita@gmail.com>
Co-authored-by: Georgios Konstantopoulos <me@gakonst.com>
2023-04-20 15:03:48 -04:00
rakita
087d0a6317 feat: CanonStateNotification for commit and reorg (#2156) 2023-04-10 13:11:15 +02:00
rakita
d239b82ccb feat(BlockchainTree): Broadcast new canonical block headers (#2027) 2023-03-30 12:58:02 +02:00
Matthias Seitz
47b9738ede chore: fix some typos (#2025) 2023-03-29 14:49:50 +02:00
Matthias Seitz
7263c9a644 chore: use downloader and client traits where possible (#1992) 2023-03-27 19:45:17 +02:00
Matthias Seitz
a45ef688b4 feat: add test chain event subscriptions (#1928) 2023-03-23 09:33:06 -07:00
Dan Cline
b28c40223e chore: move block body to primitives (#1874) 2023-03-20 21:14:23 -07:00
Roman Krasiuk
25ac1370fd refactor(sync): header sync mode (#1831) 2023-03-19 06:59:37 -07:00
Francisco Krause Arnim
a688fdb38d feat(rpc): eth_sign* (#1665)
Co-authored-by: lambdaclass-user <github@lambdaclass.com>
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
Co-authored-by: Tomás <tomas.gruner@lambdaclass.com>
2023-03-14 18:03:38 -07:00
Matthias Seitz
ad5f9aa78c refactor: extract transaction consensus errors to standalone type (#1697) 2023-03-10 04:43:04 -08:00
joshieDo
2884eae075 perf: bench merkle stage (#1497) 2023-02-28 23:20:00 -07:00
Georgios Konstantopoulos
fad9c04b07 feat: Account Hashing Stage Benchmark (#1301)
Co-authored-by: joshieDo <ranriver@protonmail.com>
2023-02-17 15:28:46 +08:00
Roman Krasiuk
9b81b4f20d chore: Header::seal and Header::seal_slow distinction (#1409) 2023-02-16 08:55:58 -08:00
Roman Krasiuk
e97753c768 feat: withdrawals (#1322)
Co-authored-by: rakita <rakita@users.noreply.github.com>
2023-02-16 04:44:05 -08:00
Bjerg
d216081b58 feat: add Finish stage (#1279) 2023-02-14 17:10:50 +01:00
Roman Krasiuk
eba63b8f77 fix: chainspec ttd check (#1285)
Co-authored-by: Georgios Konstantopoulos <me@gakonst.com>
2023-02-11 12:49:01 -08:00
Bjerg
02a6aec3fb feat: support time-based forking (#1128) 2023-02-06 12:55:41 -08:00
Tomás
fd7dc11960 feat(sync): MerkleStage (#994)
Co-authored-by: lambdaclass-user <github@lambdaclass.com>
Co-authored-by: Francisco Krause Arnim <fkrausear@gmail.com>
2023-02-03 18:50:33 -08:00
Roman Krasiuk
a3800c52c0 feat(consensus): beacon consensus builder (#1119) 2023-02-01 06:28:58 -08:00
Matthias Seitz
28cb91c6b4 perf(net): use qualified types for headers client future (#1115) 2023-02-01 13:12:48 +01:00
Aurélien
e2ac4d3f3c feat: convert HeadersClient BodiesClient futures into associated types (#1063) 2023-01-30 01:25:15 -08:00
Bjerg
87306f2892 ci: ensure docs build (#1073)
Co-authored-by: xqft <estefano.bargas@fing.edu.uy>
Co-authored-by: lambdaclass-user <github@lambdaclass.com>
2023-01-27 18:49:22 +01:00
Matthias Seitz
6c37b0aa1b feat: add task header downloader (#958) 2023-01-25 12:32:28 +01:00
Bjerg
7905100f6d refactor: use dyn Consensus (#1007) 2023-01-24 14:33:48 +01:00
Matthias Seitz
a24048a237 refactor: deprecate downloader trait (#959) 2023-01-24 13:38:11 +01:00
Ikechukwu Ahiara Marvellous
ac9f26fcab Extend HeadersClient, BodiesClient with a priority argument (#935)
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2023-01-20 14:20:46 +01:00
Matthias Seitz
b4080a7de5 feat: concurrent headers downloader (#891) 2023-01-20 12:06:06 +01:00
rakita
899d011bfd feat: add AccountHashingStage and StorageHashingStage (#756)
Co-authored-by: Georgios Konstantopoulos <me@gakonst.com>
2023-01-18 10:22:39 -08:00
Kim, JinSan
161fe0d957 test: signature & transaction w/ EIP155 (#914) 2023-01-18 09:48:52 -08:00
Matthias Seitz
79fad91ca0 feat(net): integrate num active peers in downloader (#900)
Co-authored-by: Roman Krasiuk <rokrassyuk@gmail.com>
2023-01-17 01:31:52 -08:00
LambdaClass
a1c8a34711 test: add test for header stage two step download (#843) 2023-01-13 14:40:42 -08:00
Kim, JinSan
c4bafe809b fix: clippy warnings, or_fun_call and unnecessary_lazy_evaluations (#846) 2023-01-13 11:10:02 +01:00
Dimitris Apostolou
31cb66902e fix: Fix typos (#773) 2023-01-09 01:43:51 +01:00
joshieDo
6407b5087e chore: use B160, B256 and U256 coming from revm and ruint (#676)
* use B256, B160 and U256 from revm

* fix U256 from_str

* use U256::ZERO

* use temporary commit for revm and interpreter

* more U256::ZERO

* more changes for revm/ruint types

* clippy

* change revm and revm-interpreter repo

* remove H160 wrap

* minor cleanup

* remove unused

* fix MIN_PROTOCOL_BASE_FEE
2023-01-04 11:11:48 +02:00
Roman Krasiuk
a7d8059357 test(engine): consensus engine tests (#648) 2022-12-30 13:17:27 +02:00
Genysys
0b1b5368e6 chore: Rename BlockLocked to SealedBlock (#573)
* chore: Rename BlockLocked to SealedBlock

* chore: fmt

Co-authored-by: Genysys <112424909+samtvlabs@users.noreply.github.com>
Co-authored-by: Georgios Konstantopoulos <me@gakonst.com>
2022-12-22 14:45:36 +02:00
Bjerg
82cd84eca7 test: fix emits_bodies_in_order test (#534)
* feat(test-utils): make body tx count configurable

* test: fix `emits_bodies_in_order` test
2022-12-20 01:29:04 +01:00
Roman Krasiuk
c1a863d067 test(download): header downloader request attempts & remove duplicates (#517)
* test(download): header downloader request attempts

* fix comment
2022-12-19 16:18:38 +01:00
Roman Krasiuk
1dca4b58df test(sync): sender recovery single tx (#516) 2022-12-19 16:08:07 +01:00
Roman Krasiuk
daaf039fbf feat(sync): state transition indexes (#449)
* introduce state transitions and revert/modify block bodies table

* init refactor

* revamp transaction iteration based on bodies and add state transition mappings

* change expected return on empty db execution

* interim commit

* fix body downloader & stage

* refactor(bodies/dl): make fetch bodies fn more clear

* chore: disable unused vars/fns temporarily until exec is back

* chore: fmt

* test: fix tests

* use transitions in execution stage

* clarify empty unwind test

* remove last_tx_index fn

* rename fn and var names

* fix full block response comment

* rename fetcher`s get_block_body to get_block_bodies

* Update crates/stages/src/db.rs

Co-authored-by: Georgios Konstantopoulos <me@gakonst.com>

* fmt

* fix index overlap check error

* uncomment eth chain command

* fix doc comment

* typos

* cleanup

* any_last_tx_index -> last_tx_index

Co-authored-by: Georgios Konstantopoulos <me@gakonst.com>
Co-authored-by: Oliver Nordbjerg <hi@notbjerg.me>
2022-12-16 08:37:49 -08:00
Roman Krasiuk
2b0f5316f9 fix(sync): headers stage progress (#467)
* fix(sync): headers stage progress

* add tests to head/tip and split suite

* fix(sync): headers stage progress

* add tests to head/tip and split suite

* fix local tip and address comments

* rename error
2022-12-15 10:41:32 -08:00
Roman Krasiuk
22dc50e5f6 feat(sync): download peer penalization (#427)
* feat(sync): download peer penalization

* peer penalization

* add tracing on penalization

* add trace on request

* rename consensus back

* clippy

* fix tests

* nit: download result

* nit: fix comment

* rename penalize() to report_bad_message() and move DownloadError

Co-authored-by: Georgios Konstantopoulos <me@gakonst.com>
2022-12-15 10:42:18 +02:00
mempirate
c23c65fc3b feat(net): draft for sending status updates through NetworkHandle (#436)
* feat(net): draft for sending status updates through `NetworkHandle`

* feat(net): draft for sending status updates through `NetworkHandle`

* fix(net): remove unused import

* feat(net): implement getters for status update sender half

* docs(net): document methods

* chore: cargo fmt

* feat(net): move status updating logic to NetworkManager and NetworkHandle

* feat(net): move status updating logic to NetworkManager and NetworkHandle

* fix(net): fix headers stage testing

* fix: derive default

* fix: remove StatusUpdate struct

Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2022-12-15 08:59:28 +01:00
Roman Krasiuk
5057e8ec0a feat(p2p): refactor downloaders and add peer id to the result (#410)
* feat(p2p): refactor downloaders and add peer id to the result

* rm unused import

* fix tests

* clean up deps

* Update crates/interfaces/src/p2p/error.rs

Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>

* add split fn

Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2022-12-13 17:14:45 +01:00