ledgerwatch
a77e33e7c4
Introduce extra functions for BorSpans (no-op) ( #8648 )
2023-11-04 10:59:07 +00:00
Andrew Ashikhmin
38e91809f9
Revert "Move validator set snapshot computation to bor_heimdall stage… ( #8580 )
...
PR #8202 might cause Issue #8550 , so reverting it until Alexey's return.
This reverts commit 2ce98f8337
.
2023-10-25 14:02:31 +02:00
a
436493350e
Sentinel refactor ( #8296 )
...
1. changes sentinel to use an http-like interface
2. moves hexutil, crypto/blake2b, metrics packages to erigon-lib
2023-10-22 01:17:18 +02:00
ledgerwatch
2ce98f8337
Move validator set snapshot computation to bor_heimdall stage ( #8202 )
...
Co-authored-by: Alex Sharp <alexsharp@Alexs-MacBook-Pro-2.local>
2023-10-20 18:31:00 +01:00
Alex Sharov
c293883ec0
evm: no interface ( #8376 )
...
after removal of tevm experiment - we left interfaces everywhere
removing it for performance and for geth compatibility
2023-10-05 12:23:08 +07:00
Andrew Ashikhmin
9b63764b16
Move ApplyDAOHardFork & UpgradeBuildInSystemContract to engine.Initialize ( #8095 )
...
Now all protocol-stipulated changes at the beginning of the block (AuRa
stuff,
[DAO](https://github.com/ethereum/execution-specs/blob/master/network-upgrades/mainnet-upgrades/dao-fork.md )
irregular state change, Calcutta system contract upgrade,
[EIP-4788](https://eips.ethereum.org/EIPS/eip-4788 ) beacon root) are
handled by consensus engine `Initialize()`.
2023-08-30 15:51:19 +02:00
ledgerwatch
6b6c0caad0
Snapshots of Bor events ( #7901 )
...
Co-authored-by: Alex Sharp <alexsharp@Alexs-MacBook-Pro-2.local>
Co-authored-by: Alex Sharp <alexsharp@alexs-mbp-2.home>
2023-08-18 17:10:35 +01:00
Andrew Ashikhmin
f854a73185
Add enough blob gas for block building (EIP-4844) ( #8001 )
2023-08-11 16:09:03 +02:00
Andrew Ashikhmin
03927d3e27
Call InitializeBlockExecution in SpawnMiningExecStage (EIP-4788) ( #7999 )
...
This fixes the trie state root issue that was occurring in the Hive
tests for Cancun.
2023-08-11 14:04:53 +02:00
Mark Holt
bd9896bf4b
added bor tx indexing with tests ( #7826 )
...
This request implements the insertion of Bor ephemeral transactions into
snapshot indexes.
I does this by taking the block hash from the header index and passing
it to the transaction indexer to add an additional index entry per block
into the transaction hash -> block index.
The passed entries are currently contained in an in memory array which
is (32 * number of blocks / sprint size) bytes.
In addition to the functional code there is also an update to the
`dump_test.go` so that it runs `DumpBlocks` to exercise the indexing
code. To facilitate this the `InsertChain` method in `mock_sentry` has
been modified so that it can process >128 blocks.
The code in this request also includes additional bor/consensus code
with the following functions:
`CalculateSprint`
`CalculateSprintCount`
The first function is a modification of the code in erigon-lib so that
the sprints are numerically rather than lexically ordered. This code
should be migrated to erigon-lib and should have its sprint set
calculated once from its underlying map rather than this process being
repeated every calculation.
---------
Co-authored-by: Alex Sharp <alexsharp@Alexs-MacBook-Pro-2.local>
Co-authored-by: ledgerwatch <akhounov@gmail.com>
Co-authored-by: Enrique Jose Avila Asapche <eavilaasapche@gmail.com>
Co-authored-by: Giulio <giulio.rebuffo@gmail.com>
2023-07-12 23:31:38 +01:00
ledgerwatch
dbb6d96dc5
Add FrozenBlocks function to chainReaders ( #7866 )
...
Co-authored-by: Alex Sharp <alexsharp@Alexs-MacBook-Pro-2.local>
2023-07-10 17:35:27 +01:00
Somnath Banerjee
71231140a5
Block Gas limit contract integration for Chiado ( #7727 )
...
Changes summary:
- Continue with the gasLimit check skip in ``verifyHeader`` of
``merge.go`` for unless pre-merge block and blockGasLimitContract
present
- Refactor ``aura.go`` a bit
- Have ``sysCall`` method customized to be able to call state (contract)
at a parent (or any other) header state
2023-06-19 22:06:51 +05:30
Alex Sharov
250ecfc4d1
Fix integration tests run3 ( #7674 )
2023-06-06 16:50:04 +07:00
Alex Sharov
f62b6fd722
e3: release switch ( #7663 )
2023-06-05 12:36:02 +07:00
Andrew Ashikhmin
190bc9dfd8
EIP-4844: add data_gas_used ( #7639 )
...
Implement https://github.com/ethereum/EIPs/pull/7062 and
https://github.com/ethereum/EIPs/pull/7095 . Pick up
https://github.com/ledgerwatch/erigon-lib/pull/1006 .
2023-06-02 21:26:19 +01:00
Andrew Ashikhmin
f3144a6ed0
Proper Gnosis Chain rewards in trace_block ( #7473 )
2023-05-09 17:19:23 +02:00
Alex Sharov
231d128d91
e3: parallel exec docs ( #7459 )
2023-05-08 14:32:12 +07:00
Andrew Ashikhmin
1533674dad
Implement EIP-1153 transient storage ( #7405 )
...
Port https://github.com/ethereum/go-ethereum/pull/26003
---------
Co-authored-by: Mark Tyneway <mark.tyneway@gmail.com>
2023-05-01 18:26:24 +02:00
Alex Sharov
695b9f887b
e3: close input chan in the end of rwloop (to fix deadlock) ( #7342 )
2023-04-19 07:26:22 +00:00
Andrew Ashikhmin
96bb5d544b
Remove Parlia ( #7306 )
...
Pre-requisite: https://github.com/ledgerwatch/erigon-lib/pull/969
2023-04-14 06:24:10 +00:00
alex.sharov
6e57f3ef92
e3: less conlicts
2023-04-10 09:38:08 +07:00
Alex Sharov
895e61d1ab
e3: merge out chan+heap to one class ( #7287 )
2023-04-10 02:33:20 +00:00
Alex Sharov
e26c607922
e3: combine input tasks channel+heap to class PriorityQueueWithRetry and add docs ( #7275 )
2023-04-07 06:43:05 +00:00
Alex Sharov
9b5d7357dd
e3: remove sync.Cond and make ownership of first queue clearer (producer will close it). ( #7268 )
...
Separate:
- new tasks coming by channel with limited capacity (touching the limit
will block - like sync.Cond.Wait() does, but composable). as a result -
don't need track queue size (it will not increase conflict-rate).
- re-exec tasks are going to priority-queue (which is also higher
priority than 1-st `chan`).
2023-04-06 09:03:54 +00:00
Alex Sharov
a42d362cbd
move aura epoch data from chainDB to auraDB. remove epochReader
parameter from consensus interface ( #7250 )
2023-04-04 03:30:07 +00:00
Alex Sharov
65fcec8d85
e3: replace sync.Cond to fix deadlock ( #7243 )
2023-04-03 11:33:43 +00:00
Alex Sharov
06da707d58
e3: add metric for repeat count ( #7239 )
2023-04-03 04:34:45 +00:00
racytech
04b57904b0
eip-4844: excessDataGas param added to block execution functions ( #7217 )
...
Small addition to block execution functions. Now they expect
excessDataGas param so the BlockContext can be created with it.
2023-03-30 20:42:43 +00:00
Alex Sharov
417a437584
Break dependency of ethcfg
package to core
/consensus
/etc... move genesis struct to 'types' package ( #7206 )
2023-03-29 07:27:06 +00:00
racytech
975e38a800
eip-4844: NewEVMBlockContext now expects excessDataGas ( #7203 )
...
Small change in core.NewEVMBlockContext and now it expects
excessDataGas. This will be used in state transition to compute data fee
for eip-4844 data blobs. The logic that computes it will be added in the
next PRs.
2023-03-29 06:39:36 +00:00
Alex Sharov
201572c6f5
enable more linters #954 ( #7179 )
2023-03-25 05:13:27 +00:00
Alex Sharov
f432cde16b
e3: reconst: run workers in errgroup ( #7071 )
2023-03-13 04:04:49 +00:00
Andrew Ashikhmin
3270720cb7
Remove ETC-specific DAOForkSupport=false functionality ( #7075 )
2023-03-10 12:10:11 +00:00
Alex Sharov
78aa8652d2
e3: native map instead of btree where can (because e2 experience shows - it's faster) ( #7010 )
2023-03-07 02:34:30 +00:00
Alex Sharov
8406cb7899
e3: exec workers - can't treat all errors as "state conflict", because applyLoop will get same error and handle them well ( #6993 )
2023-03-01 09:55:29 +00:00
Alex Sharov
a4f69abb97
e3: less locks, less casts ( #6991 )
2023-03-01 07:59:56 +00:00
Alex Sharov
b3c49af086
e3: aggressive drain resultCh to heap before start conflict-resolution ( #6979 )
2023-02-27 13:08:33 +00:00
Alex Sharov
431fba815f
e3: simplify tracer ( #6953 )
2023-02-25 12:44:45 +07:00
Alex Sharov
ddcb1c90cd
e3: don't collect readList in ApplyWorker, because it's conflict-free ( #6916 )
2023-02-21 05:11:45 +00:00
Alex Sharov
45ffd2368b
e3: don't cancel workers ( #6869 )
2023-02-14 06:13:27 +00:00
Alex Sharov
999899d66d
e3: read files list from db ( #6833 )
2023-02-13 05:17:01 +00:00
ledgerwatch
ee83447fa1
CL lightclient to create memdb in the tmpdir which gets cleaned up on… ( #6829 )
...
… startup
---------
Co-authored-by: Alexey Sharp <alexeysharp@Alexeys-iMac.local>
Co-authored-by: Alex Sharp <alexsharp@Alexs-MacBook-Pro-2.local>
2023-02-11 20:44:51 +00:00
Alex Sharov
910ea64c3e
e3: worker stuck on exit ( #6826 )
2023-02-10 13:18:39 +07:00
Andrew Ashikhmin
de5a061fdf
Remove StarknetTransaction and friends ( #6745 )
2023-01-30 16:56:58 +01:00
Alex Sharov
82c478a419
e3: getLogs on iterators ( #6683 )
2023-01-25 16:29:41 +07:00
Alex Sharov
d317722aef
e3: storageRangeAt ( #6580 )
2023-01-17 14:16:36 +07:00
Devon Bear
4bfcc1ee5c
Convert *vm.EVM to vm.VMInterface in Tracers ( #6590 )
...
Useful for integration with external tools as one can just utilize an
interface opposed to having to import and build a real EVM object.
2023-01-16 22:28:50 +00:00
hexoscott
7dcbfbc283
reference hash, address, and chain config from lib ( #6536 )
2023-01-13 18:12:18 +00:00
Alex Sharov
731569bbb7
e3: invalid txnum table ( #6540 )
2023-01-12 09:31:41 +07:00
Alex Sharov
4a9c871628
a bit rename 22 to v3 ( #6476 )
2022-12-30 21:53:42 +07:00