Skip to content
This repository has been archived by the owner on Apr 4, 2024. It is now read-only.

Problem: coinbase should not be the current one in traceTransaction execution #1391

Closed
yihuang opened this issue Oct 20, 2022 · 2 comments · Fixed by #1392
Closed

Problem: coinbase should not be the current one in traceTransaction execution #1391

yihuang opened this issue Oct 20, 2022 · 2 comments · Fixed by #1392

Comments

@yihuang
Copy link
Contributor

yihuang commented Oct 20, 2022

System info: ethermint main

Steps to reproduce:

In EVMConfig, the coinbase address is always fetched based on current context ctx.BlockHeader().ProposerAddress, which will be the current check state, aka. the last committed block's proposer address, in grpc-only mode, it would be an empty one.
But in traceTransaction, or eth_call with historical height, it should be the proposer of respective block.

Expected behavior: coinbase should be the correct one when executing historical transactions.

Actual behavior: is either the latest one or empty.

Additional info:

Solution: find the proposer address in json-rpc through tendermint api, and pass explicitly to grpc query handler.

@VictorTrustyDev
Copy link
Contributor

Will also resolve this #1269

@yihuang
Copy link
Contributor Author

yihuang commented Oct 20, 2022

Will also resolve this #1269

yeah, I guess this is the root cause of that.

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants