opensearch-project / OpenSearch

🔎 Open source distributed and RESTful search engine.
https://opensearch.org/docs/latest/opensearch/index/
Apache License 2.0
9.68k stars 1.79k forks source link

Add support for ppc64le #1303

Closed helix-loop closed 1 year ago

helix-loop commented 3 years ago

Building OpenSearch on ppc64le fails with the following error:

FAILURE: Build failed with an exception.

Java: openjdk-11-jdk

CEHENKLE commented 3 years ago

@bbarani flagging for infra....

dblock commented 3 years ago

This error comes from https://github.com/opensearch-project/OpenSearch/blob/0e9f74e35f1255cb9ec45be3d8960aad195a9f6e/buildSrc/src/main/java/org/opensearch/gradle/Architecture.java#L40 where we've never seen a ppc64le (the little-endian version of ppc64).

@helix-loop Does returning X64 in that code result in a successful build/test/run?

helix-loop commented 3 years ago

@dblock It does. Run is successful, check is throwing 2 errors, but I am able to curl localhost:9200 with the following change:

package org.opensearch.gradle;

public enum Architecture {

    X64,
    ARM64;

    public static Architecture current() {
        final String architecture = System.getProperty("os.arch", "");
        switch (architecture) {
            case "amd64":
            case "x86_64":
            case "ppc64le":<----
                return X64;
            case "aarch64":
                return ARM64;
            default:
                throw new IllegalArgumentException("can not determine architecture from [" + architecture + "]");
        }
    }

}
dblock commented 3 years ago

@helix-loop What are the test failures?

I think you can PR this change along with some basic test(s).

helix-loop commented 3 years ago

./gradlew check returns the following:


FAILURE: Build completed with 2 failures.

1: Task failed with an exception.
-----------
* What went wrong:
Execution failed for task ':test:logger-usage:test'.
> Process 'command '/xyz/.gradle/caches/transforms-2/files-2.1/778317cb44bcbeeaed85332364ca00cc/linux-15.0.1-x64.tar.gz/bin/java'' finished with non-zero exit value 2

* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights.
==============================================================================

2: Task failed with an exception.
-----------
* What went wrong:
Execution failed for task ':libs:opensearch-core:test'.
> Process 'command '/xyz/.gradle/caches/transforms-2/files-2.1/778317cb44bcbeeaed85332364ca00cc/linux-15.0.1-x64.tar.gz/bin/java'' finished with non-zero exit value 2

* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights.
==============================================================================

* Get more help at https://help.gradle.org

BUILD FAILED in 32s
71 actionable tasks: 4 executed, 67 up-to-date

What would these basic test(s) look like? I guess the 2 exceptions should be fixed to PR the change?

helix-loop commented 3 years ago

./gradlew check --stacktrace returns the following:

> Task :buildSrc:reaper:compileJava UP-TO-DATE
> Task :buildSrc:reaper:processResources NO-SOURCE
> Task :buildSrc:reaper:classes UP-TO-DATE
> Task :buildSrc:reaper:jar UP-TO-DATE
> Task :buildSrc:reaper:assemble UP-TO-DATE
> Task :buildSrc:reaper:compileTestJava NO-SOURCE
> Task :buildSrc:reaper:processTestResources NO-SOURCE
> Task :buildSrc:reaper:testClasses UP-TO-DATE
> Task :buildSrc:reaper:test NO-SOURCE
> Task :buildSrc:reaper:check UP-TO-DATE
> Task :buildSrc:reaper:build UP-TO-DATE
> Task :buildSrc:compileJava UP-TO-DATE
> Task :buildSrc:compileGroovy UP-TO-DATE
> Task :buildSrc:generateVersionProperties UP-TO-DATE
> Task :buildSrc:pluginDescriptors UP-TO-DATE
> Task :buildSrc:processResources UP-TO-DATE
> Task :buildSrc:classes UP-TO-DATE
> Task :buildSrc:jar UP-TO-DATE
> Task :buildSrc:assemble UP-TO-DATE
> Task :buildSrc:pluginUnderTestMetadata UP-TO-DATE
> Task :buildSrc:compileTestFixturesJava UP-TO-DATE
> Task :buildSrc:compileTestFixturesGroovy NO-SOURCE
> Task :buildSrc:processTestFixturesResources NO-SOURCE
> Task :buildSrc:testFixturesClasses UP-TO-DATE
> Task :buildSrc:testFixturesJar UP-TO-DATE
> Task :buildSrc:compileTestJava UP-TO-DATE
> Task :buildSrc:compileTestGroovy NO-SOURCE
> Task :buildSrc:processTestResources UP-TO-DATE
> Task :buildSrc:testClasses UP-TO-DATE
> Task :buildSrc:test SKIPPED
> Task :buildSrc:validatePlugins UP-TO-DATE
> Task :buildSrc:check UP-TO-DATE
> Task :buildSrc:build UP-TO-DATE

> Configure project :qa:os
Cannot add task 'destructiveDistroTest.docker' as a task with that name already exists.
=======================================
OpenSearch Build Hamster says Hello!
  Gradle Version        : 6.6.1
  OS Info               : Linux 5.10.0-8-powerpc64le (ppc64le)
  JDK Version           : 11 (JDK)
  JAVA_HOME             : /usr/lib/jvm/java-11-openjdk-ppc64el
  Random Testing Seed   : 6E10C0F6A7C3A485
  In FIPS 140 mode      : false
=======================================

> Task :check UP-TO-DATE
> Task :libs:opensearch-geo:compileJava UP-TO-DATE
> Task :libs:opensearch-plugin-classloader:compileJava UP-TO-DATE
> Task :libs:opensearch-secure-sm:compileJava UP-TO-DATE
> Task :benchmarks:processResources UP-TO-DATE
> Task :benchmarks:copyCheckstyleConf UP-TO-DATE
> Task :benchmarks:processTestResources NO-SOURCE
> Task :benchmarks:forbiddenApisResources UP-TO-DATE
> Task :server:generateModulesList UP-TO-DATE
> Task :libs:opensearch-core:compileJava UP-TO-DATE
> Task :server:generatePluginsList UP-TO-DATE
> Task :libs:opensearch-x-content:compileJava UP-TO-DATE
> Task :server:processResources UP-TO-DATE
> Task :libs:opensearch-cli:compileJava UP-TO-DATE
> Task :libs:opensearch-cli:processResources NO-SOURCE
> Task :libs:opensearch-cli:classes UP-TO-DATE
> Task :libs:opensearch-cli:jar UP-TO-DATE
> Task :libs:opensearch-core:processResources NO-SOURCE
> Task :libs:opensearch-core:classes UP-TO-DATE
> Task :server:processJava11Resources NO-SOURCE
> Task :libs:opensearch-core:compileJava11Java UP-TO-DATE
> Task :libs:opensearch-core:processJava11Resources NO-SOURCE
> Task :libs:opensearch-core:java11Classes UP-TO-DATE
> Task :libs:opensearch-core:jar UP-TO-DATE
> Task :libs:opensearch-geo:processResources NO-SOURCE
> Task :libs:opensearch-geo:classes UP-TO-DATE
> Task :libs:opensearch-geo:jar UP-TO-DATE
> Task :libs:opensearch-secure-sm:processResources NO-SOURCE
> Task :libs:opensearch-secure-sm:classes UP-TO-DATE
> Task :libs:opensearch-secure-sm:jar UP-TO-DATE
> Task :libs:opensearch-x-content:processResources NO-SOURCE
> Task :libs:opensearch-x-content:classes UP-TO-DATE
> Task :libs:opensearch-x-content:jar UP-TO-DATE
> Task :benchmarks:filepermissions UP-TO-DATE
> Task :benchmarks:forbiddenPatterns UP-TO-DATE
> Task :benchmarks:licenseHeaders UP-TO-DATE
> Task :test:logger-usage:compileJava UP-TO-DATE
> Task :test:logger-usage:processResources NO-SOURCE
> Task :test:logger-usage:classes UP-TO-DATE
> Task :test:logger-usage:jar UP-TO-DATE
> Task :spotlessInternalRegisterDependencies UP-TO-DATE
> Task :benchmarks:spotlessJava UP-TO-DATE
> Task :benchmarks:spotlessJavaCheck UP-TO-DATE
> Task :benchmarks:thirdPartyAuditResources UP-TO-DATE
> Task :benchmarks:thirdPartyAudit UP-TO-DATE
> Task :benchmarks:generatePomFileForNebulaPublication
> Task :benchmarks:validateNebulaPom UP-TO-DATE
> Task :benchmarks:validatePom UP-TO-DATE
> Task :benchmarks:spotlessCheck UP-TO-DATE
> Task :client:rest:compileJava UP-TO-DATE
> Task :server:compileJava UP-TO-DATE
> Task :client:sniffer:compileJava UP-TO-DATE
> Task :server:classes UP-TO-DATE
> Task :benchmarks:compileJava UP-TO-DATE
> Task :benchmarks:classes UP-TO-DATE
> Task :server:compileJava11Java UP-TO-DATE
> Task :server:java11Classes UP-TO-DATE
> Task :benchmarks:checkstyleMain UP-TO-DATE
> Task :benchmarks:compileTestJava NO-SOURCE
> Task :benchmarks:testClasses UP-TO-DATE
> Task :benchmarks:checkstyleTest NO-SOURCE
> Task :server:jar UP-TO-DATE
> Task :benchmarks:javadoc UP-TO-DATE
> Task :benchmarks:forbiddenApisMain SKIPPED
> Task :libs:opensearch-nio:compileJava UP-TO-DATE
> Task :benchmarks:forbiddenApisTest NO-SOURCE
> Task :benchmarks:forbiddenApis UP-TO-DATE
> Task :benchmarks:checkstyle UP-TO-DATE
> Task :benchmarks:dependencyLicenses SKIPPED
> Task :benchmarks:jarHell UP-TO-DATE
> Task :benchmarks:loggerUsageCheck UP-TO-DATE
> Task :benchmarks:testingConventions UP-TO-DATE
> Task :benchmarks:precommit UP-TO-DATE
> Task :test:logger-usage:processTestResources NO-SOURCE
> Task :client:rest:processResources NO-SOURCE
> Task :client:rest:classes UP-TO-DATE
> Task :client:rest:jar UP-TO-DATE
> Task :client:sniffer:processResources NO-SOURCE
> Task :client:sniffer:classes UP-TO-DATE
> Task :client:sniffer:jar UP-TO-DATE
> Task :libs:opensearch-nio:processResources NO-SOURCE
> Task :libs:opensearch-nio:classes UP-TO-DATE
> Task :libs:opensearch-nio:jar UP-TO-DATE
> Task :libs:opensearch-core:processTestResources UP-TO-DATE
> Task :libs:opensearch-core:copyCheckstyleConf UP-TO-DATE
> Task :libs:opensearch-core:checkstyleJava11 UP-TO-DATE
> Task :libs:opensearch-core:checkstyleMain UP-TO-DATE
> Task :libs:opensearch-core:dependencyLicenses UP-TO-DATE
> Task :libs:opensearch-core:filepermissions UP-TO-DATE
> Task :libs:opensearch-core:forbiddenApisResources UP-TO-DATE
> Task :libs:opensearch-core:forbiddenApisJava11 UP-TO-DATE
> Task :libs:opensearch-core:forbiddenApisMain UP-TO-DATE
> Task :libs:opensearch-core:forbiddenPatterns UP-TO-DATE
> Task :libs:opensearch-core:licenseHeaders UP-TO-DATE
> Task :libs:opensearch-core:thirdPartyAuditResources UP-TO-DATE
> Task :libs:opensearch-core:thirdPartyAudit NO-SOURCE
> Task :test:framework:compileJava UP-TO-DATE
> Task :libs:opensearch-core:generatePomFileForNebulaPublication
> Task :test:framework:processResources UP-TO-DATE
> Task :test:framework:classes UP-TO-DATE
> Task :test:framework:jar UP-TO-DATE
> Task :libs:opensearch-core:compileTestJava UP-TO-DATE
> Task :libs:opensearch-core:testClasses UP-TO-DATE
> Task :test:logger-usage:compileTestJava UP-TO-DATE
> Task :test:logger-usage:testClasses UP-TO-DATE
> Task :test:logger-usage:precommit UP-TO-DATE
> Task :libs:opensearch-core:checkstyleTest UP-TO-DATE
> Task :libs:opensearch-core:checkstyle UP-TO-DATE
> Task :libs:opensearch-core:forbiddenApisTest UP-TO-DATE
> Task :libs:opensearch-core:forbiddenApis UP-TO-DATE
> Task :libs:opensearch-core:jarHell UP-TO-DATE
> Task :libs:opensearch-core:loggerUsageCheck UP-TO-DATE
> Task :test:logger-usage:test FAILED
> Task :libs:opensearch-core:testingConventions UP-TO-DATE

