Moving to a newer JDK is a major milestone for the project and I am really thankful to everyone pushing this effort forward. There are always small hurdles and delays when pushing a big project forward so no one should feel bad or apologize when things do not go exactly as planned.
Most projects that are jumping to a new JDK usually do a major version bump and I think we should follow that paradigm and release Hive with JDK17 as Hive 5.0.0. Our last major version was released ~1 year ago so in terms of timing having 1 major release every year or so sounds reasonable. On a more general topic, having more frequent releases has numerous benefits so we should re-discuss and adopt a scheme that can allow us to move into this direction. This is independent of the JDK upgrade so let's discuss it on a separate thread. Best, Stamatis On Tue, Apr 8, 2025, 4:27 PM Butao Zhang <zhangbu...@apache.org> wrote: > The upgrade to JDK 17 is a significant change that introduces > compatibility and adaptation requirements for both Apache Tez and Apache > Hive. Relevant work is currently in progress—thanks to all community > contributors who have already been involved in adaptation and fixes. We > encourage everyone to actively report any issues encountered during usage > or integration, so that we can collaborate on discussions and resolutions, > and accelerate the overall transition to JDK 17. > > Thanks, > Butao Zhang > > On 2025/04/07 11:25:33 Shohei Okumiya wrote: > > Hi Ayush and all people working on the JDK upgrade, > > > > Thanks for sharing the timeline and detailing the current progress. I'm > > more than happy to hear the good news and look forward to seeing Hive > > running on Java 17! > > > > Mid-May is not so far away. I don't have a firm preference about how to > > package 4.1. If anyone is interested, let's discuss it in the thread for > > the Hive 4.1.x release. > > > > Finally, let me express my gratitude to everyone working on the > challenging > > upgrade project. It will definitely be one of the most outstanding > > achievements! > > > > Sincerely, > > Okumin > > > > On Mon, Apr 7, 2025 at 7:03 PM Ayush Saxena <ayush...@gmail.com> wrote: > > > > > Hi Okumin, > > > > > > I know I'm one of the people responsible for misjudging the timeline > > > around the JDK-17 upgrade, which has ultimately blocked the 4.1.0 > release. > > > I want to take a moment to share my thoughts and where things currently > > > stand. > > > > > > Q: Can we confirm the importance and ETA of the JDK upgrade and how we > > > should proceed? > > > > > > Ans: I think we all agree that moving to JDK-17 is a major milestone, > and > > > we're admittedly late in adopting it. Many projects have already moved > or > > > are actively working towards it. Not being on JDK-17 restricts us from > > > adopting modern third-party libraries like Iceberg and from leveraging > > > several improvements that come with it. > > > > > > As for the ETA: I realize I previously gave an inaccurate timeline, > and I > > > sincerely regret that. However, I now have a much clearer picture. I'm > in > > > active discussions with folks internally who are working on it. I > believe > > > we should have the code ready by mid-May, at which point we can start > > > gathering feedback from the community. > > > > > > Q: We've been working on this upgrade for over half a year. When will > it > > > merge? PR: https://github.com/apache/hive/pull/5404 > > > In my opinion, #5404 should be divided into multiple pull requests. I > > > really understand we want to test simultaneously rather than make > > > incremental progress. However, the consolidated PR makes it impossible > for > > > other developers to help the initiative, reviewers have to check huge > > > changes, and authors must occasionally resolve many conflicts. I don't > > > prefer any HOW as long as the delivery is predictable, meaning it is > okay > > > for me if we are confident with the agreed ETA. If it is still > uncertain, > > > we may try another project management, which is > incremental/predictable and > > > where we can invest other developers' resources in it. > > > > > > Ans: I completely agree with your observations. The original PR started > > > more as an experiment to see what changes were needed. At the time, I > don’t > > > think anyone anticipated how large it would become, and unfortunately, > it > > > kept growing incrementally over time. > > > That said, I’ve already asked the team to start breaking down the PR > into > > > smaller, more manageable parts. Dependency upgrades will be separated > out > > > soon, and changes like those related to SpotBugs (which account for a > large > > > number of line changes) will also be split. The goal is to make the PR > > > easier to review and more accessible for other contributors to jump > in. I > > > understand this is a genuine blocker, and folks are doing their best > to > > > address it. > > > > > > Q: [1] Should we ship 4.1 without JDK-17, given it's been a long time > > > since 4.0.1? > > > > > > Ans: Honestly, I’m not in a position to oppose this. The community > kindly > > > respected my request last time when I asked for more time for the > JDK-17 > > > upgrade, and unfortunately, I couldn’t follow through as expected. So, > with > > > sincere apologies for being one of the reasons for the delay, I’m okay > with > > > whatever direction the community chooses to take from here. > > > > > > -Ayush > > > > > > > > > On Sun, 6 Apr 2025 at 11:55, Shohei Okumiya <oku...@apache.org> wrote: > > > > > >> Hi, > > >> > > >> I appreciate everyone working on this big and challenging project! > > >> > > >> Can we confirm the importance and ETA of the JDK upgrade and how we > > >> should work on it? > > >> > > >> I recognize it is one of the most essential initiatives blocking the > > >> release of Hive 4.1.0[1] and the upgrade of Iceberg libraries[2]. > Users and > > >> developers would expect it to be shipped soon. > > >> > > >> We have to complete this effort to ship JDK 17. We've been working on > it > > >> for over half a year. Some of us might be interested in when we will > merge > > >> it. > > >> https://github.com/apache/hive/pull/5404 > > >> > > >> In my opinion, #5404 should be divided into multiple pull requests. I > > >> really understand we want to test simultaneously rather than make > > >> incremental progress. However, the consolidated PR makes it > impossible for > > >> other developers to help the initiative, reviewers have to check huge > > >> changes, and authors must occasionally resolve many conflicts. I don't > > >> prefer any HOW as long as the delivery is predictable, meaning it is > okay > > >> for me if we are confident with the agreed ETA. If it is still > uncertain, > > >> we may try another project management, which is > incremental/predictable and > > >> where we can invest other developers' resources in it. > > >> > > >> - [1] Honestly, I feel we should ship 4.1 without JDK 17, as it's > been a > > >> long time since the last release of 4.0.1 > > >> - [2] Iceberg 1.7 or later doesn't support Java 8 > > >> > > >> Best, > > >> Okumin > > >> > > >> On Wed, Dec 11, 2024 at 2:51 AM Ayush Saxena <ayush...@gmail.com> > wrote: > > >> > > >>> Regarding JDK-11, we didn't actively chased that, so its status > remains > > >>> uncertain. With lower compile-time support like JDK-8, we can > certainly > > >>> ensure runtime support for both JDK-11 and JDK-17, which I believe > should > > >>> work for Hive 4.0.1. As far as I know, this approach works > downstream for > > >>> us atleast. > > >>> > > >>> However, maintaining compile-time compatibility across JDK-17, > JDK-11, > > >>> and JDK-8 simultaneously may not be feasible. JDK-17 introduces > significant > > >>> changes, and I don’t believe it’s naive—or even possible—to compile > Hive > > >>> using both JDK-8 and JDK-17 & expect things to work properly. > > >>> > > >>> The initial plan appeared to be supporting JDK-8 for Hive 4.0.x > release > > >>> line, with potential tweaks if required to enable runtime support for > > >>> JDK-17. Starting with Hive 4.1.x, we could shift to JDK-17 for > compile-time > > >>> support, and later evaluate the feasibility of supporting JDK-21 or > newer > > >>> versions. > > >>> > > >>> Once we see a state when nobody want JDK-8 compile time support & > > >>> everyone has moved to JDK-17 or say using 4.1.x release line, We can > then > > >>> drop having bug fix releases for 4.0.x > > >>> > > >>> -Ayush > > >>> > > >>> On Mon, 9 Dec 2024 at 15:11, Butao Zhang <butaozha...@163.com> > wrote: > > >>> > > >>>> IMO, I think there two challenges if we want to maintain JDK8 & > JDK11 & > > >>>> JDK17 at the same time. > > >>>> > > >>>> - Different jdk syntactic sugar between multiple jdks, and > advanced > > >>>> feats in jdk17&jdk21, such as jdk vector api. If we want the > multiple jdks, > > >>>> we can not use the advanced feats in high jdk in the future. > Such as the > > >>>> discussion in https://issues.apache.org/jira/browse/HIVE-28614 > > >>>> - We need to run the jenkins CI process multiple times to run the > > >>>> multiple jdk env. I'm not sure we have enough jenkins resources > to do this. > > >>>> However, i want to say if we can use github actions to run the > whole CI? I > > >>>> have seen Apache Spark have done the good job which using the > forked > > >>>> repository github actions to run the CI. FRY > > >>>> https://lists.apache.org/thread/dmv1h2snqc7qtdjlzj4k8qxookclp720 > > >>>> > > >>>> > > >>>> Thanks, > > >>>> Butao Zhang > > >>>> ---- Replied Message ---- > > >>>> From Shohei Okumiya<oku...@apache.org> <undefined> > > >>>> Date 12/9/2024 17:06 > > >>>> To <dev@hive.apache.org> <dev@hive.apache.org> > > >>>> Subject Re: Move to JDK-11 > > >>>> Hi, > > >>>> > > >>>> I appreciate everyone's work on the JDK upgrade. It would be ideal > if > > >>>> we could migrate JDK like this. That will give us an > > >>>> incremental migration path. > > >>>> > > >>>> 1. (now) Hive 4.0 compiled by JDK 8, and run by JDK 8 > > >>>> 2. Hive 4.x compiled by JDK 8, and run by JDK 17 > > >>>> 3. Hive 4.x compiled by JDK 17, and run by JDK 17 > > >>>> > > >>>> I guess it is technically possible that Hive supports JDK 8 and 17 > at > > >>>> runtime. Apache Spark supports JDK 8, 11, and 17. What is the most > > >>>> challenging point? > > >>>> > > >>>> Regards, > > >>>> Okumin > > >>>> > > >>>> On Thu, Aug 29, 2024 at 10:48 PM Butao Zhang <butaozha...@163.com> > > >>>> wrote: > > >>>> > > >>>>> Hi Akshat, > > >>>>> > > >>>>> Thanks for your reply! I agree that supporting both JDK 8 and JDK > 17 > > >>>>> is not easy. I think we can safely to move to JDK 17 if we can > ensure *hive > > >>>>> application* can access to HiveServer2/Metastore without forcing > to > > >>>>> use the JDK 17. > > >>>>> For example, if a hive application is developed by JDK 8, it can > > >>>>> import the *hive-exec.jar & hive-jdbc.jar* which is compiled by JDK > > >>>>> 17 and can access to hs2/hms successfully. If this case can be > supported, > > >>>>> I think we can move to JDK 17 as soon as possible. > > >>>>> > > >>>>> BTW, If Apache Hive , Apache Tez and Apache Hadoop are all compiled > > >>>>> with JDK17 or higer version, i think the hive job will run more > faster. > > >>>>> Users will enjoy significant performance improvements due to JDK > version > > >>>>> upgrades. > > >>>>> I'm looking forward to the performance improvement. :) > > >>>>> > > >>>>> Thanks, > > >>>>> Butao Zhang > > >>>>> ---- Replied Message ---- > > >>>>> From Akshat m<akshatats...@gmail.com> <undefined> > > >>>>> Date 8/29/2024 18:44 > > >>>>> To <dev@hive.apache.org> <dev@hive.apache.org> > > >>>>> Subject Re: Move to JDK-11 > > >>>>> Hi Butao, > > >>>>> > > >>>>> It won’t be feasible to support both JDK 8 and JDK 17 in the same > Hive > > >>>>> version due to compatibility issues and behavior changes, as > detailed in > > >>>>> the PR. The internal changes in JDK implementations have made this > > >>>>> challenging. Additionally, many other libraries maintain separate > versions > > >>>>> for JDK 17+ and JDK 8 support. > > >>>>> > > >>>>> To align with this approach, I suggest we continue with Hive 4 > > >>>>> supporting JDK 8. Once the JDK 17 PR is merged, we could plan a > separate > > >>>>> release that specifically targets JDK 17+ support. This would > ensure that > > >>>>> Hive stays up-to-date while maintaining stability across different > > >>>>> environments. > > >>>>> > > >>>>> Would love to hear your thoughts or any additional suggestions the > > >>>>> community might have! > > >>>>> > > >>>>> Regards > > >>>>> > > >>>>> Akshat > > >>>>> > > >>>>> > > >>>>> > > >>>>> On Wed, Aug 28, 2024 at 8:00 AM Butao Zhang <butaozha...@163.com> > > >>>>> wrote: > > >>>>> > > >>>>>> Good job! Thanks everyone who put effort into the JDK upgrading. > > >>>>>> That's a big good news for Apache Hive community! > > >>>>>> Just a question: Given that many people are still using the lower > > >>>>>> jdk8 version. Do we consider to keeping compatibility with lower > jdk8 > > >>>>>> version? > > >>>>>> > > >>>>>> > > >>>>>> Thanks, > > >>>>>> Butao Zhang > > >>>>>> ---- Replied Message ---- > > >>>>>> From Akshat m<akshatats...@gmail.com> <undefined> > > >>>>>> Date 8/27/2024 23:12 > > >>>>>> To dev<dev@hive.apache.org> <dev@hive.apache.org> > > >>>>>> Cc kokila narayanan<kokilanarayana...@gmail.com>, > > >>>>>> <kokilanarayana...@gmail.com>Raghav > > >>>>>> Aggarwal<raghavaggarwal03...@gmail.com>, > > >>>>>> <raghavaggarwal03...@gmail.com>Ayush Saxena<ayush...@gmail.com>, > > >>>>>> <ayush...@gmail.com>tanishq chugh<tanishqchugh4...@gmail.com>, > > >>>>>> <tanishqchugh4...@gmail.com><aturo...@cloudera.com> > > >>>>>> <aturo...@cloudera.com> > > >>>>>> Subject Re: Move to JDK-11 > > >>>>>> > > >>>>>> Hi everyone, > > >>>>>> > > >>>>>> I’m excited to share that after months of dedicated work, we’ve > > >>>>>> finally achieved a passing PR[1] for running *Apache Hive on JDK > 17*! > > >>>>>> > > >>>>>> This was a challenging task, requiring to address various > > >>>>>> compatibility issues and ensure our comprehensive test suite > passed without > > >>>>>> a hitch. > > >>>>>> > > >>>>>> Thanks Kokila and Tanishq for joining me in the initiative and > Raghav > > >>>>>> for contributing fix for the errorProne issue, and thanks to > Attila, Ayush > > >>>>>> and other Hive PMC members for their guidance in the initiative > > >>>>>> > > >>>>>> It’s been a real team effort, and I’m grateful for the > collaboration > > >>>>>> and support from everyone involved. > > >>>>>> > > >>>>>> I’d appreciate it if you could take some time to review the PR. > > >>>>>> Community feedback is really important to make this happen. > > >>>>>> > > >>>>>> The PR #5404 addresses the integration of Apache Hive with JDK 17, > > >>>>>> introducing a range of changes aimed at ensuring compatibility and > > >>>>>> improving the codebase. Here’s a detailed breakdown: > > >>>>>> > > >>>>>> 1. Core Code Adjustments: > > >>>>>> > > >>>>>> - Compatibility Fixes: Various parts of the Hive codebase have > > >>>>>> been modified to ensure they work seamlessly with JDK 17. This > includes > > >>>>>> addressing language or API changes that JDK 17 introduces. > > >>>>>> > > >>>>>> - Reflection and Modules: Adjustments related to how Hive > > >>>>>> interacts with Java's reflection API, which has stricter module > system > > >>>>>> rules in JDK 17. > > >>>>>> > > >>>>>> 2. Dependency Management: > > >>>>>> > > >>>>>> - Version Upgrades: Several third-party dependencies have been > > >>>>>> updated to versions that are compatible with JDK 17. This is > critical > > >>>>>> because older versions of some libraries may not work properly or > might use > > >>>>>> deprecated features removed in JDK 17. > > >>>>>> > > >>>>>> - Data nucleus upgrade: To ensure compatibility with Java 17, > we > > >>>>>> upgraded DataNucleus to version 6.x. This upgrade, however, > introduced an > > >>>>>> issue with Hive schema creation. The issue stems from a commit in > > >>>>>> DataNucleus[2] that alters the handling of primary key column > names by > > >>>>>> enclosing them in double quotes. This change caused conflicts > during Hive > > >>>>>> schema generation. As an interim solution, we implemented a > patched > > >>>>>> DataNucleus-rdbms module to address the issue in Hive. The > necessary fix is > > >>>>>> now included in the DataNucleus repository[3]. Once DataNucleus > 6.0.8 is > > >>>>>> officially released, we will upgrade to this version and remove > the > > >>>>>> temporary patched module. > > >>>>>> > > >>>>>> - Dependency Cleanup: Unused or outdated dependencies were > removed, > > >>>>>> reducing potential conflicts and simplifying the build process. > > >>>>>> > > >>>>>> 3. Testing Enhancements: > > >>>>>> > > >>>>>> - Test Suite Updates: The PR includes updates to Hive’s test > suite > > >>>>>> to ensure all tests pass under JDK 17. This likely involved > modifying tests > > >>>>>> that needed adjustments to align with JDK 17’s behaviour. > > >>>>>> > > >>>>>> - New Tests: New tests may have been added to cover areas where > JDK > > >>>>>> 17 introduced new features or changes that could impact Hive. > > >>>>>> > > >>>>>> 4. Compatibility Checks: > > >>>>>> > > >>>>>> - JDK Version Verification: A new compatibility check has been > > >>>>>> introduced to verify the JDK version at runtime. This ensures > that Hive is > > >>>>>> running on an appropriate JDK version, preventing unexpected > errors or > > >>>>>> behaviour due to version mismatches. > > >>>>>> > > >>>>>> 5. Build Updates: > > >>>>>> > > >>>>>> - Build System Tweaks: The PR likely includes changes to the > Maven > > >>>>>> build configuration to accommodate JDK 17, ensuring that the > build process > > >>>>>> is smooth and compatible. > > >>>>>> > > >>>>>> Overall, this PR is a comprehensive effort to bring Apache Hive > up to > > >>>>>> date with the latest Java platform, ensuring long-term > maintainability and > > >>>>>> performance improvements. > > >>>>>> > > >>>>>> As the next steps, we’ll be focusing on further sanity checks and > > >>>>>> extensive testing to make sure everything functions smoothly. > Community > > >>>>>> involvement in this process will be crucial, so please do share > any issues > > >>>>>> or feedback as you test the changes. > > >>>>>> > > >>>>>> I’m looking forward to seeing the benefits this will bring to our > > >>>>>> community and users. > > >>>>>> > > >>>>>> > > >>>>>> [1] https://github.com/apache/hive/pull/5404 > > >>>>>> > > >>>>>> [2] > > >>>>>> > https://github.com/datanucleus/datanucleus-rdbms/commit/b99df3c803862f9e9feacc7891461bcb21160b38 > > >>>>>> > > >>>>>> [3] > > >>>>>> > https://github.com/datanucleus/datanucleus-rdbms/commit/b99df3c803862f9e9feacc7891461bcb21160b38 > > >>>>>> > > >>>>>> > > >>>>>> Best regards, > > >>>>>> > > >>>>>> Akshat Mathur > > >>>>>> > > >>>>>> > > >>>>>> On Tue, 11 Jul 2023 at 2:25 PM, Attila Turoczy < > > >>>>>> aturo...@cloudera.com.invalid> wrote: > > >>>>>> > > >>>>>>> Returning to this topic, I kindly request those who would like to > > >>>>>>> advocate > > >>>>>>> for the continued support of JDK8 to please share their > reasoning and > > >>>>>>> insights with us. Your input and perspective are greatly > appreciated! > > >>>>>>> Thank you. > > >>>>>>> > > >>>>>>> -Attila > > >>>>>>> > > >>>>>>> On Fri, Jun 2, 2023 at 12:43 PM Attila Turoczy < > > >>>>>>> aturo...@cloudera.com> > > >>>>>>> wrote: > > >>>>>>> > > >>>>>>> > Hi All, > > >>>>>>> > > > >>>>>>> > I know my opinion might not be the most popular, but I advocate > > >>>>>>> for using* > > >>>>>>> > JDK 17*. Here's why: > > >>>>>>> > > > >>>>>>> > Let's consider a scenario where a customer wants to use the > latest > > >>>>>>> version > > >>>>>>> > of Apache Hive. They would typically install it locally or on a > > >>>>>>> small > > >>>>>>> > cluster. In 2023, is it realistic to assume that this customer > > >>>>>>> won't be > > >>>>>>> > able to install JDK 17 on their cluster? Even in large > > >>>>>>> enterprises, it > > >>>>>>> > should be feasible to install an LTS JDK, especially > considering > > >>>>>>> the > > >>>>>>> > widespread adoption of cloud computing. Sungwoo Park's > > >>>>>>> measurements also > > >>>>>>> > support this recommendation to go with JDK 17. It outperforms > JDK > > >>>>>>> 11 by 8% > > >>>>>>> > in terms of runtime speed, and JDK 11 itself is 10+% faster > than > > >>>>>>> JDK 8. > > >>>>>>> > This is a significant value proposition. Who would be the > customer > > >>>>>>> that > > >>>>>>> > says, "I don't want faster query execution! I'd rather use JDK > 8 > > >>>>>>> and pay > > >>>>>>> > more for cloud or data center resources instead of using JDK > 17!" > > >>>>>>> It > > >>>>>>> > doesn't make sense to me. > > >>>>>>> > > > >>>>>>> > The tech industry has been evolving at an incredible pace, with > > >>>>>>> > improvements in serialization, IPC mechanisms, and parallelized > > >>>>>>> frameworks > > >>>>>>> > since the release of JDK 8 ten years ago. We should leverage > these > > >>>>>>> > advancements! Couple years ago, we invested a lot to improve > 1-2% > > >>>>>>> of the > > >>>>>>> > execution. We prayed for 3 gods, sacrificed 2 ships and > traveled > > >>>>>>> around the > > >>>>>>> > world to make it happen. :-) Now, the JDK itself provides a > > >>>>>>> substantial > > >>>>>>> > amount of improvement. So, why would we resist progress just > > >>>>>>> because there > > >>>>>>> > are a few lazy or conservative admins who don't want to spend > two > > >>>>>>> minutes > > >>>>>>> > installing a JDK? > > >>>>>>> > > > >>>>>>> > A platform needs to be modern and incorporate the latest > > >>>>>>> technologies to > > >>>>>>> > attract developers and users. I understand that some may > prefer to > > >>>>>>> stay > > >>>>>>> > with JDK 8 as it seems like the safest position, but I believe > in > > >>>>>>> taking > > >>>>>>> > bold bets to achieve big wins. Even if we decide to stick with > JDK > > >>>>>>> 8, I > > >>>>>>> > would still be happy since we are moving forward and not > dwelling > > >>>>>>> on a JDK > > >>>>>>> > that is a decade old. Personally, I think focusing on one thing > > >>>>>>> that brings > > >>>>>>> > more value to us and our users is the idealistic path forward. > > >>>>>>> > > > >>>>>>> > -Attila > > >>>>>>> > > > >>>>>>> > > > >>>>>>> > > > >>>>>>> > > > >>>>>>> > > > >>>>>>> > > > >>>>>>> > > > >>>>>>> > > > >>>>>>> > > > >>>>>>> > On Thu, Jun 1, 2023 at 11:23 AM Stamatis Zampetakis < > > >>>>>>> zabe...@gmail.com> > > >>>>>>> > wrote: > > >>>>>>> > > > >>>>>>> >> Hey everyone, > > >>>>>>> >> > > >>>>>>> >> If we claim that Hive supports a certain JDK then we should > > >>>>>>> compile and > > >>>>>>> >> run > > >>>>>>> >> tests with it. > > >>>>>>> >> > > >>>>>>> >> The more JDKs we can support the better for everyone but this > > >>>>>>> comes at a > > >>>>>>> >> cost (resources mostly). We should have a precommit run for > every > > >>>>>>> >> supported > > >>>>>>> >> JDK (frequency to be determined once per day/week) that > compiles > > >>>>>>> and run > > >>>>>>> >> all tests. > > >>>>>>> >> > > >>>>>>> >> From my perspective, I would be pretty happy if we could cover > > >>>>>>> the two > > >>>>>>> >> edge > > >>>>>>> >> LTS releases at every point in time. > > >>>>>>> >> > > >>>>>>> >> Then we have to decide also which JDK shall we use for the > pull > > >>>>>>> requests > > >>>>>>> >> and local dev environment. I think it makes sense to use the > > >>>>>>> latest. > > >>>>>>> >> People > > >>>>>>> >> like working on modern stuff and also it makes sense that > newer > > >>>>>>> releases > > >>>>>>> >> will also use newer versions. It would be pretty awkward if > > >>>>>>> someone wants > > >>>>>>> >> to use the latest Hive version and it turns out that it can > only > > >>>>>>> run on > > >>>>>>> >> JDK8. > > >>>>>>> >> > > >>>>>>> >> Best, > > >>>>>>> >> Stamatis > > >>>>>>> >> > > >>>>>>> >> On Thu, Jun 1, 2023, 3:42 AM Sungwoo Park <glap...@gmail.com> > > >>>>>>> wrote: > > >>>>>>> >> > > >>>>>>> >> > Hi, everyone. > > >>>>>>> >> > > > >>>>>>> >> > I have not tested the master branch with Java 11/17 yet, > but I > > >>>>>>> would > > >>>>>>> >> like > > >>>>>>> >> > to share my experience with testing a fork of branch-3.1 > with > > >>>>>>> Java 11/17 > > >>>>>>> >> > (as part of developing Hive-MR3), in case that it can be > useful > > >>>>>>> for the > > >>>>>>> >> > discussion. I merged the patches listed in [1] HIVE-22415 > and > > >>>>>>> updated > > >>>>>>> >> the > > >>>>>>> >> > Maven configuration for Java 11. > > >>>>>>> >> > > > >>>>>>> >> > 1. Building Hive was fine and I was able to run it with > Java 11 > > >>>>>>> as well > > >>>>>>> >> as > > >>>>>>> >> > Java 17. So, it seems that the work reported in [1] is > indeed > > >>>>>>> complete > > >>>>>>> >> for > > >>>>>>> >> > upgrading to Java 11 (and Java 17) and getting Hive to work. > > >>>>>>> >> > > > >>>>>>> >> > 2. However, there was a problem with running tests, so this > can > > >>>>>>> be > > >>>>>>> >> > additional work for upgrading to Java 11. > > >>>>>>> >> > > > >>>>>>> >> > 3. For performance, Java 17 gives about 8 percent of (free) > > >>>>>>> performance > > >>>>>>> >> > improvement. When tested with 10TB TPC-DS, Java 8 takes 8074 > > >>>>>>> seconds, > > >>>>>>> >> > whereas Java 17 takes 7415 seconds. Considering the > maturity of > > >>>>>>> Hive, I > > >>>>>>> >> > think this is not a small improvement because almost every > > >>>>>>> query gets > > >>>>>>> >> some > > >>>>>>> >> > speedup. > > >>>>>>> >> > > > >>>>>>> >> > Thanks, > > >>>>>>> >> > > > >>>>>>> >> > --- Sungwoo > > >>>>>>> >> > > > >>>>>>> >> > [1] https://issues.apache.org/jira/browse/HIVE-22415 > > >>>>>>> >> > > > >>>>>>> >> > > > >>>>>>> >> > On Thu, Jun 1, 2023 at 3:53 AM Sai Hemanth Gantasala > > >>>>>>> >> > <saihema...@cloudera.com.invalid> wrote: > > >>>>>>> >> > > > >>>>>>> >> > > Hi All, > > >>>>>>> >> > > > > >>>>>>> >> > > I would strongly advocate keeping support for JDK8. > > >>>>>>> >> > > Between JDK11 and JDK17, Depending on the amount of > effort on > > >>>>>>> the > > >>>>>>> >> upgrade > > >>>>>>> >> > > I'm inclined towards JDK17 (JDK21 LTS will be released in > Sep > > >>>>>>> 2023). > > >>>>>>> >> > > > > >>>>>>> >> > > Thanks, > > >>>>>>> >> > > Sai. > > >>>>>>> >> > > > > >>>>>>> >> > > On Wed, May 31, 2023 at 5:39 AM László Bodor < > > >>>>>>> >> bodorlaszlo0...@gmail.com> > > >>>>>>> >> > > wrote: > > >>>>>>> >> > > > > >>>>>>> >> > > > *Hi!* > > >>>>>>> >> > > > > > >>>>>>> >> > > > > > >>>>>>> >> > > > *Should we support both JDK-11 & JDK-8?* > > >>>>>>> >> > > > IMO absolutely yes, let's not break up with JDK-8: > > >>>>>>> according to its > > >>>>>>> >> > > > lifecycle, it's going to stay with us for a long time. > > >>>>>>> >> > > > > > >>>>>>> >> > > > I believe > > >>>>>>> >> > > > a) we should be able to compile on JDK8, JDK11, and > JDK17 > > >>>>>>> (github > > >>>>>>> >> > actions > > >>>>>>> >> > > > can cover this conveniently in precommit time, like tez > > >>>>>>> >> > > > < > > >>>>>>> >> > > >>>>>>> > https://github.com/apache/tez/blob/master/.github/workflows/build.yml > > >>>>>>> >> > >) > > >>>>>>> >> > > > b) the release artifacts should be compatible with JDK8 > as > > >>>>>>> long as > > >>>>>>> >> it > > >>>>>>> >> > is > > >>>>>>> >> > > > with us. > > >>>>>>> >> > > > > > >>>>>>> >> > > > Regards, > > >>>>>>> >> > > > Laszlo Bodor > > >>>>>>> >> > > > > > >>>>>>> >> > > > > > >>>>>>> >> > > > Butao Zhang <butaozha...@163.com> ezt írta (időpont: > 2023. > > >>>>>>> máj. > > >>>>>>> >> 31., > > >>>>>>> >> > > Sze, > > >>>>>>> >> > > > 14:33): > > >>>>>>> >> > > > > > >>>>>>> >> > > > > Thanks Ayush for driving this! Good to know that Hive > is > > >>>>>>> getting > > >>>>>>> >> > ready > > >>>>>>> >> > > > for > > >>>>>>> >> > > > > newer JDK. > > >>>>>>> >> > > > > From my opinon, if we have more community energy to > put > > >>>>>>> into it, > > >>>>>>> >> we > > >>>>>>> >> > can > > >>>>>>> >> > > > > support both JDK-11 and JDK-17 like Spark[1]. If we > have > > >>>>>>> to make > > >>>>>>> >> a > > >>>>>>> >> > > > choice > > >>>>>>> >> > > > > between a JDK-11 and JDK-17, i would like to choose > the > > >>>>>>> relatively > > >>>>>>> >> > new > > >>>>>>> >> > > > > version JDK-17, meanwhile, we should maintain > > >>>>>>> compatibility with > > >>>>>>> >> > jdk8, > > >>>>>>> >> > > as > > >>>>>>> >> > > > > JDK-8 is still widely used in most big data platforms. > > >>>>>>> >> > > > > > > >>>>>>> >> > > > > > > >>>>>>> >> > > > > Thanks, > > >>>>>>> >> > > > > Butao Zhang > > >>>>>>> >> > > > > > > >>>>>>> >> > > > > > > >>>>>>> >> > > > > [1]https://issues.apache.org/jira/browse/SPARK-33772 > > >>>>>>> >> > > > > ---- Replied Message ---- > > >>>>>>> >> > > > > | From | Ayush Saxena<ayush...@gmail.com> | > > >>>>>>> >> > > > > | Date | 5/31/2023 18:39 | > > >>>>>>> >> > > > > | To | dev<dev@hive.apache.org> | > > >>>>>>> >> > > > > | Subject | Move to JDK-11 | > > >>>>>>> >> > > > > Hi Everyone, > > >>>>>>> >> > > > > Want to pull in the attention of folks towards moving > to > > >>>>>>> JDK-11 > > >>>>>>> >> > compile > > >>>>>>> >> > > > > time support in Hive. There was a ticket in the past > [1] > > >>>>>>> which > > >>>>>>> >> talks > > >>>>>>> >> > > > about > > >>>>>>> >> > > > > it and If I could decode it right, it was blocked > because > > >>>>>>> the > > >>>>>>> >> Hadoop > > >>>>>>> >> > > > > version used by Hive didn't had JDK-11 runtime > support, > > >>>>>>> But with > > >>>>>>> >> [2] > > >>>>>>> >> > in > > >>>>>>> >> > > > we > > >>>>>>> >> > > > > have upgraded the Hadoop version, so that problem is > > >>>>>>> sorted out. I > > >>>>>>> >> > > > couldn't > > >>>>>>> >> > > > > even see any unresolved tickets in the blocked state > > >>>>>>> either. > > >>>>>>> >> > > > > > > >>>>>>> >> > > > > I quickly tried* a mvn clean install -DskipTests > > >>>>>>> -Piceberg > > >>>>>>> >> -Pitests > > >>>>>>> >> > > > > -Dmaven.javadoc.skip=true > > >>>>>>> >> > > > > > > >>>>>>> >> > > > > And no surprises it failed with some weird exceptions > > >>>>>>> towards the > > >>>>>>> >> > end. > > >>>>>>> >> > > > But > > >>>>>>> >> > > > > I think that should be solvable. > > >>>>>>> >> > > > > > > >>>>>>> >> > > > > So, Questions? > > >>>>>>> >> > > > > > > >>>>>>> >> > > > > - What do folks think about this? Should we put in > some > > >>>>>>> effort > > >>>>>>> >> > towards > > >>>>>>> >> > > > > JDK-11 > > >>>>>>> >> > > > > - Should we support both JDK-11 & JDK-8? > > >>>>>>> >> > > > > - Ditch JDK-11 and directly shoot for JDK-17? > > >>>>>>> >> > > > > > > >>>>>>> >> > > > > Let me know your thoughts, In case anyone has some > > >>>>>>> experience in > > >>>>>>> >> this > > >>>>>>> >> > > > area > > >>>>>>> >> > > > > and have tried something in the context, feel free to > > >>>>>>> share or > > >>>>>>> >> may be > > >>>>>>> >> > > if > > >>>>>>> >> > > > > someone has any potential action plan or so > > >>>>>>> >> > > > > > > >>>>>>> >> > > > > -Ayush > > >>>>>>> >> > > > > > > >>>>>>> >> > > > > [1] https://issues.apache.org/jira/browse/HIVE-22415 > > >>>>>>> >> > > > > [2] https://issues.apache.org/jira/browse/HIVE-24484 > > >>>>>>> >> > > > > > > >>>>>>> >> > > > > * changed the maven.compiler.source & > > >>>>>>> maven.compiler.target to 11 > > >>>>>>> >> > > > > > > >>>>>>> >> > > > > > >>>>>>> >> > > > > >>>>>>> >> > > > >>>>>>> >> > > >>>>>>> > > > >>>>>>> > > >>>>>> > > >