Matthieu Vachon
db63814064
Now passing finality information if available
2023-08-03 16:39:42 -04:00
Matthieu Vachon
84af9dee0c
Removed a FIXME and improved known Firehose issue description
2023-08-02 14:14:57 -04:00
Matthieu Vachon
1792f99bb0
Few small changes around the patch
2023-08-02 14:07:24 -04:00
Matthieu Vachon
1df06e296d
Make patch simpler, added clear indications where to fix Firehose know instrumentation issues
2023-08-02 13:55:28 -04:00
Matthieu Vachon
61b11e83e9
Bring in latest changes that make our new Ethereum patch 1:1
2023-08-02 13:22:12 -04:00
Matthieu Vachon
ec154ca444
More fixes towards a working ordinal implementation
2023-08-02 11:48:01 -04:00
Matthieu Vachon
17dcacc575
Removed now unused code
2023-08-02 11:35:06 -04:00
Matthieu Vachon
d1ad0e35d5
Re-implemented OnGenesisBlock using the tracer itself
2023-08-02 11:31:25 -04:00
Matthieu Vachon
09df0e0c95
Merge branch 'extended-tracer' into feature/firehose-extended-tracer
...
# Conflicts:
# core/vm/evm.go
2023-08-02 09:49:36 -04:00
Matthieu Vachon
7589c3c8d5
Fixed back missing latest differences, bring back GasChange and proper handling of them, fully aligned
2023-08-02 09:43:32 -04:00
Matthieu Vachon
32c14945da
Full OnGasConsumed loop and added GasChangeReason
...
With this change, the full gas loop of a transaction can be tracked going from initial balance (`gasLimit`) back down to 0.
I validated on my regression test suite that those conditions applied to all transactions I have:
- First `OnGasConsumed` is always going from 0 -> `trx.gasLimit`
- Last `OnGasConsumed` "new value" is always 0
- trx.gasLimit - last balance of last `OnGasConsumed` is equal to `trx.gasUsed`
The addition of `reason` make it possible for a logger to filter out unwanted signal, for example one could want to drop all OpCode related gas change and only cares about "transaction" level. The reason is also a good thing for visibility and for creating powerful debug tools for Ethereum transaction execution.
2023-08-02 09:16:45 -04:00
Matthieu Vachon
ed4349ca90
Fixed BalanceChange for suicide withdraw not being recorded
2023-07-31 21:46:51 -04:00
Matthieu Vachon
2b4614152b
More work towards a working 1:1 Firehose tracer patch
2023-07-31 16:53:16 -04:00
Matthieu Vachon
c5eb5faa5f
Further work towards having a compatible Firehose code (at battlefied block #15 )
2023-07-28 17:05:21 -04:00
Matthieu Vachon
b9bcdef066
More fixes towards a working Firehose patch
2023-07-27 16:32:17 -04:00
Sina Mahmoodi
f9f377d64f
capture call validation errors
2023-07-27 21:57:40 +02:00
Matthieu Vachon
b797e5d261
More fixes towards a 1-1 Firehose tracer against old model
2023-07-27 15:37:36 -04:00
Matthieu Vachon
4e834c10d0
Merge remote-tracking branch 's1na/extended-tracer' into feature/firehose-extended-tracer
...
# Conflicts:
# core/state/state_object.go
# core/state/statedb_test.go
# core/state_transition.go
# core/txpool/legacypool/legacypool_test.go
# core/vm/evm.go
# core/vm/instructions.go
# eth/api_debug_test.go
# eth/tracers/js/tracer_test.go
# go.sum
2023-07-27 11:47:40 -04:00
Sina Mahmoodi
b2b32e6ff6
fix merge conflict
2023-07-27 14:41:47 +02:00
Matthieu Vachon
8d75122911
Fixed a bunch of small issues here and there (genesis block is equal to oracle now!)
2023-07-26 20:22:40 -04:00
Matthieu Vachon
ad1293e8f9
Completed patch porting, now fixing bugs
2023-07-26 14:38:01 -04:00
Sina Mahmoodi
2faf3dbfd6
emit err on tx validation failure
2023-07-26 20:07:13 +02:00
Matthieu Vachon
5466fa3133
Capture balance reason ( #12 )
2023-07-26 10:49:04 +02:00
Matthieu Vachon
75e8c96f4e
WIP
2023-07-25 10:40:30 -04:00
Matthieu Vachon
939c4ec7d8
Merge remote-tracking branch 's1na/extended-tracer' into feature/firehose-extended-tracer
...
# Conflicts:
# core/blockchain.go
# eth/tracers/printer.go
2023-07-20 14:35:52 -04:00
Matthieu Vachon
e93892267f
Continued our work on new Firehose tracer
2023-07-19 09:34:40 -04:00
jwasinger
d233b6b23a
core: replace instances of 'suicide' with 'selfdestruct' to improve code consistency. ( #27716 )
...
---------
Co-authored-by: Martin Holst Swende <martin@swende.se>
Co-authored-by: lightclient <14004106+lightclient@users.noreply.github.com>
2023-07-15 10:35:30 -04:00
Ryan Schneider
517ac886d4
eth/tracers/native: panic on memory read in prestateTracer ( #27691 )
...
Co-authored-by: Sina Mahmoodi <itz.s1na@gmail.com>
2023-07-13 14:44:42 +02:00
Delweng
1e069cf802
eth/tracers: add ReturnData in the tracer's response ( #27704 )
...
The struct logger (or opcode tracer) was missing the return data field even
if this was explicitly enabled by user via `"enableReturnData": true` in the config.
This PR fixes this issue.
Co-authored-by: Sina Mahmoodi <itz.s1na@gmail.com>
2023-07-13 14:43:25 +02:00
Sina Mahmoodi
2a59d24b73
add genesis alloc to hook
2023-07-12 17:38:19 +02:00
Sina Mahmoodi
b692a68a3b
add final & safe headers to BlockStart
2023-07-12 17:22:52 +02:00
Sina Mahmoodi
0aeec7f1b5
mv td to OnBlockStart
2023-07-12 16:44:00 +02:00
Matthieu Vachon
7cc206e494
Merge remote-tracking branch 's1na/extended-tracer' into feature/firehose-extended-tracer
2023-07-11 21:08:34 -04:00
Matthieu Vachon
daa722a93f
Initial working Firehose native tracer implementation
2023-07-11 21:08:05 -04:00
Sina Mahmoodi
add825e9c9
fix BlockEnd in case of err
2023-07-10 19:01:55 +02:00
Sina Mahmoodi
d799c68159
nicer printer output
2023-07-10 17:53:19 +02:00
Sina Mahmoodi
3cabef4c66
capture block end errors
2023-06-30 15:29:38 +02:00
Sina Mahmoodi
54171ee4a8
pass env in TxStart
2023-06-28 21:58:38 +02:00
Sina Mahmoodi
619ac2948c
provide StateLogger for short-lived tracers
2023-06-28 18:00:44 +02:00
Sina Mahmoodi
378781654f
Upgrade TxStart and TxEnd hooks
2023-06-28 13:28:53 +02:00
Guillaume Ballet
85b8d1c06c
params, trie: add verkle fork management + upgrade go-verkle ( #27464 )
...
* params, trie: add verkle fork management + upgrade go-verkle
* remove the two verkle files
* core, eth, params: add missing function
* Gary's feedback
* remove trie/utils/verkle.go
* add verkle block override
---------
Co-authored-by: Gary Rong <garyrong0905@gmail.com>
2023-06-28 12:08:48 +03:00
Sina Mahmoodi
ee791b2b20
add gas consumption hook
2023-06-23 16:40:58 +02:00
Sina Mahmoodi
84d6432708
add log and newAccount hooks
2023-06-22 13:10:05 +02:00
Sina Mahmoodi
f67ac095a6
add hooks to state object & genesis
2023-06-20 13:43:45 +02:00
Dan Laine
b1ef0bfe03
eth: use slices package for sorting ( #27490 )
...
Also adds Hash.Less method for sorting purposes.
---------
Co-authored-by: Felix Lange <fjl@twurst.com>
2023-06-19 23:38:57 +02:00
Sina Mahmoodi
e25065bfc3
capture keccak preimage
2023-06-15 18:42:57 +02:00
Sina Mahmoodi
642a374b9d
Initial support for extended tracer
2023-06-15 17:40:49 +02:00
Sina Mahmoodi
7823ff6d06
eth/tracers: refactor exporting js buffer ( #27472 )
...
We had to do this workaround because it wasn't possible to export typed arrays from
JS to []byte. This was added in dop251/goja@2352993 , so we can use the better way now.
2023-06-14 19:07:24 +02:00
Delweng
8a78a4f79f
eth,consensus: replace noarg fmt.Errorf with errors.New ( #27330 )
...
* eth: replace noarg fmt.Errorf with errors.New
Signed-off-by: jsvisa <delweng@gmail.com>
* consensus: replace noarg fmt.Errorf with errors.New
Signed-off-by: jsvisa <delweng@gmail.com>
---------
Signed-off-by: jsvisa <delweng@gmail.com>
2023-05-25 02:57:34 -04:00
minh-bq
a190da9d68
eth/tracers: fix flatCallTracer crasher ( #27304 )
...
FlatCallTracer had a crasher when it was passed `onlyTopCall: true` as config.
This PR ignores config fields inherited from the normal call tracer.
2023-05-23 11:02:50 +02:00