Commit Graph

16966 Commits

Author SHA1 Message Date
Andrew Ashikhmin
32629bdce4
Upgrade urfave/cli to v2 (#6047)
See also
https://github.com/urfave/cli/blob/main/docs/migrate-v1-to-v2.md
2022-11-14 17:33:57 +01:00
Andrew Ashikhmin
8152d5c7e4
txpool: sync.Mutex instead of RWMutex (#6045)
Pick up https://github.com/ledgerwatch/erigon-lib/pull/735
2022-11-14 12:24:14 +01:00
Giulio rebuffo
ae01026ca9
Customizable networking for Erigon Lightclient (#6032) 2022-11-11 23:22:47 +01:00
Andrew Ashikhmin
5b3f2b8c5f
Update interfaces (#6031)
Pick up
813d816908
& https://github.com/ledgerwatch/interfaces/pull/131.
2022-11-11 17:16:39 +01:00
ledgerwatch
5fc2ec4b52
Enable snapshot creation for Gnosis Chain (#6030)
Co-authored-by: Alexey Sharp <alexeysharp@Alexeys-iMac.local>
2022-11-11 15:38:59 +00:00
Max Revitt
74308f2500
fix(test): eliminate race conditions (#6019) 2022-11-11 15:22:09 +00:00
Andrew Ashikhmin
09c5e4699b
Fix panic("durations cannot be empty") (#6029) 2022-11-11 15:24:58 +01:00
Andrew Ashikhmin
04e3a18463
Block difficulty can be really big on Gnosis Chain (#6028)
For example, see https://gnosisscan.io/block/24938312.

This fixes the following errors:
```
t=2022-11-11T12:39:01+0000 lvl=dbug msg="Handling incoming message" stream=RecvMessage err="newBlock66: too large block difficulty: bitlen 128"
t=2022-11-11T12:39:01+0000 lvl=dbug msg="Handling incoming message" stream=RecvMessage err="newBlock66: too large block difficulty: bitlen 128"
t=2022-11-11T12:39:01+0000 lvl=dbug msg="Handling incoming message" stream=RecvMessage err="newBlock66: too large block difficulty: bitlen 128"
```
2022-11-11 15:24:46 +01:00
Alex Sharov
c21a266236
Allow bigger jumps in 1 RwTx - for consistency (#6026) 2022-11-11 16:30:28 +07:00
Alex Sharov
90952c4110
e3: wal ram configure (#6023) 2022-11-11 11:28:22 +07:00
ledgerwatch
de26ccf6f6
Try non-parallel tests (#6021)
Co-authored-by: Alexey Sharp <alexeysharp@Alexeys-iMac.local>
2022-11-10 23:47:35 +00:00
ledgerwatch
14906fec17
Bump version (#6020) 2022-11-10 22:18:01 +00:00
Giulio rebuffo
f8916e9226
Made Lightclient default (#5813)
lightclient cl is default, for external cl, run `--externalcl`
2022-11-10 17:06:04 +00:00
hexoscott
ea1edf4a11
trace json error fix (#6014)
write trace transaction errors to json and continue
2022-11-10 15:37:16 +00:00
hexoscott
475fa08fdf
eth_gasPrice performance tweaks (#6016)
Code news up an oracle for every call so existing cache checks always
came back as 0. Moved cache up a layer and pass in via the new
`gasprice.Cache` interface. Looked at putting the oracle instance onto
the ethApi itself to re-use it that way, but the backend transaction
made it a little hard work as we can't re-use that. This seemed cleaner
but happy to take feedback.

Locally takes me from ±2.5k rps to ±43k rps so quite a difference there.
(k6 with 1000 virtual users)
2022-11-10 15:36:04 +00:00
Mike Neuder
bf34bed004
Adding GetStatus to the req/resp domain (#6010)
Part of https://github.com/ledgerwatch/erigon/issues/5884 defined in the
spec
https://github.com/ethereum/consensus-specs/blob/dev/specs/phase0/p2p-interface.md#status.

We need this functionality to continue
https://github.com/ledgerwatch/erigon/issues/5965 because we need to
determine how many blocks to request from the checkpoint block.
2022-11-10 14:14:26 +01:00
Andrew Ashikhmin
424f38a9b6
AuRa: iterate over durations in order (#6013)
Iteration order over go maps is random.
2022-11-10 13:47:57 +01:00
ledgerwatch
7f12b809ec
Improvements to the downloader (#6012)
Co-authored-by: Alexey Sharp <alexeysharp@Alexeys-iMac.local>
2022-11-10 10:33:10 +00:00
ledgerwatch
00365ba6e8
Move anchor state logging into DEBUG (now that we redirect it to a file) (#6007) 2022-11-09 12:00:30 +00:00
Alex Sharov
6b0f7fa913
e3: recon reduce ram (#6004) 2022-11-09 14:32:44 +07:00
Alex Sharov
57db64b692
e3: fix coinbase 2 (#6006) 2022-11-09 13:53:07 +07:00
Alex Sharov
906953b246
e3: fix coinbase (#6005) 2022-11-09 13:48:23 +07:00
J1ang
537ae16655
refactor: add erigon_getLatestLogs & fix typo (#5994)
refactor: add `erigon_getLatestLogs` & fix typo
2022-11-09 11:21:04 +07:00
hexoscott
12ed9d22cf
eth_estimateGas performance tweaks (#6001)
Will gain more perf improvements when the change for kvcache goes in
from erigon-lib.

Hopefully can be validated with hive? My main concern is the re-use of
the state reader, I couldn't find any manipulation of it so it looks
safe to re-use.
2022-11-08 21:48:11 +00:00
ledgerwatch
a4136faad4
Improve state cache performance (#6002)
Co-authored-by: Alexey Sharp <alexeysharp@Alexeys-iMac.local>
2022-11-08 21:47:20 +00:00
ledgerwatch
5b44f7d63b
Rework the peer finding (#5999)
Co-authored-by: Alexey Sharp <alexeysharp@Alexeys-iMac.local>
2022-11-08 14:16:17 +00:00
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