Commit Graph

17259 Commits

Author SHA1 Message Date
Giulio rebuffo
330579a0f6
Added execution module basics (#6481) 2023-01-01 15:29:08 +01:00
Alex Sharov
65b66d6be2
make clang happy (#6482) 2023-01-01 11:43:31 +07:00
ledgerwatch
7a699c918a
Fix compile (#6480)
Co-authored-by: Alex Sharp <alexsharp@Alexs-MacBook-Pro-2.local>
2022-12-31 12:38:03 +00:00
ledgerwatch
4d4989c5d4
Fix compile errors (#6479)
Co-authored-by: Alex Sharp <alexsharp@Alexs-MacBook-Pro-2.local>
2022-12-31 12:05:04 +00:00
Giulio rebuffo
214cf2dc9b
Added execution module as erigon-el, first draft. (#6468) 2022-12-31 00:21:08 +01:00
Andrew Ashikhmin
58893937b0
core/vm: Make INVALID a defined opcode (#6477)
Cherry-pick https://github.com/ethereum/go-ethereum/pull/24017.

* core/vm: Define 0xfe opcode as INVALID

* core/vm: Remove opInvalid as opUndefined handles it

Co-authored-by: Alex Beregszaszi <alex@rtfs.hu>

Co-authored-by: Andrei Maiboroda <andrei@ethereum.org>
Co-authored-by: Alex Beregszaszi <alex@rtfs.hu>
2022-12-30 17:13:54 +01:00
Alex Sharov
4a9c871628
a bit rename 22 to v3 (#6476) 2022-12-30 21:53:42 +07:00
Andrew Ashikhmin
a369fd026f
core/vm: clean up contract creation error handling (#6475)
Cherry-pick https://github.com/ethereum/go-ethereum/pull/22766.

Do not keep separate flag for "max code size exceeded" case, but instead
assign appropriate error for it sooner.

Co-authored-by: Paweł Bylica <chfast@gmail.com>
2022-12-30 15:19:16 +01:00
Alex Sharov
3ebd597912
up log version (#6474) 2022-12-30 20:31:17 +07:00
Alex Sharov
0b900e3004
coherent state cache: change btree type (#6473) 2022-12-30 19:47:46 +07:00
alex.sharov
c9766bc5aa "integration stage_exec --warmup" 2022-12-30 15:46:02 +07:00
Alex Sharov
9159f7e8aa
"integration stage_exec --warmup" (#6471) 2022-12-30 15:44:50 +07:00
alex.sharov
b017fee60b save 2022-12-30 15:20:22 +07:00
Alex Sharov
b0af04f2df
bsc: incrementally calc and store all old snapshots. slower initial stage_snapshots, but faster restart during initial sync (#6457) 2022-12-30 12:44:54 +07:00
alex.sharov
c8aead7537 mdbx: disable unused check 2022-12-30 10:47:25 +07:00
Alex Sharov
5ec19c5b2d
fix standalone rpcdaemon block reader (#6469) 2022-12-30 10:27:02 +07:00
Giulio rebuffo
4932aa5264
added indexes to beacon blocks (#6460) 2022-12-29 15:15:25 +01:00
Alex Sharov
e7104c9a68
e3: support withdrawals (#6467) 2022-12-29 19:57:58 +07:00
alex.sharov
5996974e0c e3: fix test, genesis block reward 2022-12-29 19:39:21 +07:00
alex.sharov
0a37e9ec44 e3: fix test, genesis block reward 2022-12-29 19:26:05 +07:00
alex.sharov
82e7893837 e3: remove debug line 2022-12-29 18:52:33 +07:00
alex.sharov
ed94d60671 e3: disable some checks for genesis, to fix tests 2022-12-29 16:04:56 +07:00
alex.sharov
72ffce2ba8 e3: more print_stages info 2022-12-29 15:18:11 +07:00
Alex Sharov
c04668d0ff
e3: agg cancel background jobs (#6463) 2022-12-29 15:04:07 +07:00
Alex Sharov
ca3bc54428
Shared genesis db (#6465) 2022-12-29 14:47:17 +07:00
Alex Sharov
a528249b00
goreleaser version up (#6453) 2022-12-29 11:03:07 +07:00
alex.sharov
92c95e6e68 cleanup 2022-12-29 11:02:33 +07:00
alex.sharov
a893899fc2 save 2022-12-29 11:02:11 +07:00
alex.sharov
9efb8e838b save 2022-12-29 10:09:09 +07:00
Andrew Ashikhmin
0fdd60a0d1
Execution Spec Tests & HashCheck() (#6444)
Run tests from a new repo
https://github.com/ethereum/execution-spec-tests.

Also introduce `HashCheck()` function that checks correctness of block's
uncle, transaction, and withdrawals hashes.
2022-12-28 17:01:40 +01:00
Andrew Ashikhmin
b4a73e0579
Fix intra_block_state_test (#6458)
Postfix after PR #6440
2022-12-28 12:26:37 +01:00
Andrew Ashikhmin
714888b016
HashBuilder: fix top node shorter than 32 bytes (#6456)
Prior to withdrawals, it was extremely unlikely to have short (RLP < 32)
top trie nodes outside test scenarios.
2022-12-28 11:58:37 +01:00
Alex Sharov
fc71d441a6
mdbx_to_mdbx better logging (#6455) 2022-12-28 13:27:42 +07:00
Alex Sharov
36fc6a3950
kv: db.ReadOnly() method #806 (#6454) 2022-12-28 12:48:57 +07:00
Giulio rebuffo
80b5954c3c
fixed encoding for slot > 17 million (#6451) 2022-12-28 02:29:24 +01:00
Giulio rebuffo
cf7e0e292c
Compact Attestations final form (#6446) 2022-12-27 17:22:52 +01:00
Mike Neuder
f0be116bc2
Implement ProcessEth1Data (#6445)
Spec:
https://github.com/ethereum/consensus-specs/blob/dev/specs/phase0/beacon-chain.md#eth1-data

Part of https://github.com/ledgerwatch/erigon/issues/5965
2022-12-27 14:57:32 +01:00
Alex Sharov
05f715ca51
E3: chain rules fix (#6448) 2022-12-27 13:14:24 +07:00
Alex Sharov
ba585f494b
torrent lib version up (#6447) 2022-12-27 12:54:00 +07:00
Giulio rebuffo
9006804ac0
Fast/compact attestations encoding, prototype 1 (#6442) 2022-12-26 19:23:55 +01:00
alex.sharov
17ea11e9a0 mdbx: fix set option error 2022-12-26 21:33:03 +07:00
Alex Sharov
fa6f6038e7
kv: tx.Prefix method (#6441) 2022-12-26 17:58:21 +07:00
ledgerwatch
387b4d7f35
Native tracers step 10 - remove duplicate SelfDestruct capture, clean up (#6440)
Moved some of the tracers to `eth/tracers/logger` to make it more
similar to go-ethereum.

Removed Erigon-specific `Capture-` functions

Co-authored-by: Alex Sharp <alexsharp@Alexs-MacBook-Pro-2.local>
2022-12-26 04:56:39 +00:00
Giulio rebuffo
fa55cf8efe
Added full backfilling routine with support with Phase0/Altair and Bellatrix + Consensus Layer Database Schema Prototype (#6435)
This PR Adds:

* Backfilling routine, downloads and write to db all historical blocks.
* Prototype of first attempt at Database schema for Historical blocks.
* Fixed minor bugs.
* Support for following forks: Phase0, Altair, Bellatrix.
2022-12-25 18:07:12 +01:00
Alex Sharov
8161e17694
e3: fix non-parallel nil (#6438) 2022-12-25 19:48:44 +07:00
Alex Sharov
ab6b4546f5
KV: tx.Range() with stream api (#6437) 2022-12-25 17:41:43 +07:00
Alex Sharov
2133a4fe17
KV: tx.Range() with stream api (#6436) 2022-12-25 17:40:07 +07:00
ledgerwatch
24040f3044
Native tracers step 9 - add native tracers (#6434)
Co-authored-by: Alex Sharp <alexsharp@Alexs-MacBook-Pro-2.local>
2022-12-25 07:28:41 +00:00
Mike Neuder
aa9b30a656
Implement ProcessRandao (#6425)
https://github.com/ethereum/consensus-specs/blob/dev/specs/phase0/beacon-chain.md#randao

Part of https://github.com/ledgerwatch/erigon/issues/5965
2022-12-24 19:39:39 +01:00
alex.sharov
82b8455635 mdbx_to_mdbx: clean table before load 2022-12-24 21:55:35 +07:00