Thanks for the discussion, Shilun! Briefly, I am aligned with everything in Ayush's response. +1.
Chris Nauroth On Sun, Jul 13, 2025 at 9:57 PM Xiaoqiao He <hexiaoq...@apache.org> wrote: > Hi Shilun, > Thanks very much for your great work and bringing up this discussion. > > >> Ongoing Support for the Hadoop 3.4 Branch > > >It’s not just 3.4 — we currently have active release lines for 2.10, > >3.2, and 3.3 as well. The officially designated EOL release lines are > >listed here [1]. Personally, I think it’s time we consider marking 3.2 > >and 3.3 as EOL. However, I would be cautious about doing the same for > >3.4 immediately after the 3.5.0 release. > > The current active release lines are 2.10, 3.3 and 3.4[1]. And IIRC, 2.10.2 > will be the last version of release line 2.10. If we consider push 3.3 as > EOL, > there will be 3.4 only. I agree with Ayush's point, we need to keep line > 3.4 > even if release line 3.5 will happen. > > > Preparation for Hadoop 3.5 Release > Suggests to support JDK17 first, while running smoothly then considering > other > stable JDKs. > > > Operating System Support Strategy > Strong +1 from my side. > > > Release Strategy Under Multi-JDK Builds > If the `Release Strategy` is for the next line 3.5, I think it's OK to > support JDK17 only, > Other active release lines(3.4), I think we should be cautious to cut > downs JDK version > support. > > Thanks again. > > Best Regards, > - He Xiaoqiao > > > [1] > https://cwiki.apache.org/confluence/display/HADOOP/Hadoop+Active+Release+Lines > > On Fri, Jul 11, 2025 at 5:58 PM Cheng Pan <pan3...@gmail.com> wrote: > > > > Hi Shilun, > > > > Thanks for your efforts on JDK 17 support and for bringing up this > discussion. > > > > Glad to hear that the community considers moving the supported JDK > > baseline from 8 to a higher version(maybe 11 or 17, both sound good). > > > > Also agree to discontinue building support for OS once it reaches EOL, > > even in a patched release. > > > > > Remove unsupported base images from our Dockerfiles or upgrade them > > > to newer versions; > > > > > > Provide documentation to help users build on older systems; > > > > I have some different ideas for this purpose. I think the Dockerfile > itself > > is the best documentation for developers to set up a building > environment, > > for branch-3.4, we can stop testing on OS that is EOL and cause building > > failures, but keep the Dockerfile in the repo so that users who want to > build > > on that OS can refer to it and fix the issues by themselves. > > > > For now, I think we should > > > > 1. Remove CentOS 7 testing and Dockerfile on trunk > > 2. Remove CentOS 7 testing on branch-3.4 > > 3. Migrate CentOS 8 to other supported RHEL like OS 9 or 10 > > 4. Upgrade Debian 10 to 12 or 13(coming soon), Ubuntu 20.04 to 24.04 > > > > Thanks, > > Cheng Pan > > > > On 2025/07/11 05:44:06 slfan1989 wrote: > > > Dear community, > > > > > > I'd like to initiate a discussion on the future release and support > > > strategy for Hadoop. This includes a few important topics that I > believe we > > > should align on: > > > 1. Ongoing Support for the Hadoop 3.4 Branch > > > > > > As it stands, Hadoop 3.4 is the last release line that supports Java > 8. It > > > is expected that Java 8 compilation support will be officially removed > from > > > the trunk branch after a community vote. > > > At the same time, the trunk branch is increasingly diverging from the > 3.4 > > > line due to the adoption of JUnit 5 and new features based on JDK17 > syntax. > > > As a result, future bug fixes and backports will become significantly > more > > > difficult. > > > Given this, I’d like to ask: *after the release of hadoop-3.4.2, does > the > > > community plan to continue maintaining and releasing hadoop-3.4.3 or > other > > > 3.4-series versions?* > > > 2. Preparation for Hadoop 3.5 Release > > > > > > With the JDK17 support work nearing completion, it’s time to start > planning > > > for the Hadoop 3.5 release. Specific questions for discussion include: > > > > > > > > > - > > > > > > Should we set up a new CI pipeline for JDK17 on the trunk branch? > > > - > > > > > > Should we also add support for JDK21 in CI? > > > - > > > > > > If JDK21 support is added, can we remove the existing JDK11 > pipeline? > > > > > > 3. Operating System Support Strategy > > > > > > Several major OS distributions—CentOS 7, CentOS 8, and Debian 10—have > > > already reached or are approaching end-of-life (EOL). > > > Should we adjust our support policy for these systems? For example: > > > > > > - > > > > > > Officially deprecate EOL systems; > > > - > > > > > > Provide documentation-only support for compilation; > > > - > > > > > > Remove outdated base images from Dockerfiles. > > > > > > 4. Release Strategy Under Multi-JDK Builds > > > > > > As we prepare to support JDK11, JDK17, and JDK21, we also need a clear > > > strategy for future releases. Key questions include: > > > > > > - > > > > > > Should we publish multiple build variants like: hadoop-3.5.0-jdk11, > > > hadoop-3.5.0-jdk17, hadoop-3.5.0-jdk21? > > > - > > > > > > What naming convention should we adopt for these variants? > > > - > > > > > > For Maven Central artifacts, should we distinguish by JDK version or > > > consider a unified approach? > > > > > > Additional Context and Suggestions from My Side: > > > > > > 1. > > > > > > The JDK17 compatibility work is being tracked under HADOOP-17177 > > > <https://issues.apache.org/jira/browse/HADOOP-17177>. I am in the > > > process of reviewing and linking all relevant JIRAs—both completed > and > > > pending—to this umbrella JIRA, and will share an overview in the > coming > > > week. > > > 2. > > > > > > Regarding the JUnit 5 migration: > > > Based on our experience, JUnit 5 introduces significant differences > > > compared to JUnit 4. It fundamentally changes how tests are written > and > > > run. My proposed upgrade path is as follows: > > > - > > > > > > Complete the migration to *JUnit 5.8.2* (we are still working on > HDFS > > > and Hadoop-Azure and aim to finish in the next two weeks); > > > - > > > > > > Remove JUnit 4 usage module by module (e.g., Yarn, MapReduce, > HDFS, > > > Common, etc.); > > > - > > > > > > Upgrade to *JUnit 5.13.2* (as Steve suggested); > > > - > > > > > > Upgrade the *Maven Surefire Plugin*. Earlier issues were due to > the > > > mixed use of JUnit 4 and 5, which will no longer be a concern > > > once JUnit 5 > > > is fully adopted; > > > - > > > > > > Upgrade the *Maven version* to 3.9.0 for better compatibility and > > > plugin support. > > > 3. > > > > > > Once the JUnit 5 migration is complete, we will conduct a thorough > test > > > audit to ensure everything runs correctly and mark unstable tests > for > > > future attention. > > > 4. > > > > > > Regarding legacy OS support, I recommend a "lightweight" approach: > > > - > > > > > > Remove unsupported base images from our Dockerfiles or upgrade > them > > > to newer versions; > > > - > > > > > > Provide documentation to help users build on older systems; > > > - > > > > > > But *formally discontinue* full support for EOL systems. > > > > > > I’d appreciate hearing your thoughts on these topics. Looking forward > to a > > > fruitful discussion! > > > > > > Best regards, > > > Shilun Fan. > > > > > > > > > > > > > > > > > --------------------------------------------------------------------- > > To unsubscribe, e-mail: common-dev-unsubscr...@hadoop.apache.org > > For additional commands, e-mail: common-dev-h...@hadoop.apache.org > > > > --------------------------------------------------------------------- > To unsubscribe, e-mail: common-dev-unsubscr...@hadoop.apache.org > For additional commands, e-mail: common-dev-h...@hadoop.apache.org > >