Commit graph

18 commits

Author SHA1 Message Date
Matthieu Vachon
3cbe387cd6 Added a backward compatibility fix for aligning with Firehose 2.3 2024-12-20 16:20:00 -05:00
Matthieu Vachon
2ff5f62b6f Added a an extra logging for storage change in trace mode 2024-12-20 16:19:23 -05:00
Matthieu Vachon
d1f03614a4 Merge tag 'v1.14.12' into firehose-fh3.0
# Conflicts:
#	cmd/geth/misccmd.go
#	core/state/statedb.go
#	core/state_processor.go
#	go.mod
2024-12-17 16:01:41 -05:00
Matthieu Vachon
dccb2f36cd Fixed the rare case where a tx receipt is nil
I think this cannot happen in the wild while syncing block, otherwise it would mean the transaction would have no receipt which is impossible.

However in testing conditions or when doing "speculative exeuction", it's possible to get that condition.

This is just to better deal with a potential `nil pointer exception`.
2024-05-01 13:41:36 -04:00
Matthieu Vachon
f0dcb13f6b Fixed opcode representation when debugging via firehose(Info|Debug|Trace) call 2024-05-01 13:41:36 -04:00
Matthieu Vachon
f8c889f892 Fixed Kecakke256 computation panics in some transaction state
The EVM does memory expansion **after** notifying us about OnOpcode which we use to compute Keccak256 pre-images now. This creates problem when we want to retrieve the preimage data because the memory is not expanded yet but in the EVM is going to work because the memory is going to be expanded before the operation is actually executed so the memory will be of the correct size.

In this situation, we must pad with zeroes when the memory is not big enough.
2024-05-01 13:41:31 -04:00
Matthieu Vachon
c327b4d7fc Added first pass on integration tests 2024-04-29 17:10:51 -04:00
Matthieu Vachon
e3a43bf49c Removed callerView
This can work only if resolve at call site directly, which we don't want to do.
2024-04-29 17:10:37 -04:00
Matthieu Vachon
27ace57951 Renamed callerViewer to _callViewer to align with other "view" structs 2024-04-29 11:50:19 -04:00
Matthieu Vachon
8d802608f5 Adding standard Geth logging on NewFirehose and on OnBlockchainInit 2024-04-29 11:34:59 -04:00
Matthieu Vachon
bb041978a7 Added back OnSystemCallStart/End that were lost in update to latest Geth version 2024-04-29 10:37:32 -04:00
Matthieu Vachon
a64a69dbfc Merge remote-tracking branch 'origin/master' into firehose-fh3.0
# Conflicts:
#	go.mod
2024-04-23 15:40:14 -04:00
Matthieu Vachon
7ae7701b37 Added further tracing on config and apply backward compatibility value 2024-04-22 14:22:14 -04:00
Matthieu Vachon
2108b9d42a Fixed a few linting errors 2024-04-22 14:22:03 -04:00
Matthieu Vachon
ad7fdb83cc Ported various improvements done in the Firehose tracer in other supported chains 2024-04-17 16:15:59 -04:00
Matthieu Vachon
262c3117f6 Merge remote-tracking branch 'origin/master' into firehose-fh3.0
# Conflicts:
#	cmd/evm/internal/t8ntool/execution.go
#	cmd/evm/internal/t8ntool/transition.go
#	cmd/utils/flags.go
#	consensus/beacon/consensus.go
#	core/blockchain.go
#	core/state_processor.go
#	core/tracing/hooks.go
#	core/vm/runtime/runtime.go
#	eth/backend.go
#	eth/tracers/api.go
#	eth/tracers/dir.go
#	eth/tracers/directory/tracers.go
#	eth/tracers/internal/tracetest/calltrace_test.go
#	eth/tracers/internal/tracetest/flat_calltrace_test.go
#	eth/tracers/js/goja.go
#	eth/tracers/js/tracer_test.go
#	eth/tracers/live/noop.go
#	eth/tracers/logger/logger.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/noop.go
#	eth/tracers/native/prestate.go
#	eth/tracers/tracers.go
#	go.mod
2024-03-25 14:45:08 -04:00
Matthieu Vachon
5cf6340406 Fixed new keccak256 implementation that wasn't working properly 2024-03-15 10:57:39 -04:00
Matthieu Vachon
d673f1927c Added Firehose 3.0 backport tracer 2024-03-15 10:56:57 -04:00