Sina Mahmoodi
b267363c65
fix nil checks in runtime
2024-03-25 15:10:30 -04:00
Sina Mahmoodi
6c516843dd
minor improvements
2024-03-25 15:10:30 -04:00
Martin Holst Swende
c76d4f01ce
eth/tracers, cmd/evm: unexport JSONlogger
2024-03-18 15:56:37 -04:00
Martin Holst Swende
8ae03dd42a
core/vm: documentation + minor refactoring
2024-03-18 15:56:36 -04:00
Matthieu Vachon
f596461a23
Backported a bunch more of eth/tracers
2024-03-15 14:06:11 -04:00
Matthieu Vachon
17fcdfaadf
Fixed incorrect captureBeging/captureEnd in EVM
2024-03-15 10:58:50 -04:00
Matthieu Vachon
3834f135a9
Series of changes to get backport to 1.13.5 working
2024-03-14 16:53:22 -04:00
Matthieu Vachon
177074432d
Call OnBlockchainInit before OnGenesisBlock ( #22 )
...
# Conflicts:
# core/blockchain.go
2024-03-14 16:25:45 -04:00
Sina Mahmoodi
77a701cca4
rm extra param
...
# Conflicts:
# core/vm/evm.go
2024-03-14 16:24:51 -04:00
Sina Mahmoodi
77486e91fb
fix lint issue
2024-03-14 16:23:56 -04:00
Sina Mahmoodi
d0a86c45b5
rm canceler
2024-03-14 16:23:56 -04:00
Sina Mahmoodi
a476051c48
add fn refundGas
2024-03-14 16:23:56 -04:00
Sina Mahmoodi
94fc0b4a9e
replace opcode with byte
...
# Conflicts:
# core/tracing/hooks.go
# core/vm/evm.go
# core/vm/instructions.go
# eth/tracers/js/tracer_test.go
2024-03-14 16:23:54 -04:00
Sina Mahmoodi
5c6fb316b7
rm OnKeccakPreimage
...
# Conflicts:
# core/tracing/hooks.go
2024-03-14 16:16:43 -04:00
Sina Mahmoodi
03e48ee451
rename tracer methods to On pattern
...
# Conflicts
# core/vm/interpreter.go
# eth/tracers/directory/noop.go
# eth/tracers/js/goja.go
# eth/tracers/live/noop.go
# eth/tracers/logger/logger.go
# eth/tracers/logger/logger_json.go
# eth/tracers/native/4byte.go
# eth/tracers/native/call.go
# eth/tracers/native/call_flat.go
# eth/tracers/native/mux.go
2024-03-14 16:16:18 -04:00
Sina Mahmoodi
25a3a744c3
rename Capture hooks to On
...
# Conflicts:
# cmd/evm/internal/t8ntool/execution.go
# core/vm/instructions.go
# eth/tracers/directory/noop.go
# eth/tracers/internal/tracetest/calltrace_test.go
# eth/tracers/internal/tracetest/flat_calltrace_test.go
# eth/tracers/internal/tracetest/prestate_test.go
# eth/tracers/js/goja.go
# eth/tracers/js/tracer_test.go
# eth/tracers/live/noop.go
# eth/tracers/native/4byte.go
# eth/tracers/native/call.go
# eth/tracers/native/call_flat.go
# eth/tracers/native/mux.go
# eth/tracers/native/prestate.go
2024-03-14 16:07:18 -04:00
Sina Mahmoodi
a2ad953d21
rm old logger file
2024-03-14 16:03:37 -04:00
Sina Mahmoodi
e7fe236988
a type for each hook
...
# Conflicts:
# core/tracing/hooks.go
2024-03-14 16:03:34 -04:00
Sina Mahmoodi
3253b8bab5
assign const values for gas change reasons
2024-03-14 16:03:07 -04:00
Sina Mahmoodi
688f0b9654
rename scopeContext to opContext
2024-03-14 16:03:07 -04:00
Sina Mahmoodi
d4ec634c05
rename GetLogger to Hooks
...
# Conflicts:
# eth/tracers/logger/access_list_tracer.go
# eth/tracers/logger/logger.go
# eth/tracers/logger/logger_json.go
# eth/tracers/logger/logger_test.go
# eth/tracers/tracers_test.go
# internal/ethapi/api.go
2024-03-14 16:03:05 -04:00
Sina Mahmoodi
39fc9dcafb
move logger interface to core/tracing
...
# Conflicts:
# cmd/evm/internal/t8ntool/execution.go
# consensus/beacon/consensus.go
# consensus/ethash/consensus.go
# consensus/misc/dao.go
# core/evm.go
# core/genesis.go
# core/state/state_object.go
# core/state/state_test.go
# core/state/statedb.go
# core/state/statedb_fuzz_test.go
# core/state/statedb_test.go
# core/state/sync_test.go
# core/state/trie_prefetcher_test.go
# core/state_transition.go
# core/txpool/blobpool/blobpool_test.go
# core/txpool/legacypool/legacypool2_test.go
# core/txpool/legacypool/legacypool_test.go
# core/vm/evm.go
# core/vm/instructions.go
# core/vm/interface.go
# eth/api_debug_test.go
# internal/ethapi/api.go
# tests/block_test_util.go
# tests/state_test_util.go
2024-03-14 15:59:21 -04:00
Sina Mahmoodi
b202e8ab74
renaming GetLogger
...
# Conflicts:
# cmd/evm/internal/t8ntool/transition.go
# eth/tracers/logger/logger_test.go
# eth/tracers/tracers_test.go
2024-03-14 13:58:26 -04:00
Sina Mahmoodi
e1c669b3aa
moaar fixes
...
# Conflicts:
# core/state/state_test.go
# core/state/statedb_fuzz_test.go
# core/state/statedb_test.go
# core/state/sync_test.go
# core/state/trie_prefetcher_test.go
# core/txpool/blobpool/blobpool_test.go
# core/txpool/legacypool/legacypool2_test.go
# core/txpool/legacypool/legacypool_test.go
# eth/api_debug_test.go
2024-03-14 13:56:15 -04:00
Sina Mahmoodi
29ebfb30c3
fixes, rm t8ntool tracewriter
...
# Conflicts:
# cmd/evm/internal/t8ntool/execution.go
# cmd/evm/internal/t8ntool/transition.go
# core/vm/instructions.go
# eth/tracers/internal/tracetest/calltrace_test.go
# eth/tracers/internal/tracetest/flat_calltrace_test.go
# eth/tracers/internal/tracetest/prestate_test.go
# eth/tracers/js/tracer_test.go
# eth/tracers/logger/logger_test.go
# eth/tracers/tracers_test.go
# tests/block_test_util.go
# tests/state_test_util.go
2024-03-14 13:51:16 -04:00
Sina Mahmoodi
e0b96540b7
Add canceler interface
2024-03-14 13:42:40 -04:00
Sina Mahmoodi
4e43718bd0
full struct-based tracing infra
...
# Conflicts:
# consensus/beacon/consensus.go
# consensus/ethash/consensus.go
# consensus/misc/dao.go
# core/blockchain.go
# core/evm.go
# core/genesis.go
# core/state/dump.go
# core/state/state_object.go
# core/state/statedb.go
# core/state_transition.go
# core/vm/evm.go
# core/vm/instructions.go
# core/vm/interface.go
# internal/ethapi/api.go
2024-03-14 12:09:18 -04:00
Sina Mahmoodi
4df6904051
use struct for tracing events
...
# Conflicts:
# core/blockchain.go
# core/state/state_object.go
# core/state/statedb.go
2024-03-14 11:57:58 -04:00
Sina Mahmoodi
8ec4560e17
refactor onBlockStart params, new skip method
2024-03-14 11:54:59 -04:00
Sina Mahmoodi
b210cc761d
remove onBeaconBlockRoot events
2024-03-14 11:54:59 -04:00
Sina Mahmoodi
ee96dd2c03
live tracer err -> warn
...
Backport of 08cb623c2e
2024-02-09 16:08:28 -05:00
Sina Mahmoodi
97e9a8b315
fix blockchain -> logger circular import
...
Backport of 03206befb9
2024-02-09 16:07:56 -05:00
Matthieu Vachon
7ff2ae6924
indicate Known block
...
Backport of 056f229260
2024-02-08 16:04:15 -05:00
Matthieu Vachon
31b3b7dca3
rm OnNewAccount
...
Backport of 57cd0c30df
2024-02-08 15:57:12 -05:00
Matthieu Vachon
9f71824d8c
Backported commits from extended-tracer
...
- 6c44a594f4
- 188cd4182e
- f3c0a89b57
- 95b50299a5
- 2cc09548bb
2024-02-06 15:36:12 -05:00
Matthieu Vachon
7f8926e716
Backporting extended-tracer branch
...
We backported branch `extended-tracer` at commit 3078dfe80b back to v1.13.5 of Geth.
To achieve the backport, we did:
- git checkout -b extended-tracer-squashed
- git reset --hard 3078dfe80b
- git reset --mixed fc380f52ef # This was the latest merged commit not from `extended-tracer` branch
- git commit -A -m "<This message>"
- git checkout v1.13.5
- git checkout -b extended-tracer-backport-v1.13.5
- git cherry-pick extended-tracer-squashed
2024-02-06 13:06:08 -05:00
rjl493456442
326fa00759
core/rawdb: fsync the index file after each freezer write ( #28483 )
...
* core/rawdb: fsync the index and data file after each freezer write
* core/rawdb: fsync the data file in freezer after write
2023-11-10 12:56:39 +02:00
Péter Szilágyi
470dba8fc1
core/vm: set basefee to 0 internally on eth_call ( #28470 )
...
* core/vm: set basefee to 0 internally on eth_call
* core: nicer 0-basefee, make it work for blob fees too
* internal/ethapi: make tests a bit more complex
* core: fix blob fee checker
* core: make code a bit more readable
* core: fix some test error strings
* core/vm: Get rid of weird comment
* core: dict wrong typo
2023-11-08 11:22:08 +02:00
lmittmann
a3be38127c
core/vm: performance tweak of OpCode.String() ( #28453 )
...
make `opCodeToString` a `[256]string` array
Co-authored-by: lmittmann <lmittmann@users.noreply.github.com>
2023-11-02 08:54:28 +02:00
Felix Lange
bc42e88415
core: add basic chain history support in GenerateChain ( #28428 )
...
This change improves GenerateChain to support internal chain history access (ChainReader)
for the consensus engine and EVM.
GenerateChain takes a `parent` block and the number of blocks to create. With my changes,
the consensus engine and EVM can now access blocks from `parent` up to the block currently
being generated. This is required to make the BLOCKHASH instruction work, and also needed
to create real clique chains. Clique uses chain history to figure out if the current signer is in-turn,
for example.
I've also added some more accessors to BlockGen. These are helpful when creating transactions:
- g.Signer returns a signer instance for the current block
- g.Difficulty returns the current block difficulty
- g.Gas returns the remaining gas amount
Another fix in this commit concerns the receipts returned by GenerateChain. The receipts now
have properly derived fields (BlockHash, etc.) and should generally match what would be
returned by the RPC API.
2023-10-31 12:39:25 +01:00
Jakub Freebit
447945e438
core/rawdb: add logging and fix comments around AncientRange function. ( #28379 )
...
This adds warning logs when the read does not match the expected count.
We can also remove the size limit since the function documentation explicitly states
that callers should limit the count.
2023-10-31 12:04:45 +01:00
Guillaume Ballet
4cbca5178a
core, cmd/geth: add --override.* flags to geth init ( #28407 )
...
* core, cmd/geth: add --override.* flags to geth init
* also apply overrides before genesis commit with new block
* review feedback
2023-10-27 10:15:14 +08:00
Martin Holst Swende
96b75033c0
trie: use explicit errors in stacktrie (instead of panic) ( #28361 )
...
This PR removes panics from stacktrie (mostly), and makes the Update return errors instead. While adding tests for this, I also found that one case of possible corruption was not caught, which is now fixed.
2023-10-25 14:53:50 +02:00
moomin
a8617c6d4d
txpool/legacypool: remove already known error in legacypool ( #28400 )
2023-10-23 18:36:11 +03:00
rjl493456442
3853f50082
trie/triedb/pathdb, core/rawdb: enhance error message in freezer ( #28198 )
...
This PR adds more error message for debugging purpose.
2023-10-23 15:46:39 +02:00
hyunchel
062598bb40
core/blockchain: fix typos and grammar ( #28295 )
2023-10-23 15:23:41 +02:00
aaronbuchwald
6c6982163b
core/state/pruner: track number of skipped items during state pruning ( #28368 )
2023-10-23 13:24:32 +08:00
kevaundray
a6a0ae45b6
crypto/kzg4844: use the new trusted setup file and format ( #28383 )
...
Changes the trusted_setup to the one created during the kzg-ceremony. The trusted setup file can be found in the consensus specs: https://github.com/ethereum/consensus-specs/blob/dev/presets/mainnet/trusted_setups/trusted_setup_4096.json
---------
Co-authored-by: Marius van der Wijden <m.vanderwijden@live.de>
2023-10-22 16:05:04 +02:00
Martin Holst Swende
c1d5a012ea
core/state, tests: fix memory leak via fastcache ( #28387 )
...
This change fixes a memory leak, when running either state-tests or blockchain-tests, we allocate a `1MB` fastcache during snapshot generation. `fastcache` is a bit special, and requires a `Reset()` (it has it's own memory allocator).
The `1MB` was hidden [here](https://github.com/ethereum/go-ethereum/blob/master/tests/state_test_util.go#L333 ) and [here](https://github.com/ethereum/go-ethereum/blob/master/tests/block_test_util.go#L146 ) respectively.
2023-10-20 13:35:49 +02:00
lightclient
20d5256e40
core/chain_makers: add SetParentBeaconRoot(..) to chain makers ( #28252 )
2023-10-17 14:43:46 +02:00