FAILURE: Build failed with an exception.

* What went wrong:
Execution failed for task ':test:logger-usage:test'.
> Process 'command '/xyz/.gradle/caches/transforms-2/files-2.1/778317cb44bcbeeaed85332364ca00cc/linux-15.0.1-x64.tar.gz/bin/java'' finished with non-zero exit value 2

* Try:
Run with --info or --debug option to get more log output. Run with --scan to get full insights.

* Exception is:
org.gradle.api.tasks.TaskExecutionException: Execution failed for task ':test:logger-usage:test'.
    at org.gradle.api.internal.tasks.execution.CatchExceptionTaskExecuter.execute(CatchExceptionTaskExecuter.java:38)
    at org.gradle.api.internal.tasks.execution.EventFiringTaskExecuter$1.executeTask(EventFiringTaskExecuter.java:77)
    at org.gradle.api.internal.tasks.execution.EventFiringTaskExecuter$1.call(EventFiringTaskExecuter.java:55)
    at org.gradle.api.internal.tasks.execution.EventFiringTaskExecuter$1.call(EventFiringTaskExecuter.java:52)
    at org.gradle.internal.operations.DefaultBuildOperationExecutor$CallableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:409)
    at org.gradle.internal.operations.DefaultBuildOperationExecutor$CallableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:399)
    at org.gradle.internal.operations.DefaultBuildOperationExecutor$1.execute(DefaultBuildOperationExecutor.java:157)
    at org.gradle.internal.operations.DefaultBuildOperationExecutor.execute(DefaultBuildOperationExecutor.java:242)
    at org.gradle.internal.operations.DefaultBuildOperationExecutor.execute(DefaultBuildOperationExecutor.java:150)
    at org.gradle.internal.operations.DefaultBuildOperationExecutor.call(DefaultBuildOperationExecutor.java:94)
    at org.gradle.internal.operations.DelegatingBuildOperationExecutor.call(DelegatingBuildOperationExecutor.java:36)
    at org.gradle.api.internal.tasks.execution.EventFiringTaskExecuter.execute(EventFiringTaskExecuter.java:52)
    at org.gradle.execution.plan.LocalTaskNodeExecutor.execute(LocalTaskNodeExecutor.java:41)
    at org.gradle.execution.taskgraph.DefaultTaskExecutionGraph$InvokeNodeExecutorsAction.execute(DefaultTaskExecutionGraph.java:372)
    at org.gradle.execution.taskgraph.DefaultTaskExecutionGraph$InvokeNodeExecutorsAction.execute(DefaultTaskExecutionGraph.java:359)
    at org.gradle.execution.taskgraph.DefaultTaskExecutionGraph$BuildOperationAwareExecutionAction.execute(DefaultTaskExecutionGraph.java:352)
    at org.gradle.execution.taskgraph.DefaultTaskExecutionGraph$BuildOperationAwareExecutionAction.execute(DefaultTaskExecutionGraph.java:338)
    at org.gradle.execution.plan.DefaultPlanExecutor$ExecutorWorker.lambda$run$0(DefaultPlanExecutor.java:127)
    at org.gradle.execution.plan.DefaultPlanExecutor$ExecutorWorker.execute(DefaultPlanExecutor.java:191)
    at org.gradle.execution.plan.DefaultPlanExecutor$ExecutorWorker.executeNextNode(DefaultPlanExecutor.java:182)
    at org.gradle.execution.plan.DefaultPlanExecutor$ExecutorWorker.run(DefaultPlanExecutor.java:124)
    at org.gradle.internal.concurrent.ExecutorPolicy$CatchAndRecordFailures.onExecute(ExecutorPolicy.java:64)
    at org.gradle.internal.concurrent.ManagedExecutorImpl$1.run(ManagedExecutorImpl.java:48)
    at org.gradle.internal.concurrent.ThreadFactoryImpl$ManagedThreadRunnable.run(ThreadFactoryImpl.java:56)
Caused by: org.gradle.process.internal.ExecException: Process 'command '/xyz/.gradle/caches/transforms-2/files-2.1/778317cb44bcbeeaed85332364ca00cc/linux-15.0.1-x64.tar.gz/bin/java'' finished with non-zero exit value 2
    at org.gradle.process.internal.DefaultExecHandle$ExecResultImpl.assertNormalExitValue(DefaultExecHandle.java:414)
    at org.gradle.internal.jvm.inspection.DefaultJvmVersionDetector.getJavaVersion(DefaultJvmVersionDetector.java:56)
    at org.gradle.internal.jvm.inspection.CachingJvmVersionDetector.getJavaVersion(CachingJvmVersionDetector.java:57)
    at org.gradle.api.tasks.testing.Test.getJavaVersion(Test.java:266)
    at org.gradle.api.tasks.testing.Test_Decorated.getJavaVersion(Unknown Source)
    at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
    at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at org.gradle.api.internal.tasks.properties.bean.AbstractNestedRuntimeBeanNode$BeanPropertyValue$1$1.create(AbstractNestedRuntimeBeanNode.java:77)
    at org.gradle.internal.deprecation.DeprecationLogger.whileDisabled(DeprecationLogger.java:228)
    at org.gradle.api.internal.tasks.properties.bean.AbstractNestedRuntimeBeanNode$BeanPropertyValue$1.get(AbstractNestedRuntimeBeanNode.java:73)
    at com.google.common.base.Suppliers$NonSerializableMemoizingSupplier.get(Suppliers.java:167)
    at org.gradle.api.internal.tasks.properties.bean.AbstractNestedRuntimeBeanNode$BeanPropertyValue.call(AbstractNestedRuntimeBeanNode.java:133)
    at org.gradle.api.internal.tasks.properties.AbstractValidatingProperty.validate(AbstractValidatingProperty.java:39)
    at org.gradle.api.internal.tasks.properties.DefaultTaskProperties.validate(DefaultTaskProperties.java:194)
    at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter$TaskExecution.validate(ExecuteActionsTaskExecuter.java:507)
    at org.gradle.internal.execution.steps.ValidateStep.execute(ValidateStep.java:50)
    at org.gradle.internal.execution.steps.SkipEmptyWorkStep.lambda$execute$2(SkipEmptyWorkStep.java:78)
    at org.gradle.internal.execution.steps.SkipEmptyWorkStep.execute(SkipEmptyWorkStep.java:78)
    at org.gradle.internal.execution.steps.SkipEmptyWorkStep.execute(SkipEmptyWorkStep.java:34)
    at org.gradle.internal.execution.steps.legacy.MarkSnapshottingInputsStartedStep.execute(MarkSnapshottingInputsStartedStep.java:39)
    at org.gradle.internal.execution.steps.LoadExecutionStateStep.execute(LoadExecutionStateStep.java:40)
    at org.gradle.internal.execution.steps.LoadExecutionStateStep.execute(LoadExecutionStateStep.java:28)
    at org.gradle.internal.execution.impl.DefaultWorkExecutor.execute(DefaultWorkExecutor.java:33)
    at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeIfValid(ExecuteActionsTaskExecuter.java:195)
    at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.execute(ExecuteActionsTaskExecuter.java:187)
    at org.gradle.api.internal.tasks.execution.CleanupStaleOutputsExecuter.execute(CleanupStaleOutputsExecuter.java:114)
    at org.gradle.api.internal.tasks.execution.FinalizePropertiesTaskExecuter.execute(FinalizePropertiesTaskExecuter.java:46)
    at org.gradle.api.internal.tasks.execution.ResolveTaskExecutionModeExecuter.execute(ResolveTaskExecutionModeExecuter.java:62)
    at org.gradle.api.internal.tasks.execution.SkipTaskWithNoActionsExecuter.execute(SkipTaskWithNoActionsExecuter.java:57)
    at org.gradle.api.internal.tasks.execution.SkipOnlyIfTaskExecuter.execute(SkipOnlyIfTaskExecuter.java:56)
    at org.gradle.api.internal.tasks.execution.CatchExceptionTaskExecuter.execute(CatchExceptionTaskExecuter.java:36)
    at org.gradle.api.internal.tasks.execution.EventFiringTaskExecuter$1.executeTask(EventFiringTaskExecuter.java:77)
    at org.gradle.api.internal.tasks.execution.EventFiringTaskExecuter$1.call(EventFiringTaskExecuter.java:55)
    at org.gradle.api.internal.tasks.execution.EventFiringTaskExecuter$1.call(EventFiringTaskExecuter.java:52)
    at org.gradle.internal.operations.DefaultBuildOperationExecutor$CallableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:409)
    at org.gradle.internal.operations.DefaultBuildOperationExecutor$CallableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:399)
    at org.gradle.internal.operations.DefaultBuildOperationExecutor$1.execute(DefaultBuildOperationExecutor.java:157)
    at org.gradle.internal.operations.DefaultBuildOperationExecutor.execute(DefaultBuildOperationExecutor.java:242)
    at org.gradle.internal.operations.DefaultBuildOperationExecutor.execute(DefaultBuildOperationExecutor.java:150)
    at org.gradle.internal.operations.DefaultBuildOperationExecutor.call(DefaultBuildOperationExecutor.java:94)
    at org.gradle.internal.operations.DelegatingBuildOperationExecutor.call(DelegatingBuildOperationExecutor.java:36)
    at org.gradle.api.internal.tasks.execution.EventFiringTaskExecuter.execute(EventFiringTaskExecuter.java:52)
    at org.gradle.execution.plan.LocalTaskNodeExecutor.execute(LocalTaskNodeExecutor.java:41)
    at org.gradle.execution.taskgraph.DefaultTaskExecutionGraph$InvokeNodeExecutorsAction.execute(DefaultTaskExecutionGraph.java:372)
    at org.gradle.execution.taskgraph.DefaultTaskExecutionGraph$InvokeNodeExecutorsAction.execute(DefaultTaskExecutionGraph.java:359)
    at org.gradle.execution.taskgraph.DefaultTaskExecutionGraph$BuildOperationAwareExecutionAction.execute(DefaultTaskExecutionGraph.java:352)
    at org.gradle.execution.taskgraph.DefaultTaskExecutionGraph$BuildOperationAwareExecutionAction.execute(DefaultTaskExecutionGraph.java:338)
    at org.gradle.execution.plan.DefaultPlanExecutor$ExecutorWorker.lambda$run$0(DefaultPlanExecutor.java:127)
    at org.gradle.execution.plan.DefaultPlanExecutor$ExecutorWorker.execute(DefaultPlanExecutor.java:191)
    at org.gradle.execution.plan.DefaultPlanExecutor$ExecutorWorker.executeNextNode(DefaultPlanExecutor.java:182)
    at org.gradle.execution.plan.DefaultPlanExecutor$ExecutorWorker.run(DefaultPlanExecutor.java:124)
    at org.gradle.internal.concurrent.ExecutorPolicy$CatchAndRecordFailures.onExecute(ExecutorPolicy.java:64)
    at org.gradle.internal.concurrent.ManagedExecutorImpl$1.run(ManagedExecutorImpl.java:48)
    at org.gradle.internal.concurrent.ThreadFactoryImpl$ManagedThreadRunnable.run(ThreadFactoryImpl.java:56)

