Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Upgrade to Lucene 10.1.0 #119308

Merged
merged 771 commits into from
Jan 30, 2025
Merged

Upgrade to Lucene 10.1.0 #119308

merged 771 commits into from
Jan 30, 2025

Conversation

ChrisHegarty
Copy link
Contributor

This commit upgrades to Lucene 10.1.0.

pmpailis and others added 30 commits October 4, 2024 17:02
This was restored due to a bad merge.
@ChrisHegarty ChrisHegarty added the test-release Trigger CI checks against release build label Jan 3, 2025
Copy link
Member

@javanna javanna left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM thanks (only one small thing in the buildkite pipelines that I think should get reverted, although it should not take effect)

@chatman
Copy link

chatman commented Jan 24, 2025

@ChrisHegarty I'm working on apache/lucene#14131, but in order to test it with Elasticsearch, I needed to test with Elasticsearch that uses Lucene 10. Hence, I'm looking at this branch. However, the work in apache/lucene#14131 integrates cuvs-java that uses Project Panama's features in JDK 22. However, Elasticsearch (as of this branch) still is on JDK21. Hence, trying to "gradlew compileJava" results in the following:

=======================================
Elasticsearch Build Hamster says Hello!
  Gradle Version        : 8.12
  OS Info               : Linux 6.8.0-49-generic (amd64)
  JDK Version           : 22.0.2+9-70 (Oracle)
  JAVA_HOME             : /opt/jdk-22.0.2
  Random Testing Seed   : 5173214438CDD58D
  In FIPS 140 mode      : false
=======================================

> Task :server:compileJava FAILED
warning: /home/ishan/.m2/repository/com/nvidia/cuvs/cuvs-java/25.02/cuvs-java-25.02.jar(/module-info.class): major version 66 is newer than 65, the highest major version supported by this compiler.
  It is recommended that the compiler be upgraded.
error: warnings found and -Werror specified
1 error
1 warning

[Incubating] Problems report is available at: file:///home/ishan/code/elasticsearch/build/reports/problems/problems-report.html

FAILURE: Build failed with an exception.

(the patch is https://termbin.com/v0co on top of this branch, along with the Lucene PR for cuVS being available from a local maven snapshot based on 10.2).

Any ideas or thoughts, please? Is there a plan (or will there be) to raise minimum JDK level to 22?

@ChrisHegarty
Copy link
Contributor Author

Any ideas or thoughts, please? Is there a plan (or will there be) to raise minimum JDK level to 22?

There is certainly some complications here, but we can resolve them.

Elasticsearch compiles with a minimum of JDK 21, but runs with the latest JDK, currently 23. We mostly do something similar with Lucene. I need to look a bit more at how this is all supposed to work in Lucene first, then I'll see how we can get this working with ES.

@chatman
Copy link

chatman commented Jan 27, 2025

Elasticsearch compiles with a minimum of JDK 21, but runs with the latest JDK, currently 23. We mostly do something similar with Lucene. I need to look a bit more at how this is all supposed to work in Lucene first, then I'll see how we can get this working with ES.

I'm trying to get a branch working with it: https://github.com/SearchScale/elasticsearch/tree/cuvs-integration
Mainly, upgraded things to minimum JDK22 (so that it doesn't complain that CuVS is compiled with JDK22).
I'll send you some ideas on a dev setup on that CuVS-Java PR so that you can kindly test it out.

@ChrisHegarty
Copy link
Contributor Author

Linking this test PR that we need before merging the Lucene 10.1.0 upgrade - #121104

@ChrisHegarty ChrisHegarty merged commit 4baffe4 into main Jan 30, 2025
15 of 21 checks passed
@ChrisHegarty ChrisHegarty deleted the lucene_snapshot_10_1 branch January 30, 2025 13:41
@tlrx
Copy link
Member

tlrx commented Jan 30, 2025

Nice work @ChrisHegarty 👏

@mark-vieira
Copy link
Contributor

Any ideas or thoughts, please? Is there a plan (or will there be) to raise minimum JDK level to 22?

There are no plans to bump the minimum Java version at this time. The soonest we would do this would be with the release of Java 25, as our general policy is for minimum runtime version to be LTS versions.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
:Search/Search Search-related issues that do not fall into other categories serverless-linked Added by automation, don't add manually Team:Search Meta label for search team test-full-bwc Trigger full BWC version matrix tests test-release Trigger CI checks against release build test-update-serverless >upgrade v9.0.0
Projects
None yet
Development

Successfully merging this pull request may close these issues.

10 participants