Skip to content

Fix RocksDBException: Busy during snapsync#7745

Closed
siladu wants to merge 1 commit intobesu-eth:mainfrom
matkt:feature/fix-busy
Closed

Fix RocksDBException: Busy during snapsync#7745
siladu wants to merge 1 commit intobesu-eth:mainfrom
matkt:feature/fix-busy

Conversation

@siladu
Copy link
Copy Markdown
Contributor

@siladu siladu commented Oct 9, 2024

PR description

Make TrieNodeHealingRequest.requiresPersisting thread safe.

Fixed Issue(s)

Fixes #7619

Testing

This is a hard to trigger race condition. Before this PR, the number of occurrences of this error was ~1 / 20 syncing nodes.
This has been tested on 60 nodes with CHECKPOINT sync and 20 nodes with SNAP sync and found no issues up to and including flat db healing. A few suffered from Backward sync halts but that is a later phase in the sync so I think unrelated.

Thanks for sending a pull request! Have you done the following?

  • Checked out our contribution guidelines?
  • Considered documentation and added the doc-change-required label to this PR if updates are required.
  • Considered the changelog and included an update if required.
  • For database changes (e.g. KeyValueSegmentIdentifier) considered compatibility and performed forwards and backwards compatibility tests

Locally, you can run these tests to catch failures early:

  • unit tests: ./gradlew build
  • acceptance tests: ./gradlew acceptanceTest
  • integration tests: ./gradlew integrationTest
  • reference tests: ./gradlew ethereum:referenceTests:referenceTests

Signed-off-by: Karim Taam <karim.t2am@gmail.com>
@siladu siladu changed the title Fix busy exception during snapsync Fix RocksDB Busy exception during snapsync Oct 9, 2024
@siladu siladu changed the title Fix RocksDB Busy exception during snapsync Fix RocksDBException: Busy during snapsync Oct 9, 2024
@siladu
Copy link
Copy Markdown
Contributor Author

siladu commented Oct 9, 2024

Had to open #7746 to add changelog

@siladu siladu closed this Oct 9, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

MerkleTrieException: Unable to load trie node value for hash

2 participants