Skip to content

Commit 7ff71e2

Browse files
author
Eela Nagaraj
authored
Set interpreter config to debug as well in evm.SetDebug and update tracing tests (#2061)
* Use EVM GetDebug in interpreter instead of value stored in cfg * Update SetDebug to set both config values (solution 2) * Get native tracing tests running on master * Update call_tracer test data such that tests pass * Remove stale TODO * Undo this: last CI sanity check * Add test and re-add debug fix * Add regression test * Fix lint
1 parent 1ecf416 commit 7ff71e2

28 files changed

+167
-76
lines changed

core/vm/evm.go

+3
Original file line numberDiff line numberDiff line change
@@ -193,7 +193,10 @@ func (evm *EVM) GetDebug() bool {
193193
}
194194

195195
func (evm *EVM) SetDebug(value bool) {
196+
// Set both of these in sync since they refer to the same config data
197+
// and are interchangeably used in the interpreter & evm.
196198
evm.Config.Debug = value
199+
evm.interpreter.cfg.Debug = value
197200
}
198201

199202
// Call executes the contract associated with the addr with the given input as

e2e_test/e2e_test.go

+27
Original file line numberDiff line numberDiff line change
@@ -297,6 +297,33 @@ func TestBlockTracingConcurrentMapAccess(t *testing.T) {
297297
wg.Wait()
298298
}
299299

300+
// Sends and traces a single native transfer.
301+
// Helpful for debugging issues in TestBlockTracingConcurrentMapAccess.
302+
func TestBlockTracingSequentialAccess(t *testing.T) {
303+
ac := test.AccountConfig(1, 2)
304+
gc, ec, err := test.BuildConfig(ac)
305+
require.NoError(t, err)
306+
network, shutdown, err := test.NewNetwork(ac, gc, ec)
307+
require.NoError(t, err)
308+
defer shutdown()
309+
ctx, cancel := context.WithTimeout(context.Background(), time.Second*300)
310+
defer cancel()
311+
n := network[0]
312+
accounts := test.Accounts(ac.DeveloperAccounts(), gc.ChainConfig())
313+
// Send one celo from external account 0 to 1 via node 0.
314+
tx, err := accounts[0].SendCelo(ctx, accounts[1].Address, 1, n)
315+
require.NoError(t, err)
316+
// Wait for the whole network to process the transaction.
317+
err = network.AwaitTransactions(ctx, tx)
318+
require.NoError(t, err)
319+
b := n.Tracker.GetProcessedBlockForTx(tx.Hash())
320+
c, err := rpc.DialContext(ctx, n.WSEndpoint())
321+
require.NoError(t, err)
322+
var result []interface{}
323+
err = c.CallContext(ctx, &result, "debug_traceBlockByNumber", hexutil.EncodeUint64(uint64(int(b.NumberU64()))))
324+
require.NoError(t, err)
325+
}
326+
300327
type rpcCustomTransaction struct {
301328
BlockNumber *hexutil.Big `json:"blockNumber"`
302329
BlockHash *common.Hash `json:"blockHash"`

eth/tracers/api_test.go

+49
Original file line numberDiff line numberDiff line change
@@ -495,6 +495,55 @@ func TestTraceTransaction(t *testing.T) {
495495
}
496496
}
497497

498+
// Regression test for debug get/set logic in the EVM & Interpreter.
499+
// Include registry to ensure that Celo-specific EVM Call's within
500+
// Tobin Tax and fee distribution logic are triggered.
501+
func TestTraceTransactionWithRegistryDeployed(t *testing.T) {
502+
t.Parallel()
503+
504+
// Initialize test accounts
505+
accounts := newAccounts(2)
506+
genesis := &core.Genesis{Alloc: core.GenesisAlloc{
507+
accounts[0].addr: {Balance: big.NewInt(params.Ether)},
508+
accounts[1].addr: {Balance: big.NewInt(params.Ether)},
509+
common.HexToAddress("0xce10"): { // Registry Proxy
510+
Code: testutil.RegistryProxyOpcodes,
511+
Storage: map[common.Hash]common.Hash{
512+
common.HexToHash("0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc"): common.HexToHash("0xce11"), // Registry Implementation
513+
common.HexToHash("0x91646b8507bf2e54d7c3de9155442ba111546b81af1cbdd1f68eeb6926b98d58"): common.HexToHash("0xd023"), // Governance Proxy
514+
},
515+
Balance: big.NewInt(0),
516+
},
517+
common.HexToAddress("0xce11"): { // Registry Implementation
518+
Code: testutil.RegistryOpcodes,
519+
Balance: big.NewInt(0),
520+
},
521+
}}
522+
523+
target := common.Hash{}
524+
signer := types.HomesteadSigner{}
525+
api := NewAPI(newTestBackend(t, 1, genesis, func(i int, b *core.BlockGen) {
526+
// Transfer from account[0] to account[1]
527+
// value: 1000 wei
528+
// fee: 0 wei
529+
tx, _ := types.SignTx(types.NewTransaction(uint64(i), accounts[1].addr, big.NewInt(1000), params.TxGas, nil, nil, nil, nil, nil), signer, accounts[0].key)
530+
b.AddTx(tx)
531+
target = tx.Hash()
532+
}))
533+
result, err := api.TraceTransaction(context.Background(), target, nil)
534+
if err != nil {
535+
t.Errorf("Failed to trace transaction %v", err)
536+
}
537+
if !reflect.DeepEqual(result, &ethapi.ExecutionResult{
538+
Gas: params.TxGas,
539+
Failed: false,
540+
ReturnValue: "",
541+
StructLogs: []ethapi.StructLogRes{},
542+
}) {
543+
t.Error("Transaction tracing result is different")
544+
}
545+
}
546+
498547
func TestTraceBlock(t *testing.T) {
499548
t.Parallel()
500549

eth/tracers/testdata/call_tracer/create.json

+6-5
Large diffs are not rendered by default.

eth/tracers/testdata/call_tracer/deep_calls.json

+7-12
Large diffs are not rendered by default.

eth/tracers/testdata/call_tracer/delegatecall.json

+7-7
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@
2828
"nonce": "1",
2929
"storage": {}
3030
},
31-
"0xa94f5374Fce5edBC8E2a8697C15331677e6EbF0B": {
31+
"0xa529806c67cc6486d4d62024471772f47f6fd672": {
3232
"balance": "0x67820e39ac8fe9800",
3333
"code": "0x",
3434
"nonce": "68",
@@ -43,7 +43,8 @@
4343
"eip150Hash": "0x41941023680923e0fe4d74a34bdac8141f2540e3ae90623718e47d66d1ca4a2d",
4444
"eip155Block": 10,
4545
"eip158Block": 10,
46-
"homesteadBlock": 0
46+
"homesteadBlock": 0,
47+
"donutBlock": 0
4748
},
4849
"extraData": "0xd783010502846765746887676f312e372e33856c696e7578",
4950
"hash": "0x0855914bdc581bccdc62591fd438498386ffb59ea4d5361ed5c3702e26e2c72f",
@@ -54,7 +55,7 @@
5455
"timestamp": "1479735912",
5556
"totalDifficulty": "90744064339"
5657
},
57-
"input": "0xf88a448504a817c800832dc6c08094269296dddce321a6bcbaa2f0181127593d732cba80a47065cb480000000000000000000000001523e55a1ca4efbae03355775ae89f8d7699ad9e2aa06abe4fd776b91cb479599b946e0a813be4fed0787c4f6cca12b3a8b64f996c7aa075e77565fccca9e28c79f4656d6da115d3bd358f0cd1b25d39ef6d7accdbfa2d",
58+
"input": "0xf889448504a817c800832dc6c094269296dddce321a6bcbaa2f0181127593d732cba80a47065cb480000000000000000000000001523e55a1ca4efbae03355775ae89f8d7699ad9e29a080ed81e4c5e9971a730efab4885566e2c868cd80bd4166d0ed8c287fdf181650a069d7c49215e3d4416ad239cd09dbb71b9f04c16b33b385d14f40b618a7a65115",
5859
"result": {
5960
"calls": [
6061
{
@@ -63,7 +64,7 @@
6364
"from": "0x13204f5d64c28326fd7bd05fd4ea855302d7f2ff",
6465
"gas": "0x2bf459",
6566
"gasUsed": "0x2aa",
66-
"input": "0x7d65837a0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a94f5374Fce5edBC8E2a8697C15331677e6EbF0B",
67+
"input": "0x7d65837a0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a529806c67cc6486d4d62024471772f47f6fd672",
6768
"output": "0x0000000000000000000000000000000000000000000000000000000000000001",
6869
"to": "0x42b02b5deeb78f34cd5ac896473b63e6c99a71a2",
6970
"type": "DELEGATECALL"
@@ -72,18 +73,17 @@
7273
"from": "0x269296dddce321a6bcbaa2f0181127593d732cba",
7374
"gas": "0x2cae73",
7475
"gasUsed": "0xa9d",
75-
"input": "0x5dbe47e8000000000000000000000000a94f5374Fce5edBC8E2a8697C15331677e6EbF0B",
76+
"input": "0x5dbe47e8000000000000000000000000a529806c67cc6486d4d62024471772f47f6fd672",
7677
"output": "0x0000000000000000000000000000000000000000000000000000000000000001",
7778
"to": "0x13204f5d64c28326fd7bd05fd4ea855302d7f2ff",
7879
"type": "CALL",
7980
"value": "0x0"
8081
}
8182
],
82-
"from": "0xa94f5374Fce5edBC8E2a8697C15331677e6EbF0B",
83+
"from": "0xa529806c67cc6486d4d62024471772f47f6fd672",
8384
"gas": "0x2d6e28",
8485
"gasUsed": "0x64bd",
8586
"input": "0x7065cb480000000000000000000000001523e55a1ca4efbae03355775ae89f8d7699ad9e",
86-
"output": "0x",
8787
"to": "0x269296dddce321a6bcbaa2f0181127593d732cba",
8888
"type": "CALL",
8989
"value": "0x0"

eth/tracers/testdata/call_tracer/inner_create_oog_outer_throw.json

+2-1
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,8 @@
3838
"eip155Block": 10,
3939
"eip158Block": 10,
4040
"ethash": {},
41-
"homesteadBlock": 0
41+
"homesteadBlock": 0,
42+
"donutBlock": 0
4243
},
4344
"difficulty": "3451177886",
4445
"extraData": "0x4554482e45544846414e532e4f52472d4641313738394444",

eth/tracers/testdata/call_tracer/inner_instafail.json

+1
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,7 @@
2828
"config": {
2929
"chainId": 3,
3030
"homesteadBlock": 0,
31+
"donutBlock": 0,
3132
"daoForkSupport": true,
3233
"eip150Block": 0,
3334
"eip150Hash": "0x41941023680923e0fe4d74a34bdac8141f2540e3ae90623718e47d66d1ca4a2d",

eth/tracers/testdata/call_tracer/inner_throw_outer_revert.json

+6-5
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@
1717
"0x0000000000000000000000000000000000000000000000000000000000000008": "0x000000000000000000000000000000000000000000000000000000005a3b38e6"
1818
}
1919
},
20-
"0xa94f5374Fce5edBC8E2a8697C15331677e6EbF0B": {
20+
"0xd4fcab9f0a6dc0493af47c864f6f17a8a5e2e826": {
2121
"balance": "0x2a2dd979a35cf000",
2222
"code": "0x",
2323
"nonce": "0",
@@ -38,7 +38,8 @@
3838
"eip150Hash": "0x41941023680923e0fe4d74a34bdac8141f2540e3ae90623718e47d66d1ca4a2d",
3939
"eip155Block": 10,
4040
"eip158Block": 10,
41-
"homesteadBlock": 0
41+
"homesteadBlock": 0,
42+
"donutBlock": 0
4243
},
4344
"extraData": "0x566961425443",
4445
"hash": "0x6f37eb930a25da673ea1bb80fd9e32ddac19cdf7cd4bb2eac62cc13598624077",
@@ -49,22 +50,22 @@
4950
"timestamp": "1513681246",
5051
"totalDifficulty": "7162347056825919"
5152
},
52-
"input": "0xf86e808504e3b292008307dfa6809433056b5dcac09a9b4becad0e1dcf92c19bd0af76880e92596fd6290000802aa02984625ecd92a9c9b0e64e11354ac402fe46be84e76b0cb321daaf017c562169a01a6d683dec97fc72bf90b220281c963af825e1b103dfe4176ac87393847b5aa4",
53+
"input": "0xf86d808504e3b292008307dfa69433056b5dcac09a9b4becad0e1dcf92c19bd0af76880e92596fd62900008029a0e5f27bb66431f7081bb7f1f242003056d7f3f35414c352cd3d1848b52716dac2a07d0be78980edb0bd2a0678fc53aa90ea9558ce346b0d947967216918ac74ccea",
5354
"result": {
5455
"calls": [
5556
{
5657
"error": "invalid opcode: opcode 0xfe not defined",
5758
"from": "0x33056b5dcac09a9b4becad0e1dcf92c19bd0af76",
5859
"gas": "0x75fe3",
5960
"gasUsed": "0x75fe3",
60-
"input": "0xa9059cbb000000000000000000000000a94f5374Fce5edBC8E2a8697C15331677e6EbF0B00000000000000000000000000000000000000000000000000000000000002f4",
61+
"input": "0xa9059cbb000000000000000000000000d4fcab9f0a6dc0493af47c864f6f17a8a5e2e82600000000000000000000000000000000000000000000000000000000000002f4",
6162
"to": "0xe819f024b41358d2c08e3a868a5c5dd0566078d4",
6263
"type": "CALL",
6364
"value": "0x0"
6465
}
6566
],
6667
"error": "execution reverted",
67-
"from": "0xa94f5374Fce5edBC8E2a8697C15331677e6EbF0B",
68+
"from": "0xd4fcab9f0a6dc0493af47c864f6f17a8a5e2e826",
6869
"gas": "0x78d9e",
6970
"gasUsed": "0x76fc0",
7071
"input": "0x",

eth/tracers/testdata/call_tracer/oog.json

+5-4
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@
1414
"0x296b66049cc4f9c8bf3d4f14752add261d1a980b39bdd194a7897baf39ac7579": "0x0000000000000000000000000000000000000000033b2e3c9fc9653f9e72b1e0"
1515
}
1616
},
17-
"0xa94f5374Fce5edBC8E2a8697C15331677e6EbF0B": {
17+
"0x94194bc2aaf494501d7880b61274a169f6502a54": {
1818
"balance": "0xea8c39a876d19888d",
1919
"code": "0x",
2020
"nonce": "265",
@@ -29,7 +29,8 @@
2929
"eip150Hash": "0x41941023680923e0fe4d74a34bdac8141f2540e3ae90623718e47d66d1ca4a2d",
3030
"eip155Block": 10,
3131
"eip158Block": 10,
32-
"homesteadBlock": 0
32+
"homesteadBlock": 0,
33+
"donutBlock": 0
3334
},
3435
"extraData": "0x4554482e45544846414e532e4f52472d4641313738394444",
3536
"hash": "0x03a0f62a8106793dafcfae7b75fd2654322062d585a19cea568314d7205790dc",
@@ -40,10 +41,10 @@
4041
"timestamp": "1513675347",
4142
"totalDifficulty": "7160543502214733"
4243
},
43-
"input": "0xf8ac820109855d21dba00082ca1d809443064693d3d38ad6a7cb579e0d6d9718c8aa6b6280b844a9059cbb000000000000000000000000e77b1ac803616503510bed0086e3a7be2627a69900000000000000000000000000000000000000000000000000000009502f90002aa0484a5afb71cdbc5c9430658ce75cd5020beb704312edd40a426222a3179bfa69a063323c4addf3df546cf5b4738cc3c1560ac280d949dabfacd521417e45a8af2f",
44+
"input": "0xf8ab820109855d21dba00082ca1d9443064693d3d38ad6a7cb579e0d6d9718c8aa6b6280b844a9059cbb000000000000000000000000e77b1ac803616503510bed0086e3a7be2627a69900000000000000000000000000000000000000000000000000000009502f90001ba0ce3ad83f5530136467b7c2bb225f406bd170f4ad59c254e5103c34eeabb5bd69a0455154527224a42ab405cacf0fe92918a75641ce4152f8db292019a5527aa956",
4445
"result": {
4546
"error": "out of gas",
46-
"from": "0xa94f5374Fce5edBC8E2a8697C15331677e6EbF0B",
47+
"from": "0x94194bc2aaf494501d7880b61274a169f6502a54",
4748
"gas": "0x7045",
4849
"gasUsed": "0x7045",
4950
"input": "0xa9059cbb000000000000000000000000e77b1ac803616503510bed0086e3a7be2627a69900000000000000000000000000000000000000000000000000000009502f9000",

eth/tracers/testdata/call_tracer/revert.json

+5-4
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66
},
77
"genesis": {
88
"alloc": {
9-
"0xa94f5374Fce5edBC8E2a8697C15331677e6EbF0B": {
9+
"0x0f6cef2b7fbb504782e35aa82a2207e816a2b7a9": {
1010
"balance": "0x2a3fc32bcc019283",
1111
"code": "0x",
1212
"nonce": "10",
@@ -27,7 +27,8 @@
2727
"eip150Hash": "0x41941023680923e0fe4d74a34bdac8141f2540e3ae90623718e47d66d1ca4a2d",
2828
"eip155Block": 10,
2929
"eip158Block": 10,
30-
"homesteadBlock": 0
30+
"homesteadBlock": 0,
31+
"donutBlock": 0
3132
},
3233
"extraData": "0x4554482e45544846414e532e4f52472d4641313738394444",
3334
"hash": "0xa07b3d6c6bf63f5f981016db9f2d1d93033833f2c17e8bf7209e85f1faf08076",
@@ -38,10 +39,10 @@
3839
"timestamp": "1513673552",
3940
"totalDifficulty": "7160066586979149"
4041
},
41-
"input": "0xf9018c0a8505d21dba00832dc6c08094abbcd5b340c80b5f1c0545c04c987b87310296ae80b9012473b40a5c000000000000000000000000400de2e016bda6577407dfc379faba9899bc73ef0000000000000000000000002cc31912b2b0f3075a87b3640923d45a26cef3ee000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000800000000000000000000000000000000000000000000000000000000000000064d79d8e6c7265636f76657279416464726573730000000000000000000000000000000000000000000000000000000000383e3ec32dc0f66d8fe60dbdc2f6815bdf73a988383e3ec32dc0f66d8fe60dbdc2f6815bdf73a9880000000000000000000000000000000000000000000000000000000000000000000000000000000029a0f73975fdfee7eefd964700992ff4c084980ab08c7f425f8e0786ba168505ec90a01f6aa24088453a5762e4281af7bf111be5b62cb64f58e6aaa85dc5137a50e6a4",
42+
"input": "0xf9018b0a8505d21dba00832dc6c094abbcd5b340c80b5f1c0545c04c987b87310296ae80b9012473b40a5c000000000000000000000000400de2e016bda6577407dfc379faba9899bc73ef0000000000000000000000002cc31912b2b0f3075a87b3640923d45a26cef3ee000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000800000000000000000000000000000000000000000000000000000000000000064d79d8e6c7265636f76657279416464726573730000000000000000000000000000000000000000000000000000000000383e3ec32dc0f66d8fe60dbdc2f6815bdf73a988383e3ec32dc0f66d8fe60dbdc2f6815bdf73a988000000000000000000000000000000000000000000000000000000000000000000000000000000001ba0fd659d76a4edbd2a823e324c93f78ad6803b30ff4a9c8bce71ba82798975c70ca06571eecc0b765688ec6c78942c5ee8b585e00988c0141b518287e9be919bc48a",
4243
"result": {
4344
"error": "execution reverted",
44-
"from": "0xa94f5374Fce5edBC8E2a8697C15331677e6EbF0B",
45+
"from": "0x0f6cef2b7fbb504782e35aa82a2207e816a2b7a9",
4546
"gas": "0x2d55e8",
4647
"gasUsed": "0xc3",
4748
"input": "0x73b40a5c000000000000000000000000400de2e016bda6577407dfc379faba9899bc73ef0000000000000000000000002cc31912b2b0f3075a87b3640923d45a26cef3ee000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000800000000000000000000000000000000000000000000000000000000000000064d79d8e6c7265636f76657279416464726573730000000000000000000000000000000000000000000000000000000000383e3ec32dc0f66d8fe60dbdc2f6815bdf73a988383e3ec32dc0f66d8fe60dbdc2f6815bdf73a98800000000000000000000000000000000000000000000000000000000000000000000000000000000",

eth/tracers/testdata/call_tracer/revert_reason.json

+3-2
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,8 @@
3535
"eip155Block": 10,
3636
"eip158Block": 10,
3737
"ethash": {},
38-
"homesteadBlock": 0
38+
"homesteadBlock": 0,
39+
"donutBlock": 0
3940
},
4041
"difficulty": "3509749784",
4142
"extraData": "0x4554482e45544846414e532e4f52472d4641313738394444",
@@ -54,7 +55,7 @@
5455
"error": "execution reverted",
5556
"from": "0xf7579c3d8a669c89d5ed246a22eb6db8f6fedbf1",
5657
"gas": "0x2d7308",
57-
"gasUsed": "0x588",
58+
"gasUsed": "0x330",
5859
"input": "0x5c19a95c000000000000000000000000f7579c3d8a669c89d5ed246a22eb6db8f6fedbf1",
5960
"to": "0xf58833cf0c791881b494eb79d461e08a1f043f52",
6061
"type": "CALL",

eth/tracers/testdata/call_tracer/selfdestruct.json

+2-1
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,8 @@
3636
"eip155Block": 10,
3737
"eip158Block": 10,
3838
"ethash": {},
39-
"homesteadBlock": 0
39+
"homesteadBlock": 0,
40+
"donutBlock": 0
4041
},
4142
"difficulty": "3509749784",
4243
"extraData": "0x4554482e45544846414e532e4f52472d4641313738394444",

eth/tracers/testdata/call_tracer/simple.json

+2-1
Original file line numberDiff line numberDiff line change
@@ -41,7 +41,8 @@
4141
"eip155Block": 10,
4242
"eip158Block": 10,
4343
"ethash": {},
44-
"homesteadBlock": 0
44+
"homesteadBlock": 0,
45+
"donutBlock": 0
4546
},
4647
"difficulty": "3509749784",
4748
"extraData": "0x4554482e45544846414e532e4f52472d4641313738394444",

eth/tracers/testdata/call_tracer/throw.json

+5-4
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66
},
77
"genesis": {
88
"alloc": {
9-
"0xa94f5374Fce5edBC8E2a8697C15331677e6EbF0B": {
9+
"0x70c9217d814985faef62b124420f8dfbddd96433": {
1010
"balance": "0x4ecd70668f5d854a",
1111
"code": "0x",
1212
"nonce": "1638",
@@ -19,7 +19,7 @@
1919
"storage": {
2020
"0x0000000000000000000000000000000000000000000000000000000000000001": "0x0000000000000000000000002cccf5e0538493c235d1c5ef6580f77d99e91396",
2121
"0x0000000000000000000000000000000000000000000000000000000000000002": "0x00000000000000000000000000000000000000000000000000000000000061a9",
22-
"0x0000000000000000000000000000000000000000000000000000000000000005": "0x000000000000000000000000a94f5374Fce5edBC8E2a8697C15331677e6EbF0B"
22+
"0x0000000000000000000000000000000000000000000000000000000000000005": "0x00000000000000000000000070c9217d814985faef62b124420f8dfbddd96433"
2323
}
2424
}
2525
},
@@ -31,7 +31,8 @@
3131
"eip150Hash": "0x41941023680923e0fe4d74a34bdac8141f2540e3ae90623718e47d66d1ca4a2d",
3232
"eip155Block": 10,
3333
"eip158Block": 10,
34-
"homesteadBlock": 0
34+
"homesteadBlock": 0,
35+
"donutBlock": 0
3536
},
3637
"extraData": "0xd783010502846765746887676f312e372e33856c696e7578",
3738
"hash": "0xe23e8d4562a1045b70cbc99fefb20c101a8f0fc8559a80d65fea8896e2f1d46e",
@@ -41,7 +42,7 @@
4142
"timestamp": "1479891641",
4243
"totalDifficulty": "1896347038589"
4344
},
44-
"input": "f88c8206668504a817c8008303d0908094c212e03b9e060e36facad5fd8f4435412ca22e6b80a451a34eb8000000000000000000000000000000000000000000000027fad02094277c000029a0c6eaa9538e3b268ded218604fc7d54cd27a9d83236aad7b7527fffff9407a37ba002e6c5dd5e86ed2e432116c62af4ae7d4300f1c63d0b053ea2747849bf4d2ccb",
45+
"input": "0xf88b8206668504a817c8008303d09094c212e03b9e060e36facad5fd8f4435412ca22e6b80a451a34eb8000000000000000000000000000000000000000000000027fad02094277c000029a0692a3b4e7b2842f8dd7832e712c21e09f451f416c8976d5b8d02e8c0c2b4bea9a07645e90fc421b63dd755767fd93d3c03b4ec0c4d8fafa059558d08cf11d59750",
4546
"result": {
4647
"error": "invalid jump destination",
4748
"from": "0x70c9217d814985faef62b124420f8dfbddd96433",

eth/tracers/testdata/call_tracer_legacy/create.json

+2-1
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,8 @@
3030
"eip155Block": 10,
3131
"eip158Block": 10,
3232
"ethash": {},
33-
"homesteadBlock": 0
33+
"homesteadBlock": 0,
34+
"donutBlock": 0
3435
},
3536
"difficulty": "3757315409",
3637
"extraData": "0x566961425443",

eth/tracers/testdata/call_tracer_legacy/deep_calls.json

+2-1
Original file line numberDiff line numberDiff line change
@@ -93,7 +93,8 @@
9393
"eip155Block": 10,
9494
"eip158Block": 10,
9595
"ethash": {},
96-
"homesteadBlock": 0
96+
"homesteadBlock": 0,
97+
"donutBlock": 0
9798
},
9899
"difficulty": "117124093",
99100
"extraData": "0xd5830105008650617269747986312e31322e31826d61",

eth/tracers/testdata/call_tracer_legacy/delegatecall.json

+2-1
Original file line numberDiff line numberDiff line change
@@ -46,7 +46,8 @@
4646
"eip155Block": 10,
4747
"eip158Block": 10,
4848
"ethash": {},
49-
"homesteadBlock": 0
49+
"homesteadBlock": 0,
50+
"donutBlock": 0
5051
},
5152
"difficulty": "31912170",
5253
"extraData": "0xd783010502846765746887676f312e372e33856c696e7578",

eth/tracers/testdata/call_tracer_legacy/inner_create_oog_outer_throw.json

+7-6
Large diffs are not rendered by default.

eth/tracers/testdata/call_tracer_legacy/inner_instafail.json

+1
Original file line numberDiff line numberDiff line change
@@ -38,6 +38,7 @@
3838
"petersburgBlock": 4939394,
3939
"istanbulBlock": 6485846,
4040
"muirGlacierBlock": 7117117,
41+
"donutBlock": 0,
4142
"ethash": {}
4243
}
4344
},

0 commit comments

Comments
 (0)