Closed xiaoch05 closed 3 years ago
Why get the wrong status with a high probability?
have not caught the deep reason, I tried to remove the header.number
, and it got the right status.
I think the header.number
is a critical point of the status change.
if using None
here, the result is not the result at that moment.
do we need the latest result or the result at that moment here? If the mmr root has been signed by all other authorities after that block. we should not sign again.
I forget why this is added here. The original method is what you said, I will think about it.
https://github.com/darwinia-network/bridger/blob/20a5a3acdbc71845be8a8b425ac0d55c865c4a9b/src/service/subscribe/mod.rs#L139
at block
header.number
, we may get the wrong status of the sign_mmr_root with a high probability, and then send extrinsic with error result. Instead, it may be better to use the latest block byNone
here.