filecoin-project / lotus

Reference implementation of the Filecoin protocol, written in Go
https://lotus.filecoin.io/
Other
2.85k stars 1.27k forks source link

The block hash does not match #10911

Open amncjf opened 1 year ago

amncjf commented 1 year ago

Checklist

Lotus component

Lotus Version

All versions

Repro Steps

  1. curl --data '{"jsonrpc": "2.0", "id":1, "method": "eth_getBlockByNumber", "params": ["0x2AA63D",true] }' -H 'Content-Type:application/json' https://api.node.glif.io/
  2. curl --data '{"jsonrpc": "2.0", "id":1, "method": "eth_getBlockByHash", "params": ["0xd4c16a5518d79986d24292ea12b0eaed31b14ffefd7c0bb84dd37c95142eac3c",true] }' -H 'Content-Type:application/json' https://api.node.glif.io/

Describe the Bug

On the filecoin network, use https://api.node.glif.io/ I run a piece of code, first use eth_getBlockByNumber to get several blocks, and then use eth_getLogs to get the logs of these blocks, In assert.equal(log.blockHash, block.hash) fails, After I verify I get a partition through 0xd4c16a5518d79986d24292ea12b0eaed31b14ffefd7c0bb84dd37c95142eac3c and a storage partition obtained by taking 2795069. The blocks will be published, and the blockHash of their logs is different from the hash of the block.

Logging Information

N/A
ZenGround0 commented 1 year ago

@maciejwitowski @fridrik01 would you be able to take a quick look at this to gut check this? I'm wondering if this is the sign of a bug or a just an expected quirk of FEVM.