Commit Graph

16890 Commits

Author SHA1 Message Date
Andrew Ashikhmin
e469afdff5
Rewrite bytecode of the token contract on Gnosis Chain (#5997)
See https://github.com/NethermindEth/nethermind/pull/3930
2022-11-08 13:03:06 +01:00
Andrew Ashikhmin
3280531644
Simplify Header.EncodeRLP (#5995)
Also cherry-pick https://github.com/ethereum/go-ethereum/pull/24666.

Co-authored-by: Felix Lange <fjl@twurst.com>
2022-11-08 11:07:27 +01:00
J1ang
7f9edd68aa
feat: add erigon_getLatestLogs as a new feature API. (#5875)
feat: add `erigon_getLatestLogs` as a new feature API.
1. `erigon_getLatestLogs` returns latest logs that match the filter with
`logCount` length. Implementation is similar to `erigon_getLogs` but it
uses `ReverseIterator` which makes it more efficient to fetch the latest
logs.
2022-11-08 08:35:00 +07:00
ledgerwatch
61559477a6
fixes for POS header downloader (#5991)
Co-authored-by: Alexey Sharp <alexeysharp@Alexeys-iMac.local>
2022-11-07 16:13:59 +00:00
hexoscott
636586c1b5
cache state check (#5844)
draft for now to get some early feedback on approach
2022-11-07 13:04:31 +00:00
Andrew Ashikhmin
82bb408e99
Only zero-gas transactions may be service ones (#5989)
Correction to PR #5873.

See [Nethermind's
code](https://github.com/NethermindEth/nethermind/blob/1.14.5/src/Nethermind/Nethermind.Consensus.AuRa/Transactions/TxCertifierFilter.cs#L57).
2022-11-07 13:10:07 +01:00
Alex Sharov
897887cf25
e3: integration support unwind loop (#5988) 2022-11-07 17:50:30 +07:00
Alex Sharov
29b23895f5
e3: tmpdir (#5985) 2022-11-07 12:17:07 +07:00
Alex Sharov
160407b36a
e3: recon metrics (#5984) 2022-11-07 12:02:46 +07:00
Alex Sharov
1e5a513657
e3: configurable recon workers (#5983) 2022-11-07 11:42:44 +07:00
Alex Sharov
92a1aab1f1
e3: accumulator nil on unwind (#5981) 2022-11-07 10:14:35 +07:00
Enrique Jose Avila Asapche
da455c8f48
got rid of effective engine (#5975)
It is not being used and it hasn't been used for a while #5847
2022-11-07 08:55:03 +07:00
Mike Neuder
5c5094ae6a
Adding BeaconBlocksByRoot req to consensus layer RPC (#5968)
https://github.com/ledgerwatch/erigon/issues/5884. 

Follows up on https://github.com/ledgerwatch/erigon/pull/5967 to
implement the by root request as well.
2022-11-06 23:41:21 +01:00
ledgerwatch
c656c6576f
Update to erigon-lib, adjust flag processing (#5973)
Co-authored-by: Alexey Sharp <alexeysharp@Alexeys-iMac.local>
2022-11-06 11:22:12 +00:00
Alex Sharov
766d0fd5dd
e3: more workers (#5972) 2022-11-06 12:40:41 +07:00
Alex Sharov
4954b0be1c
e3: more logs (#5971) 2022-11-06 11:54:29 +07:00
Alex Sharov
432abbe650
e3: more logs (#5970) 2022-11-06 11:53:05 +07:00
alex.sharov
949ec358fa save 2022-11-06 11:52:25 +07:00
Alex Sharov
e7c53ac9b7
e3: fix sequential commit place (#5969) 2022-11-06 10:27:52 +07:00
Mike Neuder
bc7128e671
Adding BeaconBlocksByRangeReq to consensus layer RPC (#5967)
part of https://github.com/ledgerwatch/erigon/issues/5884. we have
tested this manually, but need to include it in the CL client RPC layer.
2022-11-05 19:39:24 +01:00
Alex Sharov
bb1811a76e
e3: increase workers (#5966) 2022-11-05 16:31:10 +07:00
alex.sharov
1a6bc51f18 save 2022-11-05 16:29:13 +07:00
Alex Sharov
ba43ba56c3
e3: integration tests on ci (#5960) 2022-11-05 08:20:15 +00:00
ledgerwatch
004c9005cb
Prevent double closing of the channel (#5962)
Co-authored-by: Alexey Sharp <alexeysharp@Alexeys-iMac.local>
2022-11-05 08:19:48 +00:00
Mike Neuder
75db1aae0b
Add support for beacon_blocks_by_root on the req/resp domain (#5951)
Continuation of https://github.com/ledgerwatch/erigon/issues/5884

We make use of
bb09295072/beacon-chain/p2p/types/types.go
from Prysm to construct our request because the generated code injects
an offset that is not included in the spec.


https://github.com/ethereum/consensus-specs/blob/dev/specs/phase0/p2p-interface.md#beaconblocksbyroot
2022-11-04 17:34:36 +01:00
ledgerwatch
428c8888d6
Bump version (#5963) 2022-11-04 15:03:37 +00:00
ledgerwatch
5deaa9cec1
Fix panic in txpool (due to modificatin with read lock) and snapshot … (#5931)
…access (due to inconsistent indices)

Co-authored-by: Alexey Sharp <alexeysharp@Alexeys-iMac.local>
2022-11-04 12:43:59 +00:00
Alex Sharov
b1fc489024
e3: fix tests (#5961) 2022-11-04 16:14:58 +07:00
Max Revitt
345e668832
feat(pos download): send header request to multiple peers (#5948) 2022-11-04 09:07:46 +00:00
Alex Sharov
d4fc7c7ef0
e3: reduce write-lock of rws (#5959) 2022-11-04 15:09:29 +07:00
Alex Sharov
f3d8533879
e3: cheaper recon estimate (#5958) 2022-11-04 13:21:44 +07:00
Alex Sharov
bc2a873c9d
e3: disable txlookup stage (#5957) 2022-11-04 10:51:09 +07:00
Alex Sharov
655e32a199
e3: commit between blocks (#5955) 2022-11-04 09:50:35 +07:00
Alex Sharov
7516c33527
e3: idx size metric (#5954) 2022-11-04 09:31:30 +07:00
Alex Sharov
d4c406d3f0
e3: aggressive prune on seq exec (#5953) 2022-11-04 09:26:34 +07:00
Giulio rebuffo
63a8b21bb8
switch BLS library (#5950) 2022-11-03 23:55:59 +01:00
Mike Neuder
5518e69005
Finish BeaconBlocksByRange decoder (#5943)
issue: https://github.com/ledgerwatch/erigon/issues/5884

this PR finishes the decoding of BeaconBlocksByRange responses.
`stream_test.go` now checks two sample ranges, of length 2 and 3
respectively (avoiding doing super long ranges to keep the files
relatively smaller).

https://beaconcha.in/slot/5000007 is the source i used to verify the
decoded data.
2022-11-03 19:04:49 +01:00
Alex Sharov
d418069553
e3: fix retainList on unwind (#5947) 2022-11-03 15:12:53 +07:00
Willian Mitsuda
84ac1b919c
Use pooled bitmaps (#5946) 2022-11-03 12:50:16 +07:00
Willian Mitsuda
11f4978ed4
Upstream all Otterscan patches to devel (#5945)
Following our previous discussion on erigon's discord, this PR requests
to upstream all Otterscan modifications to erigon's repo.

That decision comes after getting feedback from lots of users at events
this year, and although it may introduce some friction for development,
it will make integrators life easier by having all our modifications
available out of box, e.g., dappnode users will get our RPCs since their
official packages are built from erigon repo.

I'm submitting the source-code as-is, please let me know if you think
there is a better code organization.

The current set of modifications comprises only new RPCs. There are some
proposals for extra-stages that would add new tables, but they are still
WIP and will be submitted separately in future after more testing.
2022-11-03 11:32:15 +07:00
Alex Sharov
32eaa82fba
e3: prune debug log (#5944) 2022-11-03 11:15:03 +07:00
Leonard Chinonso
805230ba63
Setup web socket endpoints to listen for new transactions after sending (#5940)
- Added listening methods for WebSocket subscriptions 
- Listened for new blocks using the newHeads method to determine when to
look for a transaction
- Added new util methods and tests for them
- Simplified communication to the user upon initiating the devnet tool
2022-11-03 09:45:36 +07:00
a
ad7be30679
jsonrpc HTTP Get handler & logs topic filter with map (#5922)
this pr has two things in it

1. changed filter logs to use a map for the topics. this will speed up
queries with many topics in them. I still don't have a use case for this
though. i put is as a method of Logs, since that made sense to me, happy
to move it back out though.

2. allows json-rpc over http get request. since firefox is a great json
viewer (can search through, collapse large results) i often use it to
debug. it is also useful for sharing data with those who are less
familiar with command line / programming.
example get request:

http://rpcdaemon/?method=eth_getLogs&params=[{"fromBlock":"0xf2316b","toBlock":"0xf2316b"}]

it is based on the old jsonrpc http specification
https://www.jsonrpc.org/historical/json-rpc-over-http.html#encoded-parameters
except we also accept not base64 encoded params. since every eth rpc
request has a [], it will immediately fail validation for base64 and
attempt to use the parameters as a they are. otherwise it will attempt
to parse the rest of the payload as base64 and use that.

Co-authored-by: a <a@a.a>
Co-authored-by: gfx <86091021+gfxlabs@users.noreply.github.com>
2022-11-03 09:09:04 +07:00
Giulio rebuffo
4840234ce9
Remove printf (#5941) 2022-11-02 23:48:34 +01:00
Mike Neuder
7590411ffc
BeaconBlocksByRange req/resp domain encoding work. (#5917)
I am trying to decode these messages from the req/resp domain. see
https://github.com/ethereum/consensus-specs/blob/dev/specs/phase0/p2p-interface.md#beaconblocksbyrange
for the spec.

this is part of https://github.com/ledgerwatch/erigon/issues/5884
2022-11-02 15:48:22 +01:00
Andrew Ashikhmin
7134d72738
Unify EVM Call flavours (#5939) 2022-11-02 15:04:37 +01:00
Giulio rebuffo
5c3245d4e0
Added Checkpoint sync for CL full client (#5934) 2022-11-02 13:12:44 +01:00
Alex Sharov
7208b0dc60
remove fmt (#5937) 2022-11-02 10:08:25 +07:00
Alex Sharov
96deee29bb
e3: build files sequentially, flush indices in-advance before commit (#5935) 2022-11-02 10:04:12 +07:00
hexoscott
c611c7489f
reduce estimated RAM from 80% to 50% (#5930) 2022-11-01 21:54:39 +07:00