-
Notifications
You must be signed in to change notification settings - Fork 1.5k
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
[KYLIN-4864] Enable running Kylin tests on ARM64 platform #1558
Conversation
Pull Request Test Coverage Report for Build 6970
💛 - Coveralls |
let's wait for #1557 merged firstly |
8aecdb5
to
9145147
Compare
Codecov Report
@@ Coverage Diff @@
## master #1558 +/- ##
============================================
- Coverage 25.42% 25.42% -0.01%
+ Complexity 6765 6762 -3
============================================
Files 1508 1508
Lines 93918 93924 +6
Branches 13158 13160 +2
============================================
- Hits 23877 23876 -1
- Misses 67662 67667 +5
- Partials 2379 2381 +2
Continue to review full report at Codecov.
|
This change modify the Travis CI configurations to enable the Kylin testing on ARM64 server.
Hi @hit-lacus It looks the ARM CI job in Travis works OK (see above check status), all the tests can pass in ARM64, could you please help review this ? Thank you. |
Hi @zhangayqian @zzcclp Sorry to bother you, could you please help to take a look this PR ? |
Hi, could any can help to review this ? |
Hi @hit-lacus @zhangayqian Could you please help to review this PR? Thank you. |
hi sheng, I see it includes a version upgrade for rocksdb; it is a must-have for this JIRA? @liusheng |
Hi @shaofengshi , yes, I previously made the version upgrade for rocksdbjni in #1557, now I have merged the small change in this PR, I just updated the reason of this upgrade in this PR. |
Hi, from the issue title Support building and testing Kylin on ARM64 architecture platform, is aims to support build and run Kylin on ARM64 architecture platform. Does this patch ensure user can build new binary and run smoothly on ARM64 platfrom? Could you provided a test report for verification ? Besides, I was concerned by if this upgrade will break current functions. |
Hi @hit-lacus , For the upgrade of rocksdbjni from version The Rocksdb adds Arm64 support [4] since version 6.4.6, and also backports all Arm64 So, from multi-arch support view, the better rocksdb version is the version since [1] https://issues.apache.org/jira/browse/STORM-3599 |
@@ -40,6 +46,7 @@ before_script: | |||
- echo "MAVEN_OPTS='-Xms1024m -Xmx3072m -XX:MetaspaceSize=128m -XX:MaxMetaspaceSize=384m'" > ~/.mavenrc | |||
- sed -i 's/log4j.logger.org.apache.kylin=INFO/log4j.logger.org.apache.kylin=WARN/g' build/conf/kylin-server-log4j.properties | |||
- sed -i 's/log4j.logger.org.apache.kylin=INFO/log4j.logger.org.apache.kylin=WARN/g' build/conf/kylin-tools-log4j.properties | |||
- if [[ $(uname -m) == 'aarch64' ]];then export JAVA_HOME="/usr/lib/jvm/java-8-openjdk-arm64";fi |
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.
This line could be simplified to:
export JAVA_HOME="/usr/lib/jvm/java-8-openjdk-${TRAVIS_CPU_ARCH}"
Currently, integration test need a HDP 2.4 sandbox for Hadoop setup. Please check Besides, I wish you can test deployment and basic functionalities of Kylin on ARM64 server, and share testing reports to us. Sadly to say, I do not know too much on ARM64 technical and do not have a ARM64 server for verification. For how to run manual test, please check this link https://cwiki.apache.org/confluence/display/KYLIN/Regression+Testing+for+Kylin+Release . |
I will do the testing and report back ! |
@hit-lacus It seems Hortonworks resources are no more available. Do you have a Howto with a replacement of HDP ? |
Sorry for late reply, I think docker image is a good replacement of HDP, would you like have a try? https://github.com/apache/kylin/tree/master/docker If you prefer HDP sandbox, here is the download link : https://issues.apache.org/jira/browse/KYLIN-4040?focusedCommentId=16861673&page=com.atlassian.jira.plugin.system.issuetabpanels%3Acomment-tabpanel#comment-16861673 . |
@hit-lacus I was able to run the Docker image on Linux ARM64 with these changes: https://github.com/apache/kylin/compare/master...martin-g:KYLIN-4864-add-support-for-aarch64-to-Dockerfiles?expand=1 To build and run it I use:
I had to upgrade MySQL to 8.x because there was no aarch64 binaries at http://repo.mysql.com/yum/mysql-5.7-community/el/7/ I've also updated Kylin, Livy, JDK and Maven to their latest versions. I've tested it with the steps described at http://kylin.apache.org/docs/tutorial/kylin_sample.html but it got stuck at 90.91% . The logs just repeat the following again and again:
I did not face any problems related to RocksDB ! Only the unit tests fail with 5.9.2 and pass with 5.18.4! Now I am trying to test with 3.1.3-SNAPSHOT but the build fails at
I cannot find what build step is supposed to build the Line 25 in efedf07
|
I've created I've added |
@hit-lacus Ping! |
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
Thanks for @martin-g help and @hit-lacus review! |
The changes introduced with this PR have been lost! There is no @hit-lacus Were there any Git filtering operations on the repo ? I see that |
* [KYLIN-4864] Enable running Kylin tests on ARM64 platform This change modify the Travis CI configurations to enable the Kylin testing on ARM64 server. * Use openjdk11 for ARM64 test
* [KYLIN-4864] Enable running Kylin tests on ARM64 platform This change modify the Travis CI configurations to enable the Kylin testing on ARM64 server. * Use openjdk11 for ARM64 test
* [KYLIN-4864] Enable running Kylin tests on ARM64 platform This change modify the Travis CI configurations to enable the Kylin testing on ARM64 server. * Use openjdk11 for ARM64 test
* [KYLIN-4864] Enable running Kylin tests on ARM64 platform This change modify the Travis CI configurations to enable the Kylin testing on ARM64 server. * Use openjdk11 for ARM64 test
Proposed changes
This change modify the Travis CI configurations to enable the Kylin testing on ARM64 server.
A special rocksdbjni version for aarch64 has been released by rocksdb community. [1][2]
This patch bumps the rocksdbjni version to 5.18.4 to make the Storm can be built in aarch64.
[1] https://github.com/facebook/rocksdb/releases/tag/v5.18.4
[2] facebook/rocksdb#6250
Types of changes
What types of changes does your code introduce to Kylin?
Put an
x
in the boxes that applyChecklist
Put an
x
in the boxes that apply. You can also fill these out after creating the PR. If you're unsure about any of them, don't hesitate to ask. We're here to help! This is simply a reminder of what we are going to look for before merging your code.document
branchFurther comments
If this is a relatively large or complex change, kick off the discussion at user@kylin or dev@kylin by explaining why you chose the solution you did and what alternatives you considered, etc...