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

My sync node got error InvalidStateRoot unexpectedly. #1573

Closed
Tracked by #1537
yangby-cryptape opened this issue Nov 17, 2023 · 2 comments · Fixed by #1636
Closed
Tracked by #1537

My sync node got error InvalidStateRoot unexpectedly. #1573

yangby-cryptape opened this issue Nov 17, 2023 · 2 comments · Fixed by #1636
Assignees
Labels
P-High t:bug Something isn't working

Comments

@yangby-cryptape
Copy link
Collaborator

yangby-cryptape commented Nov 17, 2023

Description

I started a sync node since 2023-11-06.
Every workday, it was connected to our internal testnet when I started work, and it was stopped after I got off work.

Every two or three days, I re-compiled a new Axon binary with latest commit on main branch.
Current version is 0828794.

I was trying to write a tool to connect p2p network directly today (2023-11-17), so I didn't use my sync node whole day, but it was still started in background.

Half an hour ago, I tried to start it manually, but it could not do sync anymore.
It printed the following errors again and again.

[INFO core_consensus::synchronization] [synchronization]: synced block, status: number:655420
[WARN overlord::state::process] Overlord: state receive an outdated status, height 655421, self height 655421
[WARN core_consensus::message] sync: receive remote block ProtocolError { kind: Consensus, error: InvalidStateRoot { expect: 0x33dbabe0f76b1e79948e0038bbf0c2b050e099a71b4c831c35f495a2ae7849c9, actual: 0x
e1f9583e2438d2718a3875435f237c68e534c759ade4e33aa21ffa488e93addc } }                                                                                                                                                                           
[INFO core_consensus::synchronization] [synchronization]: sync start, remote block number 671754 current block number 655420
[INFO core_consensus::synchronization] [synchronization]: try syncing block, current_consented_number 655420,syncing_number 655421                                                                         
[DEBUG core_executor::system_contract] execute addr 0xffffffffffffffffffffffffffffffffffffff01
[ERROR core_consensus::synchronization] [synchronization]: commit block 655420 error
[ERROR core_consensus::synchronization] [synchronization]: err, current_number 655420 err_msg: ProtocolError { kind: Consensus, error: InvalidStateRoot { expect: 0x33dbabe0f76b1e79948e0038bbf0c2b050e099a
71b4c831c35f495a2ae7849c9, actual: 0xe1f9583e2438d2718a3875435f237c68e534c759ade4e33aa21ffa488e93addc } }              

I found the first error was happened at 2023-11-17T10:44:44.267931834+08:00.
From then, my sync node had not synced any blocks.

Update-1

I tried:

Update-2

Commits between ad4375b..9a0bdbd are:

Skip the changes that don't modify source codes, there are only 3 commits which could introduced the break change, as I flagged above.

Update-3

I found another bad block at number 656501.

I tried:

Result

🎯 The commit 166506f introduced the break change.


Since I don't have bad data anymore, and the data is too large that I don't want to sync them again. (ref: #1574)

🆘 So my investigation is stopped. I won't work on this issue anymore.
Please assign another one to continue this task, based on my works above.

@Flouse
Copy link
Contributor

Flouse commented Nov 18, 2023

Result

🎯 The commit 166506f introduced the break change.

cc @KaoImin

@Flouse
Copy link
Contributor

Flouse commented Dec 3, 2023

@Flouse Flouse closed this as completed Dec 3, 2023
@Flouse Flouse linked a pull request Dec 21, 2023 that will close this issue
3 tasks
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
P-High t:bug Something isn't working
Projects
None yet
Development

Successfully merging a pull request may close this issue.

3 participants