Commit Graph

20168 Commits

Author SHA1 Message Date
battlmonstr
231e468e19 Add 'erigon-lib/' from commit '93d9c9d9fe4bd8a49f7a98a6bce0f0da7094c7d3'
git-subtree-dir: erigon-lib
git-subtree-mainline: 3c8cbda809
git-subtree-split: 93d9c9d9fe
2023-09-20 14:50:25 +02:00
Anshal Shukla
3c8cbda809
fix finalized api for polygon chain (#8247)
Co-authored-by: Ubuntu <ubuntu@ip-10-0-0-234.eu-west-1.compute.internal>
2023-09-20 13:32:22 +01:00
Somnath Banerjee
f51d9b61a0
Txpool 4844 upgrades Part 2 (#8213)
Some peer-review changes from the last related PR. 
Addition of a flag for BlobSlots - for max allowed blobs per account in
txpool.
Use BlobFee from the block to validate txs in the pool.

See also https://github.com/ledgerwatch/erigon-lib/pull/1125
2023-09-20 17:29:30 +05:30
Somnath Banerjee
93d9c9d9fe
Txpool 4844 upgrades Part 2 (#1125)
Fix some peer-review comments from the last related PR, and add some
enhancements

#### Change summary
- Addition of a flag for BlobSlots - for max allowed blobs per account
in txpool
- Use BlobFee from the block to validate txs in the pool
- Let go of unwound blob txn's onNewBlock, if not present in the cache;
we don't request them again from the network

Related: https://github.com/ledgerwatch/erigon/pull/8213
https://github.com/ledgerwatch/interfaces/pull/195
2023-09-20 11:23:10 +00:00
Andrew Ashikhmin
f6a6ab9b12
Support release/x.xx branches in CI (#8240)
It's safer to have branches for individual release series like
`release/2.50` for 2.50.x releases instead of overwriting `stable`. geth
does that already.
2023-09-20 08:42:25 +02:00
lmittmann
6985036070
turbo/adapter/ethapi: Add CallArgs.Input attribute (#8242)
This PR adds the ability to pass `input` instead of `data` in
`eth_call`.

Go-ethereum has support for the `input`-attribute (instead of the
`data`) in `eth_call` for some time. The recent go-ethereum release
v1.13.0 changed the ethclient to do a `eth_call` with the `input`
attribute rather than "data". This makes the latest go-ethereum
ethclient incompatible with erigon.

Co-authored-by: lmittmann <lmittmann@users.noreply.github.com>
2023-09-20 09:31:00 +07:00
Michelangelo Riccobene
2146ff016c
Add util to test native recsplit index creation (#8238)
In order to assess Silkworm recsplit index creation capability we need
some utils to trigger native (go) index creation
2023-09-20 08:44:51 +07:00
Andrew Ashikhmin
d8d16c3c7c
Fix Errorf (#8241)
Small fix after PR #8239
2023-09-19 17:15:23 +02:00
Mark Holt
f3902ef589
Add flag test to prevent milestone services from starting (#8239) 2023-09-19 14:10:09 +01:00
Andrew Ashikhmin
94ec54e7a5
Implement EIP-7516: BLOBBASEFEE opcode (#8231)
[EIP-7516](https://eips.ethereum.org/EIPS/eip-7516) is part of
[devnet-9](https://notes.ethereum.org/@ethpandaops/dencun-devnet-9)
2023-09-19 10:45:19 +02:00
racytech
88ddd8caf0
holesky genesis update (#8225) 2023-09-19 04:36:13 +06:00
Mark Holt
3b45f53f3d
Milestone stage processing (#8187)
This is the second part of the bor milestone release it contains the
following changes:

* Initialize services
* This is a change from the initial pull request I have moved all of the
initialization to the bor engine. To facilitate this I have just passed
in the heimdall client interface, rather than the whole engine
* Stage processing 
* This is also a change from the original PR - the code is contained in
the bor heimdall stage rather than in headers - the effect should be the
same, but this needs testing

---------

Co-authored-by: Mark Holt <mark@disributed.vision>
Co-authored-by: Anshal Shukla <shukla.anshal85@gmail.com>
2023-09-18 18:05:33 +01:00
David
cad36b792c
Add eventlog index when using callTracer withLog (#8230)
First posted [here](https://github.com/ledgerwatch/erigon/pull/8195)
with bugs, which fixed in this PR.


When we call the debug_traceXXX API provided by Erigon, the withLog
option in tracerConfig is very helpful.

However, currently, the tracer cannot guarantee that the order of logs
output is consistent with the event logs returned in the transaction
receipt. This may make it difficult to use the output of the APIs. If
you need to access event logs in order, it is recommended to use the
event logs returned in the transaction receipt.

Here is an example to illustrate the reason why the order of callTracer
logs and receipt eventlogs can be inconsistent:

In a call trace tree, if a call has multiple logs and this call has
multiple child calls, and logs are also output in the child calls, the
logs of the child calls may be output between the logs of the parent
call in receipt.

I add an index field of log to identify log index of the logs in tracer
result, and it helps me a lot.
2023-09-18 13:48:37 +07:00
Andrew Ashikhmin
a6309fe02e
Upgrade execution-spec-tests to Cancun Devnet 9 Release (#8208)
Upgrade execution-spec-tests to
[v1.0.3](https://github.com/ethereum/execution-spec-tests/releases/tag/v1.0.3).

Set BeaconRootsAddress to `0xbEac00dDB15f3B6d645C48263dC93862413A222D`
in preparation for
[dencun-devnet-9](https://notes.ethereum.org/@ethpandaops/dencun-devnet-9).
2023-09-18 08:45:52 +02:00
Alex Sharov
751de6a028
txpool: batch IdHashKnown calls - to reduce amount of mutex lock/unlock. less string(byte) casts (#8226) 2023-09-18 10:25:53 +07:00
Alex Sharov
2fca6e8442
txpool: batch IdHashKnown calls - to reduce amount of mutex lock/unlock. less string(byte) casts (#1128) 2023-09-18 03:25:33 +00:00
Giulio rebuffo
2aa060f454
Fixed forkchoice nil exception (#8223) 2023-09-17 17:06:44 +02:00
Giulio rebuffo
0b307e7aca
Fixed accidental chain gap (#8222)
A chain gap can occur when peers may not give us enough info
2023-09-17 16:25:17 +02:00
Giulio rebuffo
c1961eff2b
Added the option to directly write blocks on io.Writer. (#8215) 2023-09-17 13:15:06 +02:00
Andrew Ashikhmin
17d6f86218
Don't mark blocks as bad on transient errors (#8197)
For example, erigon on devnet8 marked a block as bad due to
"mdbx_cursor_open: cannot allocate memory":
```
[INFO] [09-12|04:57:36.041] [NewPayload] Handling new payload        height=171035 hash=0x321dea00c4853ee354bebaf8aef3e63fbe06c4508271c0db4c92b0f087aedc3b
171034
[WARN] [09-12|04:57:36.069] Could not validate block                 err="[3/7 BlockHashes] table: Header, mdbx_cursor_open: cannot allocate memory, stack: [kv_mdbx.go:1057 kv_mdbx.
go:1069 kv_mdbx.go:1077 memory_mutation.go:473 memory_mutation.go:502 etl.go:123 etl.go:96 block_writer.go:40 stage_blockhashes.go:49 default_stages.go:457 sync.go:425 sync.go:258 s
tageloop.go:414 backend.go:476 fork_validator.go:250 fork_validator.go:156 ethereum_execution.go:151 execution_client.go:51 chain_reader.go:252 engine_server.go:741 engine_server.go
:235 engine_server.go:600 value.go:586 value.go:370 service.go:224 handler.go:494 handler.go:444 handler.go:392 handler.go:223 handler.go:316 asm_amd64.s:1598]"
[WARN] [09-12|04:57:36.069] ethereumExecutionModule.ValidateChain: chain is invalid hash=0x321dea00c4853ee354bebaf8aef3e63fbe06c4508271c0db4c92b0f087aedc3b
```
With this PR blocks are marked as bad only on genuine protocol errors.
2023-09-17 11:14:36 +02:00
racytech
fa4cf492d4
Revert "remove extra data from holesky genesis (#8207)" (#8217)
This reverts commit 438dd6bdb1. Broke CI.
Reverted. Will make another PR.
2023-09-16 20:54:53 +06:00
a
c44188871b
Update readme ports (#8205) 2023-09-15 18:27:13 +02:00
racytech
438dd6bdb1
remove extra data from holesky genesis (#8207) 2023-09-15 22:00:56 +06:00
Alex Sharov
eb747c042a
Downloader: add tests to protect from re-downloading (#8191) 2023-09-15 13:46:59 +07:00
Alex Sharov
47c5089a88
Downloader: add tests to protect from re-downloading (#1126) 2023-09-15 06:46:50 +00:00
Giulio rebuffo
c552f993ac
Removed Partial blocks and reduced pruneDepth to 1000 (#8198) 2023-09-14 22:14:05 +02:00
Giulio rebuffo
1f77fee04a
Fixed pending block response (#8200) 2023-09-14 22:13:41 +02:00
Alex Sharov
9c47978472
Revert "add eventlog index when using callTracer withLog" (#8196)
Reverts ledgerwatch/erigon#8195
2023-09-14 17:13:47 +07:00
David
d20de9508e
add eventlog index when using callTracer withLog (#8195)
When we call the debug_traceXXX API provided by Erigon, the withLog
option in tracerConfig is very helpful.

However, currently, the tracer cannot guarantee that the order of logs
output is consistent with the event logs returned in the transaction
receipt. This may make it difficult to use the output of the APIs. If
you need to access event logs in order, it is recommended to use the
event logs returned in the transaction receipt.

Here is an example to illustrate the reason why the order of callTracer
logs and receipt eventlogs can be inconsistent:

In a call trace tree, if a call has multiple logs and this call has
multiple child calls, and logs are also output in the child calls, the
logs of the child calls may be output between the logs of the parent
call in receipt.

I add an index field of log to identify log index of the logs in tracer
result, and it helps me a lot.
2023-09-14 16:36:49 +07:00
Alex Sharov
7132de98e0
Update README.md (#8194) 2023-09-14 15:13:39 +07:00
Mark Holt
b959b6c47c
Group metrics by type and fix missed label stripping (#8186)
This fixes issue https://github.com/ledgerwatch/erigon/issues/8181
2023-09-14 08:28:57 +01:00
alex.sharov
6f503165cd Revert "reduce amount of index workers (#8192)"
This reverts commit e9a8e669e6.
2023-09-14 12:25:01 +07:00
Alex Sharov
e9a8e669e6
reduce amount of index workers (#8192)
https://github.com/ledgerwatch/erigon/issues/8189
2023-09-14 12:21:56 +07:00
Giulio rebuffo
2f8687fe08
Smart SQL transactions (#8185) 2023-09-14 02:56:29 +02:00
Mark Holt
33d8c08c1c
Get vote on hash (#8172)
This is the initial merge for polygon milestones it implements an rpc
call used by heimdall but does not directly impact any chain processing
2023-09-13 11:49:49 +01:00
Alex Sharov
93fbda14a5
downloader: support --chain parameter (#8184) 2023-09-13 15:21:43 +07:00
Alex Sharov
b157b162f7
downloader: support --chain parameter (#1124) 2023-09-13 08:21:38 +00:00
Alex Sharov
3813a5ea10
downloader: better logging (#8183) 2023-09-13 13:42:24 +07:00
Alex Sharov
2158b4916d
Downloader: correct logging when create .torrent files (#8182) 2023-09-13 11:49:45 +07:00
Alex Sharov
810c4022f9
Downloader: correct logging when create .torrent files (#1123) 2023-09-13 04:49:42 +00:00
Alex Sharov
abff510ea7
evm: stack.dup() optimize (#8178) 2023-09-12 13:18:23 +07:00
Andrew Ashikhmin
d025a8b391
Restore version to 2.50.0-dev (#8177) 2023-09-12 08:02:57 +02:00
Alex Sharov
3cea1b9b9e
torrent: add --webseeds cli arg (#8176) 2023-09-12 12:18:47 +07:00
Alex Sharov
de8f783eeb
torrent: add --webseeds cli arg (#1122) 2023-09-12 05:18:39 +00:00
alex.sharov
13f782cef7 TxLookup: don't fail if body not found 2023-09-12 11:02:28 +07:00
alex.sharov
cc343ceda2 save 2023-09-12 10:33:58 +07:00
alex.sharov
babf8ef89b save 2023-09-12 09:09:14 +07:00
yperbasis
205eeda01f Bump patch version 2023-09-11 16:29:08 +02:00
Giulio rebuffo
87a032f09c Caplin: Improved logging (#8169) 2023-09-11 16:25:13 +02:00
ledgerwatch
eb41a1d77c Fix heimdall incorrect sync data bug (#8174) 2023-09-11 16:07:32 +02:00