[
https://issues.apache.org/jira/browse/ATLAS-5427?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=18124273#comment-18124273
]
ASF subversion and git services commented on ATLAS-5427:
--------------------------------------------------------
Commit ec7dc21d49f5d2f07258c4205c948a65194a0aad in atlas's branch
refs/heads/master from pareshd
[ https://gitbox.apache.org/repos/asf?p=atlas.git;h=ec7dc21d4 ]
ATLAS-5427: atlas-rest Docker image fails to start on Java 8 base: unrecognized
--add-opens JVM options (#780)
Changes:- Remove redundant REST_SERVER_OPTS from compose; document REST server
startup in README.
Co-authored-by: Paresh Devalia <[email protected]>
> atlas-rest Docker image fails to start on Java 8 base: unrecognized
> --add-opens JVM options
> -------------------------------------------------------------------------------------------
>
> Key: ATLAS-5427
> URL: https://issues.apache.org/jira/browse/ATLAS-5427
> Project: Atlas
> Issue Type: Bug
> Reporter: Paresh Devalia
> Assignee: Paresh Devalia
> Priority: Major
> Time Spent: 20m
> Remaining Estimate: 0h
>
> The {{atlas-rest}} service defined in
> {{dev-support/atlas-docker/docker-compose.atlas-rest.yml}} fails during JVM
> startup when the underlying {{atlas-base}} image (or effective
> {{{}JAVA_HOME{}}}) is Java 8.
> Error (e.g. {{{}/var/log/atlas/rest-notification/rest.*.err{}}}):
> {{Unrecognized option: --add-opens=java.base/java.lang=ALL-UNNAMED
> Error: Could not create the Java Virtual Machine.
> Error: A fatal exception has occurred. Program will exit.}}
> Atlas 3.x rest-server artifacts are built for Java 17 (see
> {{ATLAS_BUILD_JAVA_VERSION}} / Maven {{jdk-17}} profile). The rest
> notification server must run on Java 17+, but the rest Docker image does not
> pin the JVM version the way the main Atlas server image does.
>
> h3. Steps to reproduce
> # Build/start stack from {{dev-support/atlas-docker}} using
> {{docker-compose.atlas-rest.yml}} (with Kafka/ZK from
> {{{}docker-compose.atlas-common.yml{}}}).
> # Use an {{atlas-base}} image where {{JAVA_HOME}} resolves to Java 8, or an
> older base built before {{{}ATLAS_BASE_JAVA_VERSION=17{}}}.
> # Observe rest container logs / {{rest.*.err}} — JVM exits before
> {{RestNotificationMain}} starts.
> ----
> h3. Root cause
> # {{docker-compose.atlas-rest.yml}} sets {{REST_SERVER_OPTS}} with
> {{{}--add-opens=...{}}}, which is invalid on Java 8. Those flags are already
> added by {{distro/src/bin/rest_start.py}} → {{get_default_jvm_opts()}} when
> Java ≥ 9.
> h3. Expected behavior
> * {{atlas-rest}} container starts successfully.
> * HTTP listener on port 41000 (config: {{{}atlas.rest.server.http.port{}}}).
> * Hook notification ingress available at
> {{{}POST /rest/api/atlas/v2/notification/topic/{topicName{}}}} for payload
> validation / REST hook path.
> ----
> h3. Proposed fix
> # {{Removing REST_SERVER_OPTS}} from docker-compose.atlas-rest.yml file
> # Add a steps to start the rest-notification server after Atlas server up or
> with the Atlas backend overlay
--
This message was sent by Atlassian Jira
(v8.20.10#820010)