-
Notifications
You must be signed in to change notification settings - Fork 6.2k
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
No arm64/aarch64 support for rocksdbjni-xxx.jar #5559
Comments
I try to build the The build steps looks like: $ export DEBUG_LEVEL=0
$ make -j8 rocksdbjava Finally, I got the
So, does anyone know what's the gap between current and the offical arm64 rocksdbjni release? Or anybody have any plan to drive it forward? |
@Yikun I produce the RocksJava builds and publish them to Maven Central. Unfortunately I have no access to Arm64 hardware for either CI or releases. If there was access available to such hardware, I could also attempt to build for Arm64, as I do for ppc64le. |
@adamretter As I know, there are two way to have the ARM resource,
So, if you need a full access for ARM64 resource you could get source according 1, and if just for testing, you could try 2. [1] https://github.com/Yikun/arm-openlab-test/pull/18 |
@Yikun could you share your rocksdbjni-6.2.0-linux64.jar with the aarch64 so lib inside? |
@Yikun I opened theopenlab/openlab#329 |
@AlexanderStets Sorry, the jar file size is over 10MB, I can't attach it in here. and now you can build using the master version RocksDB, the steps looks like:
export DEBUG_LEVEL=0
make -j8 rocksdbjava |
@adamretter OK, the request is approved, and the resource info has been sent to you. |
I just released RocksDB v6.2.2 to Maven Central. It includes aarch64 support. @Yikun would you be able to test and let me know that it works for you? |
@Yikun @AlexanderStets btw - I also created a Docker Build Environment for building RocksJava on aarch64 - evolvedbinary/rocksjava:centos7_arm64v8-be |
@adamretter Great, and I saw the rocksdbjni.jar in mvn repo. But it seems does not work, when I run the storm rocksdb related test case, the exception is still raised:
And after some investigation, I found that it's still the x86-64 released:
The root reason is here, which was introduced in #5258 . I guess the 6.2.2 is not cover this code, right? So, I think maybe we should add a new released after #5258 . |
@Yikun it looks that way, sorry. I added some improvements myself also - https://github.com/facebook/rocksdb/pull/5674/files @gfosco could you ensure that #5258 and #5674 get into the next release please? |
@adamretter When will the next release coming? and do you know how to make sure the Note that: We (I and @wangxiyuan) do some test on rocksdb in aarch64, like |
Excuse me,When the development of aarch64 rockdb will be updated! |
1 similar comment
Excuse me,When the development of aarch64 rockdb will be updated! |
If there are not conflicts, I'm OK with backporting them to 6.3 and up. @gfosco any thought on it? |
@adamretter I cherry picked #5674 to both of 6.3.fb and 6.4.fb branch. But I see merge conflict when trying to merge it to 6.5.fb, 6.4.fb and 6.3.fb. Any idea why? I don't remember whether you have commit permission to those branches, but if you have it, feel free to backport them by yourself. |
@siying unfortunately I don't have permission to push to those branches:
As far as I can tell, there is only one missing PRs now |
I noticed that the rocksdbjni v6.4.6 has been released, I saw all related changes has been merged. And I try to use it in the Apache Storm project [1], the results shows that it works well in aarch64 platform. Thanks for the efforts of the team! |
@Yikun you are welcome. We will also soon incorporate support for musl-libc platforms including arm-64v8. |
@adamretter Could you tell me where did you build the release ARM version of RocksDB? On a ARM-based AWS? |
@Myasuka We have a dedicated machine that was provided to us. |
We are working on the ARM64 support for Storm project, and the Storm project is using
rocksdbjni
to play rocksdb.Unfortunately, there is no aarch64 support in rocksdbjni-xxx.jar, so we will get back some error like when we running the storm test in aarch64 env:
Expected behavior
jar xvf rocksdbjni-6.0.1.jar | grep librocksdbjni
inflated: librocksdbjni-linux32.so
inflated: librocksdbjni-linux64.so
inflated: librocksdbjni-osx.jnilib
inflated: librocksdbjni-linux-ppc64le.so
inflated: librocksdbjni-win64.dll
Actual behavior
There is no librocksdbjni-linux-arm64.so in jar.
Steps to reproduce the behavior
jar xvf rocksdbjni-xxx.jar | grep librocksdbjni
The text was updated successfully, but these errors were encountered: