I am preparing hadoop-3.4.0-RC3 as we have already released 3 RC versions
before, and I hope hadoop-3.4.0-RC3 will receive the approval of the
members.

Compared to hadoop-3.4.0-RC2, my plan is to backport 2 PRs from branch-3.4
to branch-3.4.0:

HADOOP-18088: Replacing log4j 1.x with reload4j.
HADOOP-19084: Pruning hadoop-common transitive dependencies.

I will use hadoop-release-support to package the arm version.

I plan to release hadoop-3.4.0-RC3 next Monday.

Best Regards,
Shilun Fan.

On Sat, Feb 24, 2024 at 11:28 AM slfan1989 <slfan1...@apache.org> wrote:

> Thank you very much for Steve's detailed test report and issue description!
>
>  I appreciate your time spent helping with validation. I am currently
> trying to use hadoop-release-support to prepare hadoop-3.4.0-RC3.
>
> After completing the hadoop-3.4.0 version, I will document some of the
> issues encountered in the "how to release" document, so that future members
> can refer to it during the release process.
>
> Once again, thank you to all members involved in the hadoop-3.4.0 release.
>
> Let's hope for a smooth release process.
>
> Best Regards,
> Shilun Fan.
>
> On Sat, Feb 24, 2024 at 2:29 AM Steve Loughran <ste...@cloudera.com.invalid>
> wrote:
>
>> I have been testing this all week, and a -1 until some very minor changes
>> go in.
>>
>>
>>    1. build the arm64 binaries with the same jar artifacts as the x86 one
>>    2. include ad8b6541117b HADOOP-18088. Replace log4j 1.x with reload4j.
>>    3. include 80b4bb68159c HADOOP-19084. Prune hadoop-common transitive
>>    dependencies
>>
>>
>> For #1 we have automation there in my client-validator module, which I
>> have
>> moved to be a hadoop-managed project and tried to make more
>> manageable
>> https://github.com/apache/hadoop-release-support
>>
>> This contains an ant project to perform a lot of the documented build
>> stages, including using SCP to copy down an x86 release tarball and make a
>> signed copy of this containing (locally built) arm artifacts.
>>
>> Although that only works with my development environment (macbook m1
>> laptop
>> and remote ec2 server), it should be straightforward to make it more
>> flexible.
>>
>> It also includes and tests a maven project which imports many of the
>> hadoop-* pom files and run some test with it; this caught some problems
>> with exported slf4j and log4j2 artifacts getting into the classpath. That
>> is: hadoop-common pulling in log4j 1.2 and 2.x bindings.
>>
>> HADOOP-19084 fixes this; the build file now includes a target to scan the
>> dependencies and fail if "forbidden" artifacts are found. I have not been
>> able to stop logback ending on the transitive dependency list, but at
>> least
>> there is only one slf4j there.
>>
>> HADOOP-18088. Replace log4j 1.x with reload4j switches over to reload4j
>> while the move to v2 is still something we have to consider a WiP.
>>
>> I have tried doing some other changes to the packaging this week
>> - creating a lean distro without the AWS SDK
>> - trying to get protobuf-2.5 out of yarn-api
>> However, I think it is too late to try applying patches this risky.
>>
>> I Believe we should get the 3.4.0 release out for people to start playing
>> with while we rapidly iterate 3.4.1 release out with
>> - updated dependencies (where possible)
>> - separate "lean" and "full" installations, where "full" includes all the
>> cloud connectors and their dependencies; the default is lean and doesn't.
>> That will cut the default download size in half.
>> - critical issues which people who use the 3.4.0 release raise with us.
>>
>> That is: a packaging and bugs release, with a minimal number of new
>> features.
>>
>> I've created HADOOP-19087
>> <https://issues.apache.org/jira/browse/HADOOP-19087> to cover this,
>> I'm willing to get my hands dirty here -Shilun Fan and Xiaoqiao He have
>> put
>> a lot of work on 3.4.0 and probably need other people to take up the work
>> for next release. Who else is willing to participate? (Yes Mukund, I have
>> you in mind too)
>>
>> One thing I would like to visit is: what hadoop-tools modules can we cut?
>> Are rumen and hadoop-streaming being actively used? Or can we consider
>> them
>> implicitly EOL and strip. Just think of the maintenance effort we would
>> save.
>>
>> ---
>>
>> Incidentally, I have tested the arm stuff on my raspberry pi5 which is now
>> running 64 bit linux. I believe it is the first time we have qualified a
>> Hadoop release with the media player under someone's television.
>>
>> On Thu, 15 Feb 2024 at 20:41, Mukund Madhav Thakur <mtha...@cloudera.com>
>> wrote:
>>
>> > Thanks, Shilun for putting this together.
>> >
>> > Tried the below things and everything worked for me.
>> >
>> > validated checksum and gpg signature.
>> > compiled from source.
>> > Ran AWS integration tests.
>> > untar the binaries and able to access objects in S3 via hadoop fs
>> commands.
>> > compiled gcs-connector successfully using the 3.4.0 version.
>> >
>> > qq: what is the difference between RC1 and RC2? apart from some extra
>> > patches.
>> >
>> >
>> >
>> > On Thu, Feb 15, 2024 at 10:58 AM slfan1989 <slfan1...@apache.org>
>> wrote:
>> >
>> >> Thank you for explaining this part!
>> >>
>> >> hadoop-3.4.0-RC2 used the validate-hadoop-client-artifacts tool to
>> >> generate
>> >> the ARM tar package, which should meet expectations.
>> >>
>> >> We also look forward to other members helping to verify.
>> >>
>> >> Best Regards,
>> >> Shilun Fan.
>> >>
>> >> On Fri, Feb 16, 2024 at 12:22 AM Steve Loughran <ste...@cloudera.com>
>> >> wrote:
>> >>
>> >> >
>> >> >
>> >> > On Mon, 12 Feb 2024 at 15:32, slfan1989 <slfan1...@apache.org>
>> wrote:
>> >> >
>> >> >>
>> >> >>
>> >> >> Note, because the arm64 binaries are built separately on a different
>> >> >> platform and JVM, their jar files may not match those of the x86
>> >> >> release -and therefore the maven artifacts. I don't think this is
>> >> >> an issue (the ASF actually releases source tarballs, the binaries
>> are
>> >> >> there for help only, though with the maven repo that's a bit
>> blurred).
>> >> >>
>> >> >> The only way to be consistent would actually untar the x86.tar.gz,
>> >> >> overwrite its binaries with the arm stuff, retar, sign and push out
>> >> >> for the vote.
>> >> >
>> >> >
>> >> >
>> >> > that's exactly what the "arm.release" target in my client-validator
>> >> does.
>> >> > builds an arm tar with the x86 binaries but the arm native libs,
>> signs
>> >> it.
>> >> >
>> >> >
>> >> >
>> >> >> Even automating that would be risky.
>> >> >>
>> >> >>
>> >> > automating is the *only* way to do it; apache ant has everything
>> needed
>> >> > for this including the ability to run gpg.
>> >> >
>> >> > we did this on the relevant 3.3.x releases and nobody has yet
>> >> complained...
>> >> >
>> >>
>> >
>>
>

Reply via email to