Commit Graph

17010 Commits

Author SHA1 Message Date
Alex Sharov
08469bf5dc
e3: fix dao test (#6173) 2022-12-01 15:32:10 +07:00
Andrew Ashikhmin
d82c778ab3
Withdrawals part 1 (#6009)
This PR partially implements
[EIP-4895](https://eips.ethereum.org/EIPS/eip-4895): Beacon chain push
withdrawals as operations. The new Engine API methods
(https://github.com/ethereum/execution-apis/pull/195) are implemented.

_Body downloader and saving withdrawals into DB are not implemented
yet!_
2022-12-01 09:15:01 +01:00
Alex Sharov
fd3c44f6e1
e3: fix dao integration test (#6171) 2022-12-01 14:42:39 +07:00
alex.sharov
5d9e74d39c save 2022-12-01 13:47:35 +07:00
Mike Neuder
d3d65f6caa
Add verify block signature function and unit test (#6166)
Part of https://github.com/ledgerwatch/erigon/issues/5965

See
https://github.com/ethereum/consensus-specs/blob/dev/specs/phase0/beacon-chain.md#beacon-chain-state-transition-function.
2022-11-30 22:50:00 +01:00
Giulio rebuffo
a8ac42f429
updated bls and erigon-lib (#6164) 2022-11-30 14:13:17 +01:00
Alex Sharov
cb8f609dc0
e3: fix nil ptr bsc (#6162) 2022-11-30 18:24:42 +07:00
Andrew Ashikhmin
400ad1ab09
Update EIP-3860 according to ethereum/EIPs/pull/6040 (#6161)
See https://github.com/ethereum/EIPs/pull/6040 &
https://github.com/ethereum/tests/pull/1105
2022-11-30 12:19:16 +01:00
Giulio rebuffo
87520f60e3
added MPT storage dumps (#6153) 2022-11-30 10:53:58 +01:00
Alex Sharov
81b438a6e2
e3: option to discard all history writes. useful to test execution performance. (#6157) 2022-11-30 16:06:53 +07:00
alex.sharov
948b325062 save 2022-11-30 14:59:08 +07:00
Alex Sharov
61ebb61e96
up grafana (#6156) 2022-11-30 11:14:25 +07:00
Alex Sharov
0f53bd9e93
grpc version up (#6155) 2022-11-30 09:16:02 +07:00
alex.sharov
f238620fdf save 2022-11-30 08:47:09 +07:00
Alex Sharov
85212b4774
bsc: more static peers (#6150) 2022-11-30 08:36:29 +07:00
Alex Sharov
7239387de0
fix devel build (#6154) 2022-11-30 08:35:31 +07:00
Alex Sharov
60cb4e2bbb
evm tracing interface to use uint256, to avoid value.ToBig() allocations (#5781) 2022-11-30 08:31:39 +07:00
Alex Sharov
16cd87748f
E3: fix unwind changes visibility (#6147) 2022-11-30 08:31:13 +07:00
Giulio rebuffo
ae6d00747e
removed debug util now not necessary (#6149) 2022-11-29 09:46:52 +01:00
J1ang
83dae8dad3
feat: enhance API erigon_getLatestLogs (#6078)
feat:
1. `erigon_getLatestLogs` doesn't have to match the exact position of
the topics. It will match logs that contain the topics regardless of the
topics' position with original bloom filter. And it accepts `blockCount`
& `crit.ToBlock` params for better pagination.
2022-11-29 15:14:41 +07:00
Manav Darji
80e29f29d3
sprint length and base fee denominator change for mumbai testnet (#6142)
This PR includes changes required for delhi hard fork schedule at block
`29638656` on mumbai testnet. It changes few major parameters.

1. Sprint length - the number of bor blocks post which a new validator
mines has been reduced from 64 to 16.
2. Block time - the block time which was increased earlier for some
experiments to 5 seconds has been reduced to 2 seconds (along with
backup multiplier and producer delay).
3. Base fee denominator - this fields has been increased from 8 to 16 to
smoothen the effect of EIP 1559.
2022-11-29 08:11:29 +07:00
Giulio rebuffo
025839afd5
moved out protobuffers for sentinel (#6145) 2022-11-29 00:00:40 +01:00
Giulio rebuffo
05be20b70b
smol refactor of lightclient CI + logs demotion (#6144) 2022-11-28 23:29:48 +01:00
Max Revitt
41278c165c
tidy(hive): remove badge and generation code (#6141)
Was not working as expected, and probably necessary now we can see hive
result nightly.
2022-11-28 19:16:05 +07:00
hexoscott
0094d1301a
reusable evm caller for purpose of eth_estimateGas (#6112)
One simple change to send the header in rather than the body allowing
re-use in a loop which saves the copy call when looping.

The other one for a reusable evm seems potentially dangerous so feedback
more than welcome on that one, local testing shows it gains me around
6k±rps so if it's safe is a good win, but I feel it will need more work.
I could only validate against goerli chain which seems to always return
the same value for eth_estimateGas so if anybody could validate it
against another chain that would be awesome.
2022-11-28 09:03:03 +07:00
Giulio rebuffo
e431815202
Added account preimages generation (#6139) 2022-11-27 18:46:32 +01:00
Giulio rebuffo
8c38eeda5a
Added skeleton for beacon chain state transition (#6135) 2022-11-27 00:03:58 +01:00
Mike Neuder
eb7e5c2c6e
Adding processSlots functionality and unit test for transitionState and processSlots (#6136)
Part of the CL implementation.
https://github.com/ledgerwatch/erigon/issues/5965
2022-11-26 23:34:17 +01:00
Giulio rebuffo
54d1895542
updated go-verkle (#6126) 2022-11-26 19:36:10 +01:00
Giulio rebuffo
8c67c55cc7
Created Erigon beacon downloader (#6130) 2022-11-25 16:38:22 +01:00
awskii
e10e75fb3e
rename erigon23->erigon4 (#6128)
Rename directories db23/erigon23 to db4/erigon4
rename file ergion23.go to erigon4.go as well as `state` command (to
`erigon4`)
2022-11-25 15:11:01 +07:00
Max Revitt
8cbf316e49
dep(erigon-lib): update to version with hotfix for ipv6 detection (#6121)
#6117
2022-11-24 21:34:04 +07:00
Max Revitt
79fc64e7f2
fix(hive): prevent concurrent execution cancellation for same commit (#6122) 2022-11-24 21:33:43 +07:00
Alex Sharov
a0d2d585b8
sentinel: add logs prefix (#6124) 2022-11-24 21:29:51 +07:00
Alex Sharov
975c4960c7
mdbx: remove deprecated cmp_suffix32 feature (#6118) 2022-11-24 09:25:34 +07:00
Max Revitt
f362856836
ci(hive): also allow workflow_dispatch to trigger (#6115) 2022-11-24 09:11:00 +07:00
Max Revitt
1122e865be
ci(hive): use run context rather than artifacts for results (#6114)
When running from forks results would need to be uploaded as artifacts
and separately parsed. This is no longer true when running as a
scheduled job and we can therefore fix and get a speedup by reading the
results straight from the workspace.
2022-11-23 15:02:53 +00:00
Andrew Ashikhmin
03057c4e61
Update consensus tests to v11.2 (#6111)
[v11.2](https://github.com/ethereum/tests/releases/tag/v11.2) includes,
among other things, tests for
[EIP-3860](https://eips.ethereum.org/EIPS/eip-3860): Limit and meter
initcode.
2022-11-22 16:07:31 +01:00
Philippe Schommers
6f61f556a2
test: add fork id tests for Gnosis and Chiado (#6110)
Feels like there's an issue with the latest hardfork
(https://docs.gnosischain.com/specs/hard-forks/21735000), as the fork id
didn't change?

Related: https://github.com/NethermindEth/nethermind/pull/4925
2022-11-22 16:03:36 +01:00
Giulio rebuffo
a1de39d25c
added beacon state-transition first structure (#6105) 2022-11-22 15:36:08 +01:00
Leonard Chinonso
f76736e14a
Implemented mining of contract transactions on the devnet tool (#6102)
- Added a new method and type for contract transactions.
- Added functions to emit fallback events from contract transactions.
- Added GetLogs request generator
- Added tests for GetLogs request generator
2022-11-22 20:28:53 +07:00
Mike Neuder
9352ea3b57
Add get blocks by range request to recent block sync (#6104)
Part of https://github.com/ledgerwatch/erigon/issues/5965.
2022-11-22 18:28:15 +07:00
awskii
cd508a65c5
E4 commit key replace (#6109)
https://github.com/ledgerwatch/erigon-lib/pull/684#issuecomment-1321577450
2022-11-22 11:02:43 +00:00
Max Revitt
4669954fc5
ci(hive): move hive run to nightly job (#6100)
- remove hive run from CI yaml
- create nightly hive yaml which runs hive at 1am each day on a hosted
runner (can move to self hosted if needs be in future)
2022-11-22 17:12:17 +07:00
alexqrid
e81c074fe6
added miner address extracting for Bor in block api response (#6080)
This PR adds correct miner address to the response of
`eth_getBlockByNumber`/`eth_getBlockByHash` API methods.

Currently miner address is returned as zero address (`0x000...000`) for
Polygon -
https://wiki.polygon.technology/docs/edge/faq/validators/#why-do-the-json-rpc-commands-eth_getblockbynumber-and-eth_getblockbyhash-not-return-the-miners-address
.
Unfortunately this behaviour confuses a lot, I've succeeded in restoring
the miner address in block related API, want this to be the default
behaviour.

Co-authored-by: alexqrid <>
2022-11-22 17:11:44 +07:00
Manav Darji
d08c052193
consensus/bor: return txs and receipts in FinalizeAndAssemble (#6108)
Due to a change in a previous
[commit](https://github.com/ledgerwatch/erigon/pull/5212/files#diff-335eb65f5a52a99fd4cb182ce6385022828dfc04118b85336754d5a142f45be7R134),
the txs and receipts are overridden. This breaks compatibility with bor
consensus as the `bor.FinalizeAndAssemble` method returns nil txs and
receipts. This PR fixes that.
2022-11-22 13:06:18 +07:00
Alex Sharov
6cf3af8208
e3: some recon logs (#6107) 2022-11-22 10:49:33 +07:00
Mike Neuder
f33ec06572
Add Status fetching and made sentinel request logic generic (#6094)
Part of https://github.com/ledgerwatch/erigon/issues/5965.

An example logging output shows that we are getting accurate data:

the current finalized checkpoint block:
https://beaconcha.in/slot/5180288
the current head block: https://beaconcha.in/slot/5180361

```
INFO[11-20|16:52:36.631] Retrieved status.                        status="&{ForkDigest:[74 38 197 139] FinalizedRoot:[133 83 36 34 8 25 208 12 77 180 192 189 151 179 237 244 192 20 216 226 40 178 142 28 242 91 4 66 250 58 200 92] FinalizedEpoch:161884 HeadRoot:[164 219 216 224 200 71 201 76 70 253 61 144 64 238 11 14 224 173 49 5 107 109 238 32 215 126 85 23 10 170 107 223] HeadSlot:5180361}"
INFO[11-20|16:52:36.631] Current finalized root.                  root=855324220819d00c4db4c0bd97b3edf4c014d8e228b28e1cf25b0442fa3ac85c
INFO[11-20|16:52:36.631] Current finalized epoch.                 epoch=161884
INFO[11-20|16:52:36.631] Current head root.                       root=a4dbd8e0c847c94c46fd3d9040ee0b0ee0ad31056b6dee20d77e55170aaa6bdf
INFO[11-20|16:52:36.631] Current head slot.                       slot=5180361
```
2022-11-21 18:50:20 +01:00
Andrew Ashikhmin
0b28c7ad13
Support genesis constructors for Chiado (#6103)
This is a continuation of PR #6058 and fixes Chiado genesis state root
by supporting genesis constructors (deployment code).
2022-11-21 17:21:59 +01:00
Alex Sharov
c582f750be
e3: 1-thread exec, send signal (#6101) 2022-11-21 17:22:51 +07:00