-
Notifications
You must be signed in to change notification settings - Fork 4.5k
Consensus (bank hash) mismatch between v1.8.10 and tip of master/v1.9.1 (mainnet) #21986
Comments
this occurred on at least 6 machines nearly simultaneously:
|
one of these machines was running a custom build build off this: others were running a master image from around the same time. I believe both had:
|
The transaction error was a |
I believe I've seen this before: |
Hmm, 3 days ago, could also be caused by: #21882 |
|
I haven't found the exact commits, only investigated ranges so far.
|
Awesome, thanks for kicking this off.
Bisection between 85befbc8cdde5699d8f86012a17c17b4d2927f11 (#19102) and 88c1b8f047d52a2936c4b26fa018974eb4ede02b (#19469) showed that decec3cd8b27dca05814ac884f6d61c23acd3131 (#19593) #19633 (which is a backport of #19593 to That is:
So, as @Lichtso pointed out above, looks like more than one commit causing the issue. |
Per suggestion from @CriesofCarrots, I did a sanity check and confirmed that running with |
I wonder if it might have something to do with MappedMessage. The gymnastics around that struct was the biggest difference between #19593 and #19633. |
Result on And referencing above, |
Agreed; I'll add an edit to my above comment
👍 |
Next commit-of-interest is df6905c
Can you take a look at that one @Lichtso ? It appears that, on this commit, this transaction fails with a Custom InstructionError instead of failing on PrivilegeEscalation, as would be expected before #20265:
|
Here are more samples:
It is not #20165, as that was reverted in #20301 and fixed in #20308. Instead it is #20448 again (just as we originally suspected because this PR has the same error message as #21397). |
Update, I think I understand what happened:
|
* Partial revert "Updates documentation around what needs to be passed in CPI. (#21633)" * Enforces the program_id being passed explicitly by removing it from get_instruction_keyed_accounts(). * instruction_accounts => instructions_account (cherry picked from commit ba8e158) # Conflicts: # program-runtime/src/invoke_context.rs
* Partial revert "Updates documentation around what needs to be passed in CPI. (#21633)" * Enforces the program_id being passed explicitly by removing it from get_instruction_keyed_accounts(). * instruction_accounts => instructions_account (cherry picked from commit ba8e158) Co-authored-by: Alexander Meißner <[email protected]>
This issue has been automatically locked since there has not been any activity in past 7 days after it was closed. Please open a new issue for related bugs. |
Problem
A node running
master
(commit 94aa9e5) against mainnet was found to have a consensus failure; this occurred in slot111883235
:Here is the offending transaction:
And some logging output about this transaction:
Steps to Reproduce
solana-ledger-tool verify --ledger ~/21986_ledger
and note thebank frozen: 111883235 ...
line of outputThe text was updated successfully, but these errors were encountered: