Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Invalid latestValidHash caused Lodestar to halt on invalid block #6488

Open
siladu opened this issue Jan 29, 2024 · 2 comments
Open

Invalid latestValidHash caused Lodestar to halt on invalid block #6488

siladu opened this issue Jan 29, 2024 · 2 comments
Labels
bug Something isn't working mainnet P3 Medium (ex: JSON-RPC request not working with a specific client library due to loose spec assumtion)

Comments

@siladu
Copy link
Contributor

siladu commented Jan 29, 2024

See https://discord.com/channels/593655374469660673/593655641445367808/1200195786672185438

From @g11tech

Ok from logs I understand the issue: lodestar tries to download all the forks, and some peers which accepted the 19056922, hash: 0x5970f4b49ecfba must be serving the same, which lodestar would send to besu for the validation, and as expected besu would reply with invalid, but here is the problem:

Jan 21 13:14:17 nuc13 besu[59010]: 2024-01-21 13:14:17.083-05:00 | vert.x-worker-thread-0 | WARN | AbstractEngineNewPayload | Invalid new payload: number: 19056922, hash: 0x5970f4b49ecfbad6b02a1cc8fad8a0e47382576b1b28eeb4ec2a8c1649fa6c90, parentHash: 0x932123bf49f6ffce68aac29820bda6028d3bf7aebbebd5fdc758dac9d1c81c46, latestValidHash: 0x0000000000000000000000000000000000000000000000000000000000000000, status: INVALID, validationError: Block already present in bad block manager.

besu is not supposed to send: latestValidHash: 0x0000000000000000000000000000000000000000000000000000000000000000, it can send it null, this response (0x0000000000000000000000000000000000000000000000000000000000000000) if only reserved if the valid block in besu's forkchoice is PREMERGE, which obviously is incorrect at this point of time.

This causes us to invalidate the all post merge forkchoice, although we can add check for the same and prevent this issue on our side, but this is still essentially besu bug

here are the specs: https://github.com/ethereum/execution-apis/blob/main/src/engine/paris.md#response

wemeetagain — 28/01/2024 02:22
ok, and for besu, they really should send a real LVH if feasible, if they don't want to do that, send null instead of 0x0.
g11tech — 28/01/2024 02:24
yes, correct
wemeetagain — 28/01/2024 02:24
I mean, sending a real LVH is definitely possible, afaik other ELs sent a real LVH in this scenario, so i'm assuming its just an oversight.
g11tech — 28/01/2024 02:25
yes, these are unfinalized blocks and its this invalid block's parent would still be in their non pruned tree

@siladu siladu changed the title Invalid latestValidHash Invalid latestValidHash caused Lodestar to halt on invalid block Jan 29, 2024
@siladu siladu added bug Something isn't working TeamGroot GH issues worked on by Groot Team TeamRevenant GH issues worked on by Revenant Team TeamChupa GH issues worked on by Chupacabara Team labels Jan 29, 2024
@siladu
Copy link
Contributor Author

siladu commented Jan 29, 2024

Verify corresponding Hive tests are failing, this could be a regression.

@siladu siladu added P3 Medium (ex: JSON-RPC request not working with a specific client library due to loose spec assumtion) mainnet labels Jan 29, 2024
@g11tech
Copy link

g11tech commented Jan 30, 2024

we(lodestar) should now be able to deal with it with this PR: ChainSafe/lodestar#6361, but yea could be nice to have this addressed on besu too ❤️

@jflo jflo removed TeamChupa GH issues worked on by Chupacabara Team TeamGroot GH issues worked on by Groot Team TeamRevenant GH issues worked on by Revenant Team labels Oct 15, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working mainnet P3 Medium (ex: JSON-RPC request not working with a specific client library due to loose spec assumtion)
Projects
None yet
Development

No branches or pull requests

3 participants