[
https://issues.apache.org/jira/browse/HADOOP-18401?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17579716#comment-17579716
]
Veli-Jussi Raitila edited comment on HADOOP-18401 at 8/15/22 1:51 PM:
----------------------------------------------------------------------
It is indeed unfortunate transitive Python dependencies can break the build -
of the development container in this case. Hadoop itself does build just fine
on an M1 Mac.
Earlier version of the lazy-object-proxy library does not have this problem,
and neither does builds for Intel since a prebuilt wheel from PyPI is
appropriately picked. The dependency chain for pylint always picks the latest
versions and after the packaging mishap the build started breaking from
external causes.
So the solutions are:
# Do not install pylint for the ARM development container at all. Not sure
where this is actually used as I was able to run a minimal build, skipping
tests + docs but with native libs without it
# Pin a specific version of lazy-object-proxy which still has the appropriate
wheels available
# Wait for a packaging fix upstream for the lazy-object-proxy library
# Get a newer Python installed in the development container
I also noticed some modularization effort being started for Dockerfiles in
trunk. I wonder if there is a valid reason to treat ARM and Intel differently:
For the 3.3.4 release, Hugo has an ARM build available, as does the Java SDK,
so those are obvious. But the packages sourced from Ubuntu repos also differ
slightly, and either hadolint nor the ISA-L library are installed in the ARM
container. ARM container also sets the QT_QPA_PLATFORM environment variable.
The rationale for these choices are not clear to me.
was (Author: JIRAUSER294345):
It is indeed unfortunate transitive Python dependencies can break the build -
of the development container in this case. Hadoop itself does build just fine
on an M1 Mac.
Earlier version of the lazy-object-proxy library does not have this problem,
and neither does builds for Intel since a prebuilt wheel from PyPI is
appropriately picked. The dependency chain for pylint always picks the latest
versions and after the packaging mishap the build started breaking from
external causes.
So the solutions are:
# Do not install pylint for the ARM development container at all. Not sure
where this is actually used as I was able to run a minimal build, skipping
tests + docs but with native libs without it
# Pin a specific version of lazy-object-proxy which still has the appropriate
wheels available
# Wait for a packaging fix upstream for the lazy-object-proxy library
# Get a newer Python installed in the development container
I also noticed some modularization effort being started for Dockerfiles in
trunk. I wonder if there is a valid reason to treat ARM and Intel differently:
For the 3.3.4 release, Hugo has an ARM build available, as does the Java SDK,
so those are obvious. But the packages sources from Ubuntu repos also differ
slightly, and either hadolint nor the ISA-L library are installed in the ARM
container. ARM container also sets the QT_QPA_PLATFORM environment variable.
The rationale for these choices are not clear to me.
> release files miss hadoop-3.3.4-aarch64.tar.gz
> ----------------------------------------------
>
> Key: HADOOP-18401
> URL: https://issues.apache.org/jira/browse/HADOOP-18401
> Project: Hadoop Common
> Issue Type: Bug
> Affects Versions: 3.3.2, 3.3.3, 3.3.4
> Reporter: Ling Xu
> Priority: Minor
> Attachments: image-2022-08-11-14-54-15-490.png
>
>
> release files miss hadoop-3.3.4-aarch64.tar.gz
> !image-2022-08-11-14-54-15-490.png!
--
This message was sent by Atlassian Jira
(v8.20.10#820010)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]