From 189b90bcf72ec1ead944d92066ad70b8959b1546 Mon Sep 17 00:00:00 2001 From: VivekKumarNeu Date: Tue, 30 Sep 2025 17:25:38 -0700 Subject: [PATCH] LUCENE-15108: use writer.getReader instead of DirectoryReader.open --- lucene/CHANGES.txt | 2 ++ .../lucene/tests/index/LegacyBaseDocValuesFormatTestCase.java | 4 ++-- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/lucene/CHANGES.txt b/lucene/CHANGES.txt index aec321005770..f0984d5a025f 100644 --- a/lucene/CHANGES.txt +++ b/lucene/CHANGES.txt @@ -96,6 +96,8 @@ Bug Fixes * GITHUB#14847: Allow Faiss vector format to index >2GB of vectors per-field per-segment by using MemorySegment APIs (instead of ByteBuffer) to copy bytes to native memory. (Kaival Parikh) +* GITHUB#15108: Fixed test failure caused by DirectoryReader.open() reading an index with uncommitted changes. (Vivek Kumar) + * GITHUB#15213: Don't normalize centroids with zero samples, which caused divide-by-zero. (Mike Sokolov) * GITHUB#15125: Handle inconsistent schema on flush with index sorts (Nhat Nguyen) diff --git a/lucene/test-framework/src/java/org/apache/lucene/tests/index/LegacyBaseDocValuesFormatTestCase.java b/lucene/test-framework/src/java/org/apache/lucene/tests/index/LegacyBaseDocValuesFormatTestCase.java index a77050a981c5..fbccda1708b6 100644 --- a/lucene/test-framework/src/java/org/apache/lucene/tests/index/LegacyBaseDocValuesFormatTestCase.java +++ b/lucene/test-framework/src/java/org/apache/lucene/tests/index/LegacyBaseDocValuesFormatTestCase.java @@ -1544,14 +1544,14 @@ private void doTestSortedNumericsVsStoredFields(LongSupplier counts, LongSupplie int id = random().nextInt(numDocs); writer.deleteDocuments(new Term("id", Integer.toString(id))); } - try (DirectoryReader reader = maybeWrapWithMergingReader(DirectoryReader.open(dir))) { + try (DirectoryReader reader = maybeWrapWithMergingReader(writer.getReader())) { TestUtil.checkReader(reader); compareStoredFieldWithSortedNumericsDV(reader, "stored", "dv"); } // merge some segments and ensure that at least one of them has more than // 256 values writer.forceMerge(numDocs / 256); - try (DirectoryReader reader = maybeWrapWithMergingReader(DirectoryReader.open(dir))) { + try (DirectoryReader reader = maybeWrapWithMergingReader(writer.getReader())) { TestUtil.checkReader(reader); compareStoredFieldWithSortedNumericsDV(reader, "stored", "dv"); }