Skip to content

Upgrade lucene to 10.4#153

Open
punAhuja wants to merge 3 commits into
NVIDIA:release/26.04from
SearchScale:puneet/lucene104upgrade2604
Open

Upgrade lucene to 10.4#153
punAhuja wants to merge 3 commits into
NVIDIA:release/26.04from
SearchScale:puneet/lucene104upgrade2604

Conversation

@punAhuja

Copy link
Copy Markdown
Contributor

Upgrade Lucene to 10.4 for release/26.04

This PR upgrades Lucene from 10.2.0 to 10.4.0 while maintaining cuVS 26.04.0 compatibility for the release/26.04 branch.

Changes:

Includes necessary API refactoring (AcceleratedHNSW improvements) that the Lucene upgrade depends on
Updates all Lucene dependencies to 10.4.0
Adapts to Lucene 10.4 API changes (AcceptDocs, GroupVarInt encoding)

narangvivek10 and others added 3 commits May 26, 2026 02:10
- Fixes NVIDIA#114
  - Mainly code deduplication by plugging in `AcceleratedHNSWUtils` and some rearrangement.

- Summary of code changes:
  - Update `AcceleratedHNSWParams` to incorporate feedback suggestions from NVIDIA#120 and update Javadocs.
  - Update `AcceleratedHNSWUtils` to be able to plug into `Lucene99AcceleratedHNSWVectorsWriter`. `AcceleratedHNSWUtils` is meant to contain common logic for `Lucene99AcceleratedHNSWVectorsWriter`, `LuceneAcceleratedHNSWBinaryQuantizedVectorsWriter`, and `LuceneAcceleratedHNSWScalarQuantizedVectorsWriter`.
  - Update `QuantizedFieldWriter` to `FieldWriter` as it can be used for all three mentioned above.
  - Update `Lucene101AcceleratedHNSWCodec` to add some javadocs.
  - Update `Lucene99AcceleratedHNSWVectorsFormat` to plug in the number of merge workers and an instance of `TaskExecutor` used for the fallback mechanism, and some variable renaming.
  -  Update `Lucene99AcceleratedHNSWVectorsWriter` to remove methods that are now in the `AcceleratedHNSWUtils`, remove some unused/obsolete code,  remove some CAGRA merge API related methods that are not currently used and planned to be taken as a separate task, variable renaming, and update documentation.
  - Update `LuceneAcceleratedHNSWBinaryQuantizedVectorsWriter` to use the now renamed `FieldWriter`.
  - Update `LuceneAcceleratedHNSWScalarQuantizedVectorsWriter` to use the now renamed `FieldWriter`.
  - Update `Utils` to move a common method `createListFromMergedVectors`.
  - Update `TestAcceleratedHNSWParams` to adapt to the feedback suggestion code changes from NVIDIA#120.

Authors:
  - Vivek Narang (https://github.com/narangvivek10)

Approvers:
  - MithunR (https://github.com/mythrocks)

URL: NVIDIA#115
@punAhuja punAhuja requested review from a team as code owners May 27, 2026 07:35
@copy-pr-bot

copy-pr-bot Bot commented May 27, 2026

Copy link
Copy Markdown

This pull request requires additional validation before any workflows can run on NVIDIA's runners.

Pull request vetters can view their responsibilities here.

Contributors can view more details about this message here.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants