Commit Graph

578 Commits

Author SHA1 Message Date
3bd1458df6 Rename cursor functions (#787) 2023-01-10 20:08:30 +01:00
e5e74cbc02 fix(execution): Increase cache scope, and apply block reward to cache (#793)
* bug: Apply block reward to evm cache

* Move cache to all blocks

* add tests

* Update crates/executor/src/executor.rs

Co-authored-by: Roman Krasiuk <rokrassyuk@gmail.com>

Co-authored-by: Roman Krasiuk <rokrassyuk@gmail.com>
2023-01-10 08:05:50 -08:00
515590faa8 refactor: move cli utils to new reth-cli-utils crate (#790)
* Move bin/src/util to reth-cli-utils

* Add reth-cli-utils to workspace members

* Fix imports in bin/src

* Create reth-cli-utils crate

* Add utils import
2023-01-10 01:13:41 +01:00
7c9c2fea50 feat(txpool): add gas limit check when inserting new transactions (#780)
* Add gas limit check when inserting transaction

Part of the code was copied from an issue comment:
https://github.com/paradigmxyz/reth/issues/76#issuecomment-1345281800

Co-authored-by: Eduardo <96149783+elprogramadorgt@users.noreply.github.com>

* Add test for gas limit check

Co-authored-by: Eduardo <96149783+elprogramadorgt@users.noreply.github.com>
2023-01-09 20:50:06 +01:00
2b3dfe93a7 feat(dns): add dns discovery service (#768)
* feat(dns): add dns discovery service

* feat: add entry types

* add codec impls

* resolve basics

* Update crates/net/dns/src/tree.rs

Co-authored-by: Bjerg <onbjerg@users.noreply.github.com>

Co-authored-by: Bjerg <onbjerg@users.noreply.github.com>
2023-01-09 18:09:09 +01:00
d522abb749 chore(deps): bump tokio 1.24 (#778) 2023-01-09 17:52:08 +01:00
40f30ec951 refactor: clean up SocketAddr value parser (#777)
- Rename the function
- Add more docs explaining the supported formats
- Remove support for empty string (just use an `Option`),
  and remove support for `:` (should be considered a typo)
- Reduce allocations of strings
2023-01-09 17:31:53 +01:00
2b5ee2b18d chore(primitives): use reth::Bytes and implements arbitrary (#776)
* clippy

* add arbitrary to reth Bytes

* clean

* add missing dependency
2023-01-09 12:09:18 +01:00
d98f9fe507 move HasRemoteAddr trait to reth-net-common (#775) 2023-01-09 10:43:46 +02:00
d296946bf1 add unknown fork spec (#774) 2023-01-09 09:07:47 +01:00
31cb66902e fix: Fix typos (#773) 2023-01-09 01:43:51 +01:00
a9ff1dea0d Document libclang prerequisite (#770) 2023-01-08 20:52:57 +02:00
05e9c79cc5 feat(net) Add TransactionsManager Metrics (#769)
* Added TransactionsManager Metrics

* Remove tracking of peers

* Add propagated_transactions
2023-01-08 18:38:07 +01:00
5085ac7cfc docs: fix typo "the" (#767)
Signed-off-by: Gyuho Lee <gyuho.lee@avalabs.org>

Signed-off-by: Gyuho Lee <gyuho.lee@avalabs.org>
2023-01-08 13:05:36 +01:00
e654d1ded6 fix: add missing match arms in mdbx Error::to_err_code (#732) 2023-01-08 12:49:02 +01:00
75f56e3088 docs: add release checklist (#766) 2023-01-08 13:42:31 +02:00
0b9ceb9efb feat: misc config files (#765) 2023-01-08 13:30:28 +02:00
da59ead58d fix(net): use mapped v4 when inserting records (#761) 2023-01-07 13:36:13 +01:00
acb0753812 chore(deps): remove unused ether-core (#760) 2023-01-07 12:12:48 +02:00
ca3372909a feat(cli): add more convenient SocketAddr argument parsing (#757) 2023-01-07 02:28:07 +02:00
2da828478c feat(net): Bandwidth monitoring (#707)
* WIP for draft PR

* added basic test

* using BandwidthMeterInner type & added TcpStream test

* formatted

* formatted w/ +nightly

* using  &  for  and

* formatted

* added default impl for BandwidthMeter

* using _bandwidth_meter bc unused

* removed redundant clone

* addressed nits, renamed file

* addressed nits, renamed file
2023-01-06 21:43:13 +01:00
1d2e0526a8 fix(disc): convert mapped ipv6 address (#754) 2023-01-06 18:26:40 +02:00
09bb2d9149 fix(disc): use remote addr for NodeRecord on ping (#753) 2023-01-06 17:48:55 +02:00
929cde46c4 unwind tracing (#750) 2023-01-06 16:39:54 +02:00
059c33dd03 Fix: typos (#749)
Fix: typos
2023-01-06 14:07:18 +01:00
f359992dc3 feat(disc): add another self entry check (#748) 2023-01-06 14:43:29 +02:00
1b5bc5e1f7 Rotate peers when fetching (#743) 2023-01-06 12:21:42 +01:00
258431aac8 primitives: add own Bloom type with arbitrary (#746)
* add own Bloom type with arbitrary

* use impl_hash_compact instead

* add doc to exported macro

* remove unused crate and code

* fix rlp encode length for Bloom

* use RlpDecodableWrapper and RlpEncodableWrapper instead
2023-01-06 13:10:19 +02:00
a94560fc5d fix(disc): use lookup target for distance (#742) 2023-01-06 09:41:09 +02:00
ade1ea4216 refactor: clean up StateFetcher::next_peer (#738)
* refactor: clean up `StateFetcher::next_peer`

The `&mut Peer` is unused, so we do not need to
return it.

* chore: idiomatic rust
2023-01-05 23:38:31 +01:00
ee8b0efed6 fix: apply correct reputation dmg on bad msg (#739) 2023-01-05 23:20:34 +01:00
6cf5427af3 style(discv4): use event buffer (#737) 2023-01-05 17:50:09 +01:00
f924880d5d perf(disc): only initiate another auto lookup when previous finished (#733) 2023-01-05 17:46:18 +02:00
8c96704ffe chore(deps): rm unused (#734) 2023-01-05 16:44:31 +01:00
99c7ba1920 ci: don't add PRs to project (#735) 2023-01-05 17:44:13 +02:00
56cc999c5e fix(disc): mark node as queried before ping (#731) 2023-01-05 17:38:57 +02:00
140791c901 build: add dockerfile (#688)
* add dockerfile

* add dockerfile

* using alpine as release image
2023-01-05 16:10:31 +01:00
babf73612f feat(net): add granular backoff durations (#729)
* feat(net): add granular backoff durations

* update backoff durations
2023-01-05 14:09:38 +02:00
fe5e3bd0c8 feat(node): allow config'ing trusted nodes from cli (#728) 2023-01-05 11:54:25 +02:00
e4bd5b4fe9 feat(net): add NetworkMetrics (#708)
* Added NetworkMetrics

* update docs

* add more metrics and make naming consistent

* add active inbound and outbound connection metrics
2023-01-05 10:17:57 +01:00
528c19f079 fix vec of type with buf (#727) 2023-01-04 23:48:10 -08:00
e069248e78 feat: Stage Tool Execution Stage (#723)
* feat(stage-tool): exec stage

* fix(stage-tool): commit for the full range

* feat: skip unwinding
2023-01-04 23:40:24 +02:00
5c88f25ef3 ci: add project workflow (#720)
* ci: add project workflow

* ci: rename secret
2023-01-04 22:22:17 +01:00
759ba39311 feat: Stage tool (#716)
* feat: `reth stage` command

* refactor(bin): move init utils to separate file

* feat(bin): scaffold stage command for one stage

* fix: correctly set from/to for stage range

* fix(stage-tool): add unwind before execute to re-exec

otherwise we're double executing stuff

* fix(stage-tool): use max commit threshold avail

* chore: rm unused vars

* fix(genesis-init): take a write tx only if needed

this avoids blocking by accident if we took a write tx expecting
that init_genesis would immediately return the hash

* feat(stage-tool): add bodies stage

Co-authored-by: Oliver Nordbjerg <hi@notbjerg.me>
2023-01-04 21:53:27 +02:00
973ea48e03 feat(cli): p2p header & body download (#698)
* p2p cli scaffolding

* refactor to fetch client

* body & header download

* p2p trusted opts

* add retries

* notify on retry

* clippy

* display err
2023-01-04 21:33:08 +02:00
28f67b371d feat(download): dynamically adjust body request (#718)
* feat(download): dynamically adjust body request

* add tests

* Update crates/net/downloaders/src/bodies/concurrent.rs

Co-authored-by: Bjerg <onbjerg@users.noreply.github.com>

* add comment

Co-authored-by: Bjerg <onbjerg@users.noreply.github.com>
2023-01-04 11:08:28 -08:00
ec88f1deef feat(sync): standardize stage control flow checks (#681)
* feat(sync): standardize stage control flow checks

* fix input parameter for test_eth_chain

* clean up & put behind macro

* Update crates/stages/src/stage.rs

Co-authored-by: Bjerg <onbjerg@users.noreply.github.com>

* address comments

Co-authored-by: Bjerg <onbjerg@users.noreply.github.com>
2023-01-04 11:03:36 -08:00
8c413ad0a9 trace(download): failed requests (#715) 2023-01-04 19:55:59 +01:00
9d6be78f4b chore: Box<dyn Error> -> StageError (#721)
* chore(stages): replace Box<dyn Error> with StageError

* chore: fix tests

* chore: fmt
2023-01-04 20:45:35 +02:00
19f4132eb4 chore: fix typo in book (#719)
* Rename matrics -> metrics

* Rephrase some cmd-line option descriptions
2023-01-04 20:30:34 +02:00