-
Notifications
You must be signed in to change notification settings - Fork 2.6k
MMR Proof Generation is broken #11984
Comments
Need to dive deeper for root cause, but likely culprit is recent PR #11594 |
Maybe I'm missing something, but I don't think that's the cause since the onchain runtime version on rococo is still 9250, which barely precedes inclusion of that PR.
I've tried this for a couple thousand blocks, and the instantiation the I've attached a tracelog of a call of rococo_generateProof_1394039_0xdf388aada7be7d84bd5f9834b6480d2cd6afa6c298f12e9ff8fe9754a5c8e5e2.log |
Running a node from genesis doesn't exhibit this problem, only nodes started from snapshot have this broken db issue. Unfortunately we only have snapshots from the last 5 days and they are all broken - all current nodes have been semi-recently upgraded and restarted from a broken snapshot, and so we have no older good snapshot. |
The problem is that the offchainDB is incomplete, it holds no entries for old leaves (such as leaf indexes This is most likely due to the node being started from an incomplete snapshot. The incomplete snapshot was most likely generated on a node without To fix this, it should be enough to restart nodes from a good snapshot - a snapshot generated from an archive node running with |
The Rococo sync nodes have been restarted with the correct flags and are currently re-syncing. |
Can report that it's working on rococo for me too when syncing from scratch with
In case we run into this again, I've debugged with a local chain to confirm that the offchainDB can actually be incomplete, so long as all leaves required in the proof are present. Using a local chain where I:
i.e. with entries for leaves 36-69 missing in the offchainDB, these are the failure/success scenarios I get: (feel free to skip remainder of this comment - just keeping a detailed record in case the proof generation breaks again) A.
|
Fixed by redeploying RPC nodes using correct snapshot. MMR Proof generation RPC on Rococo:
|
Is there an existing issue?
Experiencing problems? Have you tried our Stack Exchange first?
Description of bug
Shortly after deploying
polkadot:v0.9.27
, Rococo fails to generate MMR proofs usingmmr
RPC, for example on block1353786
:Steps to reproduce
leafIndex
=It will produce error:
The text was updated successfully, but these errors were encountered: