-
Notifications
You must be signed in to change notification settings - Fork 589
HDDS-14226. [DO NOT MERGE] Get rid of Native Libs and use JNI for SSTFileTableIterator in rocksdb #9544
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
base: master
Are you sure you want to change the base?
Conversation
…or in rocksdb Change-Id: I3e1120e94742781aaac652b7363682575ae36821
0831b13 to
75eb3ab
Compare
|
@adoroszlai I was wondering if I can do something similar for running CI with newer rocksdb version from a different maven repo. Any idea how I can do this? |
|
@swamirishi I tried to the same thing before to build my own rocksdb include the patch to fix the bug in the
It was used in my PR: peterxcli#2 (able to pass the ci: https://github.com/peterxcli/ozone/actions/runs/15602888062) |
|
Thanks @peterxcli I will take a look at this. I am somehow not able to build rocksdb all compatible fat jar from arm mac-osx. Are there any special flags I need to pass? That is the reason I just built a mac only jar containing only the mac native lib. The build for OSX-x86 is failing when trying to build that. I can maybe just disable OSX-x86 build and build the rest from docker. |
|
@rnblough This is the patch for upgrading our rocksdb version |
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.
TODO: Remove this
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.
TODO: Remove this
What changes were proposed in this pull request?
Patch : facebook/rocksdb#12511 in rocksdb creates a new JNI for the tableIterator API in SSTFileReader thus eliminating the need for the patched rocksdb native lib written in ozone for efficient snapshot diff. This patch would be responsible for bumping up rocksdb to a version containing the afforementioned rocksdb patch and removing all usages of the native lib from the code base which needs to be done in a single patch since the native lib won't build with the new rocksdb version and making the native lib compatible with newer rocksdb version is a duplication of effort.
This patch will not build currently since this needs a future version of rocksdb with the patch. This code has been tested with a local build of rocksdb containing the patch.
To test this on local follow this step:
git checkout swamirishi/JniReaderForTableIteratormake -j8 rocksdbjavastaticWhat is the link to the Apache JIRA
https://issues.apache.org/jira/browse/HDDS-14226
How was this patch tested?
Added unit tests for the changed code.