evmone-statetest crashes when the transaction sender account does not exist
holiman opened this issue · comments
Martin HS commented
Note: executed on the branch with goevmlab-modifications
/home/martin/workspace/evmone-statetest --trace /tmp/00015509-mixed-0.json.min
Note: Google Test filter = -stCreateTest.CreateOOGafterMaxCodesize:stQuadraticComplexityTest.Call50000_sha256:stTimeConsuming.static_Call50000_sha256:stTimeConsuming.CALLBlake2f_MaxRounds:VMTests/vmPerformance.*:
[==========] Running 1 test from 1 test suite.
[----------] Global test environment set-up.
[----------] 1 test from /tmp
[ RUN ] /tmp.00015509-mixed-0.json
Segmentation fault (core dumped)
00015509-mixed-0.json.min
:
{
"00015509-mixed-0": {
"env": {
"currentCoinbase": "b94f5374fce5edbc8e2a8697c15331677e6ebf0b",
"currentDifficulty": "0x200000",
"currentRandom": "0x0000000000000000000000000000000000000000000000000000000000020000",
"currentGasLimit": "0x26e1f476fe1e22",
"currentNumber": "0x1",
"currentTimestamp": "0x3e8",
"previousHash": "0x044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d",
"currentBaseFee": "0x10"
},
"pre": {
"0xa94f5374fce5edbc8e2a8697c15331677e6ebf0b": {
"code": "0x",
"storage": {},
"balance": "0xffffffffff",
"nonce": "0x0"
}
},
"transaction": {
"gasPrice": "0x10",
"nonce": "0x0",
"to": "0x00000000000000000000000000000000000000f1",
"data": [
"0x12696e68052afe90de6e5820c13453a7f6490ff854b1e41100aec1408b8dbceb68a5e696bc7f38e60b0d34925b3ae774d0dd279db8652c1ac0b4b13c439e41f39b28d1734a2cb50b2cb19191afdce3684d64"
],
"gasLimit": [
"0x571c"
],
"value": [
"0x"
],
"sender": "0x0000000000000000000000000000000000000000",
"secretKey": "0x45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8"
},
"out": "0x",
"post": {
"Merge": [
{
"hash": "0x0000000000000000000000000000000000000000000000000000000000000000",
"logs": "0x0000000000000000000000000000000000000000000000000000000000000000",
"indexes": {
"data": 0,
"gas": 0,
"value": 0
}
}
]
}
}
}
Paweł Bylica commented
Thanks for the report.
This is because we so far assumed that the transaction sender account must have existed. This assumption is wrong.
This will be fixed by #684.
namiloh commented
Please also check https://gist.github.com/namiloh/daa1f238021dc57873964dd2c41bebd6