Commit graph

18 commits

Author SHA1 Message Date
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
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
2faf3dbfd6 emit err on tx validation failure 2023-07-26 20:07:13 +02: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
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
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
378781654f Upgrade TxStart and TxEnd hooks 2023-06-28 13:28:53 +02: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
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