* Get more help at https://help.gradle.org

BUILD FAILED in 8s
69 actionable tasks: 3 executed, 66 up-to-date
dblock commented 3 years ago

For tests I would say a unit test that ensures that X64 is returned when current arch is ppc64le is sufficient. This way we don't accidentally remove it.

Those errors would need to be debugged, you should definitely be able to run gradlew check successfully.

dbwiddis commented 2 years ago

FYI, commentary on the above gradle check errors in #2341.

TLDR: I believe they are Gradle and/or OpenJ9 bugs that may be fixed by upgrading version(s).

seth-priya commented 1 year ago

Hi @dbwiddis @helix-loop just wanted to check if you are actively working on support for other architectures now that https://github.com/opensearch-project/OpenSearch/pull/4001 is merged for s390x?

I was interested in the ppc64le enablement , was able to build locally with changes similar to that in the above PR (yet to run the tests), so would be happy to take that up as well, please let me know, thanks!

dbwiddis commented 1 year ago

Hi, @seth-priya, please do take this on! I had assigned myself #2341 (ppc64le) some time ago but unassigned a few weeks ago when it became clear I didn't have time to do it -- and also the solution in #4001 is clearly a more comprehensive one.

It's all yours!

dbwiddis commented 1 year ago

Closed in #5459