-
Notifications
You must be signed in to change notification settings - Fork 3.6k
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
[fix] [broker] [branch-2.10] Upgrade rocksDB version to 6.16.4 to keep sync with BookKeeper 4.14.7 #20312
[fix] [broker] [branch-2.10] Upgrade rocksDB version to 6.16.4 to keep sync with BookKeeper 4.14.7 #20312
Conversation
could you please fill in the description ? why this patch is better than #20287 ? |
@eolivelli Thanks for your reminder. I updated the description, please help take a look, thanks. |
/pulsarbot run-failure-checks |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thank you for the clarification
+1
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM
The python tests seem to break because of an unrelated Python 2.7 compatibility issues
it seems to be related to apache/bookkeeper#3875 changes. @zymap do you have a solution for fixing the Python tests in branch-2.10? |
I created a separate issue #20314 for dealing with the broken Python tests in branch-2.10 |
…p sync with BookKeeper 4.14.7 (apache#20312) (cherry picked from commit 1c00154)
Fixes #xyz
Master Issue: #xyz
PIP: #xyz
Motivation
Pulsar 2.10 uses BookKeeper 4.14.7, and BookKeeper 4.14.7 uses RocksDB 6.16.4.
However, Pulsar also introduced RocksDB dependency and uses 6.10.2. When packaging all the dependencies into the Pulsar release package, the RocksDB 6.10.2 in Pulsar will override the RocksDB 6.16.4 in BookKeeper. The Pulsar release package will only contain RocksDB 6.10.2 in the end.
We encountered a RocksDB 6.10.2 memory leak issue when upgrading from Pulsar 2.9.x to 2.10.x, but still have not found any related issues in RocksDB. Pulsar 2.9.x uses RocksDB 6.16.4. One related issue is apache/bookkeeper#3507
The reason why we revert #20287 is that we found the bookie throws method not found exception when upgrading RocksDb to 6.29.4.1 #20243 (comment)
The root cause of the exception is
So we should upgrade the RocksDB version in Pulsar with the following steps.
The reason why we should upgrade Pulsar's RocksDB version to 6.29.4.1 is apache/bookkeeper#3734 (comment). Pulsar 3.0 uses BookKeeper 4.16.0 which uses RocksDB 7.9.2, and we should make sure Pulsar can roll back from 3.0 to 2.10.x
Modifications
Verifying this change
(Please pick either of the following options)
This change is a trivial rework / code cleanup without any test coverage.
(or)
This change is already covered by existing tests, such as (please describe tests).
(or)
This change added tests and can be verified as follows:
(example:)
Does this pull request potentially affect one of the following parts:
If the box was checked, please highlight the changes
Documentation
doc
doc-required
doc-not-needed
doc-complete
Matching PR in forked repository
PR in forked repository: