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

Upgrade RocksDB version from 6.29.5 to 7.6.0. #4517

Merged
merged 5 commits into from
Oct 19, 2022

Conversation

ahamlat
Copy link
Contributor

@ahamlat ahamlat commented Oct 11, 2022

Signed-off-by: Ameziane H ameziane.hamlat@consensys.net

PR description

Upgrade RocksDB version from 6.29.5 to 7.6.0.

Fixed Issue(s)

Documentation

  • I thought about documentation and added the doc-change-required label to this PR if
    updates are required.

Changelog

Signed-off-by: Ameziane H <ameziane.hamlat@consensys.net>
@ahamlat
Copy link
Contributor Author

ahamlat commented Oct 17, 2022

Upgrading RocksDB to version 7.6.0 give good results once the node is synced. The node had some GC issues at the beginning of sync but it was able to recover and sync faster. The only significant difference I see in RocksDB metrics is on read from SST files, RocksDB version 7.6.0 has 29 microseconds as 95 percentile against 159 microseconds for version 6.29.5. I will do more tests but it seems promising. I compared all the nodes I started that are currently synced and the one with version 7.6.0 has better performance, without high spec flag enabled. (I just noticed that the node with RocksDB version 6.29.5 has high spec enabled).

image

This seems to have also an impact if we upgrade the version on a synced node with an older RocksDB version, which means that we can can suggest this feature without syncing from scratch.

image

From what I read here, RocksDB supports backward compatibility and there may be some compatibility issues if there're some advanced RocksDB configurations, which is not the case with Besu. I did a sync from scratch and upgraded an already synced node, and in both cases I didn't notice any error related to RocksDB.

I will do more tests on different hardware specifications by combining with other RocksDB configurations that gave also good results.

@ahamlat ahamlat marked this pull request as ready for review October 18, 2022 15:25
Copy link
Contributor

@fab-10 fab-10 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM, just add a CHANGELOG entry for it

Signed-off-by: Ameziane H <ameziane.hamlat@consensys.net>
Signed-off-by: ahamlat <ameziane.hamlat@consensys.net>
@ahamlat
Copy link
Contributor Author

ahamlat commented Oct 18, 2022

LGTM, just add a CHANGELOG entry for it

Done.

@ahamlat ahamlat merged commit 3ec23e4 into hyperledger:main Oct 19, 2022
macfarla pushed a commit to jflo/besu that referenced this pull request Jan 10, 2023
* Upgrade RocksDB version from 6.29.5 to 7.6.0.

Signed-off-by: Ameziane H <ameziane.hamlat@consensys.net>

* Add a changelog entry

Signed-off-by: Ameziane H <ameziane.hamlat@consensys.net>

Signed-off-by: Ameziane H <ameziane.hamlat@consensys.net>
Signed-off-by: ahamlat <ameziane.hamlat@consensys.net>
Signed-off-by: Sally MacFarlane <macfarla.github@gmail.com>
eum602 pushed a commit to lacchain/besu that referenced this pull request Nov 3, 2023
* Upgrade RocksDB version from 6.29.5 to 7.6.0.

Signed-off-by: Ameziane H <ameziane.hamlat@consensys.net>

* Add a changelog entry

Signed-off-by: Ameziane H <ameziane.hamlat@consensys.net>

Signed-off-by: Ameziane H <ameziane.hamlat@consensys.net>
Signed-off-by: ahamlat <ameziane.hamlat@consensys.net>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants