You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@lucene.apache.org by "finnroblin (via GitHub)" <gi...@apache.org> on 2026/01/07 21:45:03 UTC
[PR] Fix mergedbytevectorvalues lastord [lucene]
finnroblin opened a new pull request, #15553:
URL: https://github.com/apache/lucene/pull/15553
### Description
Fixes MergedByteVectorValues behavior as described in #14992. Currently in `MergedByteVectorValues::nextDoc()` the `lastOrd` value is not incremented when the iterator is advanced. If `nextDoc` is called several times and a vector is loaded then the bad state of `lastOrd` causes an exception. One case where this occurs is In OpenSearch k-NN where we split a list of vectors into multiple parts to upload the partitions in parallel. (Please see https://github.com/opensearch-project/k-NN/issues/2803 for more details about the use case this bugfix solves).
This PR includes a unit test that fails without the bugfix.
Thanks @0ctopus13prime for the original RFC and bugfix!
Failed test output, pre-bug fix: (use the first commit in this PR to replicate. The second commit contains bugfix.)
```
TestMergedByteVectorValues > testSkipThenLoadByteVectorDuringMerge FAILED
java.lang.AssertionError: Test failed during merge
at __randomizedtesting.SeedInfo.seed([CDF9B6BFD3014176:37C8D3B5F864CA9F]:0)
at org.apache.lucene.codecs.TestMergedByteVectorValues.testSkipThenLoadByteVectorDuringMerge(TestMergedByteVectorValues.java:201)
at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:104)
at java.base/java.lang.reflect.Method.invoke(Method.java:565)
at com.carrotsearch.randomizedtesting.RandomizedRunner.invoke(RandomizedRunner.java:1763)
at com.carrotsearch.randomizedtesting.RandomizedRunner$8.evaluate(RandomizedRunner.java:946)
at com.carrotsearch.randomizedtesting.RandomizedRunner$9.evaluate(RandomizedRunner.java:982)
at com.carrotsearch.randomizedtesting.RandomizedRunner$10.evaluate(RandomizedRunner.java:996)
at org.apache.lucene.tests.util.TestRuleSetupTeardownChained$1.evaluate(TestRuleSetupTeardownChained.java:48)
at org.apache.lucene.tests.util.AbstractBeforeAfterRule$1.evaluate(AbstractBeforeAfterRule.java:43)
at org.apache.lucene.tests.util.TestRuleThreadAndTestName$1.evaluate(TestRuleThreadAndTestName.java:45)
at org.apache.lucene.tests.util.TestRuleIgnoreAfterMaxFailures$1.evaluate(TestRuleIgnoreAfterMaxFailures.java:60)
at org.apache.lucene.tests.util.TestRuleMarkFailure$1.evaluate(TestRuleMarkFailure.java:44)
at org.junit.rules.RunRules.evaluate(RunRules.java:20)
at com.carrotsearch.randomizedtesting.rules.StatementAdapter.evaluate(StatementAdapter.java:36)
at com.carrotsearch.randomizedtesting.ThreadLeakControl$StatementRunner.run(ThreadLeakControl.java:390)
at com.carrotsearch.randomizedtesting.ThreadLeakControl.forkTimeoutingTask(ThreadLeakControl.java:843)
at com.carrotsearch.randomizedtesting.ThreadLeakControl$3.evaluate(ThreadLeakControl.java:490)
at com.carrotsearch.randomizedtesting.RandomizedRunner.runSingleTest(RandomizedRunner.java:955)
at com.carrotsearch.randomizedtesting.RandomizedRunner$5.evaluate(RandomizedRunner.java:840)
at com.carrotsearch.randomizedtesting.RandomizedRunner$6.evaluate(RandomizedRunner.java:891)
at com.carrotsearch.randomizedtesting.RandomizedRunner$7.evaluate(RandomizedRunner.java:902)
at org.apache.lucene.tests.util.AbstractBeforeAfterRule$1.evaluate(AbstractBeforeAfterRule.java:43)
at com.carrotsearch.randomizedtesting.rules.StatementAdapter.evaluate(StatementAdapter.java:36)
at org.apache.lucene.tests.util.TestRuleStoreClassName$1.evaluate(TestRuleStoreClassName.java:38)
at com.carrotsearch.randomizedtesting.rules.NoShadowingOrOverridesOnMethodsRule$1.evaluate(NoShadowingOrOverridesOnMethodsRule.java:40)
at com.carrotsearch.randomizedtesting.rules.NoShadowingOrOverridesOnMethodsRule$1.evaluate(NoShadowingOrOverridesOnMethodsRule.java:40)
at com.carrotsearch.randomizedtesting.rules.StatementAdapter.evaluate(StatementAdapter.java:36)
at com.carrotsearch.randomizedtesting.rules.StatementAdapter.evaluate(StatementAdapter.java:36)
at org.apache.lucene.tests.util.TestRuleAssertionsRequired$1.evaluate(TestRuleAssertionsRequired.java:52)
at org.apache.lucene.tests.util.AbstractBeforeAfterRule$1.evaluate(AbstractBeforeAfterRule.java:43)
at org.apache.lucene.tests.util.TestRuleMarkFailure$1.evaluate(TestRuleMarkFailure.java:44)
at org.apache.lucene.tests.util.TestRuleIgnoreAfterMaxFailures$1.evaluate(TestRuleIgnoreAfterMaxFailures.java:60)
at org.apache.lucene.tests.util.TestRuleIgnoreTestSuites$1.evaluate(TestRuleIgnoreTestSuites.java:47)
at org.junit.rules.RunRules.evaluate(RunRules.java:20)
at com.carrotsearch.randomizedtesting.rules.StatementAdapter.evaluate(StatementAdapter.java:36)
at com.carrotsearch.randomizedtesting.ThreadLeakControl$StatementRunner.run(ThreadLeakControl.java:390)
at com.carrotsearch.randomizedtesting.ThreadLeakControl.lambda$forkTimeoutingTask$0(ThreadLeakControl.java:850)
at java.base/java.lang.Thread.run(Thread.java:1474)
Caused by:
java.lang.IllegalStateException: only supports forward iteration: ord=3, lastOrd=-1
at org.apache.lucene.codecs.KnnVectorsWriter$MergedVectorValues$MergedByteVectorValues.vectorValue(KnnVectorsWriter.java:418)
at org.apache.lucene.codecs.TestMergedByteVectorValues$1$1.mergeOneField(TestMergedByteVectorValues.java:137)
at org.apache.lucene.codecs.perfield.PerFieldKnnVectorsFormat$FieldsWriter.mergeOneField(PerFieldKnnVectorsFormat.java:128)
at org.apache.lucene.codecs.KnnVectorsWriter.merge(KnnVectorsWriter.java:105)
at org.apache.lucene.index.SegmentMerger.mergeVectorValues(SegmentMerger.java:272)
at org.apache.lucene.index.SegmentMerger.mergeWithLogging(SegmentMerger.java:315)
at org.apache.lucene.index.SegmentMerger.merge(SegmentMerger.java:159)
at org.apache.lucene.index.IndexWriter.addIndexesReaderMerge(IndexWriter.java:3467)
at org.apache.lucene.index.IndexWriter$AddIndexesMergeSource.merge(IndexWriter.java:3349)
at org.apache.lucene.index.ConcurrentMergeScheduler.doMerge(ConcurrentMergeScheduler.java:661)
at org.apache.lucene.index.ConcurrentMergeScheduler$MergeThread.run(ConcurrentMergeScheduler.java:720)
:lucene:core:test (FAILURE): 1 test, 1 failure
1 test completed, 1 failed
> Task :checkAnyTestIncludedAfterFiltering
> Task :lucene:core:wipeTaskTemp UP-TO-DATE
ERROR: 1 test has failed:
- org.apache.lucene.codecs.TestMergedByteVectorValues.testSkipThenLoadByteVectorDuringMerge (:lucene:core)
Test output: /Users/finnrobl/Documents/lucene/lucene/core/build/test-results/test/outputs/OUTPUT-org.apache.lucene.codecs.TestMergedByteVectorValues.txt
Reproduce with: gradlew :lucene:core:test --tests "org.apache.lucene.codecs.TestMergedByteVectorValues.testSkipThenLoadByteVectorDuringMerge" -Ptests.asserts=true -Ptests.file.encoding=UTF-8 -Ptests.gui=false "-Ptests.jvmargs=-XX:TieredStopAtLevel=1 -XX:+UseParallelGC -XX:ActiveProcessorCount=1" -Ptests.jvms=6 -Ptests.seed=CDF9B6BFD3014176 -Ptests.vectorsize=default
```
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: issues-unsubscribe@lucene.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscribe@lucene.apache.org
For additional commands, e-mail: issues-help@lucene.apache.org
Re: [PR] Fix mergedbytevectorvalues lastord [lucene]
Posted by "finnroblin (via GitHub)" <gi...@apache.org>.
finnroblin commented on PR #15553:
URL: https://github.com/apache/lucene/pull/15553#issuecomment-3844330782
Thanks @kaivalnp @benwtrent @navneet1v !
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: issues-unsubscribe@lucene.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscribe@lucene.apache.org
For additional commands, e-mail: issues-help@lucene.apache.org
Re: [PR] Fix mergedbytevectorvalues lastord [lucene]
Posted by "kaivalnp (via GitHub)" <gi...@apache.org>.
kaivalnp commented on code in PR #15553:
URL: https://github.com/apache/lucene/pull/15553#discussion_r2673490493
##########
lucene/core/src/test/org/apache/lucene/codecs/TestMergedByteVectorValues.java:
##########
@@ -0,0 +1,220 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.lucene.codecs;
+
+import java.io.IOException;
+import java.util.ArrayList;
+import java.util.List;
+import org.apache.lucene.document.Document;
+import org.apache.lucene.document.KnnByteVectorField;
+import org.apache.lucene.index.ByteVectorValues;
+import org.apache.lucene.index.CodecReader;
+import org.apache.lucene.index.DirectoryReader;
+import org.apache.lucene.index.FieldInfo;
+import org.apache.lucene.index.IndexWriter;
+import org.apache.lucene.index.IndexWriterConfig;
+import org.apache.lucene.index.KnnVectorValues;
+import org.apache.lucene.index.LeafReaderContext;
+import org.apache.lucene.index.MergeState;
+import org.apache.lucene.index.SegmentReadState;
+import org.apache.lucene.index.SegmentWriteState;
+import org.apache.lucene.index.Sorter;
+import org.apache.lucene.index.VectorSimilarityFunction;
+import org.apache.lucene.store.Directory;
+import org.apache.lucene.tests.codecs.asserting.AssertingCodec;
+import org.apache.lucene.tests.util.LuceneTestCase;
+import org.apache.lucene.tests.util.TestUtil;
+
+/** Tests for MergedByteVectorValues to ensure lastOrd is properly incremented during iteration. */
+public class TestMergedByteVectorValues extends LuceneTestCase {
+
+ /**
+ * Tests that skipping vectors via nextDoc() and then loading a vector works correctly during
+ * merge. This verifies the fix for the lastOrd tracking bug in MergedByteVectorValues.
+ *
+ * <p>The bug: MergedByteVectorValues.nextDoc() does not increment lastOrd, so when you skip N
+ * vectors and then try to load vectorValue(N), it fails because lastOrd is still -1.
+ */
+ public void testSkipThenLoadByteVectorDuringMerge() throws IOException {
Review Comment:
The setup of this test seems complicated to me -- considering the gist is:
```java
// Run the test
ByteVectorValues values =
KnnVectorsWriter.MergedVectorValues.mergeByteVectorValues(
fieldInfo, mergeState);
// Skip doc 0 and load doc 1
values.iterator().nextDoc(); // doc 0
values.iterator().nextDoc(); // doc 1
// Read vector for doc 1
assertArrayEquals(expected, values.vectorValue(1)); // throws IllegalArgumentException on main
```
It's probably because `ByteVectorValuesSub` and `MergedByteVectorValues` are private, so we have to go through public APIs to instantiate them + execute the test?
Perhaps we can make them package-private for testing? It would simplify the test to something like:
```java
/**
* Test that skipping vectors in MergedByteVectorValues via nextDoc() and then loading a
* subsequent vector via vectorValue() works correctly.
*/
public void testSkipsInMergedByteVectorValues() throws IOException {
// Data
List<byte[]> vectors = List.of(new byte[] {0}, new byte[] {1});
// Setup
KnnVectorsWriter.ByteVectorValuesSub sub =
new KnnVectorsWriter.ByteVectorValuesSub(x -> x, ByteVectorValues.fromBytes(vectors, 1));
MergeState state =
new MergeState(
null, null, null, null, null, null, null, null, null, null, null, null, null, null,
null, false);
// Run the test
ByteVectorValues values =
new KnnVectorsWriter.MergedVectorValues.MergedByteVectorValues(List.of(sub), state);
// Skip doc 0 and load doc 1
values.iterator().nextDoc(); // doc 0
values.iterator().nextDoc(); // doc 1
// Read vector for doc 1
assertArrayEquals(vectors.get(1), values.vectorValue(1));
}
```
Although I'll wait for someone else to weigh in on this..
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: issues-unsubscribe@lucene.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscribe@lucene.apache.org
For additional commands, e-mail: issues-help@lucene.apache.org
Re: [PR] Fix mergedbytevectorvalues lastord [lucene]
Posted by "kaivalnp (via GitHub)" <gi...@apache.org>.
kaivalnp commented on PR #15553:
URL: https://github.com/apache/lucene/pull/15553#issuecomment-3843647509
@benwtrent sorry I'm a bit unfamiliar with what can and cannot be merged in the freeze -- do you mean we can put this bug-fix in 10.4? (i.e. first commit to `main`, then to `branch_10x`, then raise PR against `branch_10_4`).
Or does it have to go into 10.5 now?
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: issues-unsubscribe@lucene.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscribe@lucene.apache.org
For additional commands, e-mail: issues-help@lucene.apache.org
Re: [PR] Fix mergedbytevectorvalues lastord [lucene]
Posted by "github-actions[bot] (via GitHub)" <gi...@apache.org>.
github-actions[bot] commented on PR #15553:
URL: https://github.com/apache/lucene/pull/15553#issuecomment-3787548323
This PR has not had activity in the past 2 weeks, labeling it as stale. If the PR is waiting for review, notify the dev@lucene.apache.org list. Thank you for your contribution!
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: issues-unsubscribe@lucene.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscribe@lucene.apache.org
For additional commands, e-mail: issues-help@lucene.apache.org
Re: [PR] Fix mergedbytevectorvalues lastord [lucene]
Posted by "kaivalnp (via GitHub)" <gi...@apache.org>.
kaivalnp commented on code in PR #15553:
URL: https://github.com/apache/lucene/pull/15553#discussion_r2722500032
##########
lucene/core/src/java/org/apache/lucene/codecs/KnnVectorsWriter.java:
##########
@@ -401,7 +401,7 @@ static class MergedByteVectorValues extends ByteVectorValues {
private int docId = -1;
ByteVectorValuesSub current;
- private MergedByteVectorValues(List<ByteVectorValuesSub> subs, MergeState mergeState)
+ MergedByteVectorValues(List<ByteVectorValuesSub> subs, MergeState mergeState)
Review Comment:
Can you add a comment specifying that this is package-private for testing?
##########
lucene/core/src/java/org/apache/lucene/codecs/KnnVectorsWriter.java:
##########
@@ -135,7 +135,7 @@ public int index() {
}
}
- private static class ByteVectorValuesSub extends DocIDMerger.Sub {
+ static class ByteVectorValuesSub extends DocIDMerger.Sub {
Review Comment:
Can we add some Javadocs with the `@lucene.internal` tag to avoid users from depending on this class, now that its more accessible?
##########
lucene/core/src/test/org/apache/lucene/codecs/TestMergedByteVectorValues.java:
##########
@@ -0,0 +1,55 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.lucene.codecs;
+
+import java.io.IOException;
+import java.util.List;
+import org.apache.lucene.index.ByteVectorValues;
+import org.apache.lucene.index.MergeState;
+import org.apache.lucene.tests.util.LuceneTestCase;
+
+/** Tests for MergedByteVectorValues to ensure lastOrd is properly incremented during iteration. */
+public class TestMergedByteVectorValues extends LuceneTestCase {
+
+ /**
+ * Test that skipping vectors in MergedByteVectorValues via nextDoc() and then loading a
+ * subsequent vector via vectorValue() works correctly.
+ */
+ public void testSkipsInMergedByteVectorValues() throws IOException {
Review Comment:
Should we include an equivalent test for the float vector values? (making the class more generic like `TestMergedVectorValues`)
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: issues-unsubscribe@lucene.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscribe@lucene.apache.org
For additional commands, e-mail: issues-help@lucene.apache.org
Re: [PR] Fix mergedbytevectorvalues lastord [lucene]
Posted by "finnroblin (via GitHub)" <gi...@apache.org>.
finnroblin commented on PR #15553:
URL: https://github.com/apache/lucene/pull/15553#issuecomment-3837027362
Thanks @kaivalnp ! I've added `@lucene.internal` annotations/package-private comments as suggested and added a mergedFloatVectorValues test. Also, I added to `CHANGES.txt` under the 10.4.0 section.
> This bug only affects users doing something specific during merging that skips a vector?
Yes, the bugfix will allow OpenSearch k-NN to partition different parts of the vectorvalues during merging so we can upload the vectors in parallel for a GPU acceleration use case (more detail [here](https://github.com/opensearch-project/k-NN/issues/2803)). I suppose it will also affect any user who uses `nextDoc` -> delayed `vectorValue` read, but I can't think of any use cases besides partitioning a segment.
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: issues-unsubscribe@lucene.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscribe@lucene.apache.org
For additional commands, e-mail: issues-help@lucene.apache.org
Re: [PR] Fix mergedbytevectorvalues lastord [lucene]
Posted by "kaivalnp (via GitHub)" <gi...@apache.org>.
kaivalnp commented on PR #15553:
URL: https://github.com/apache/lucene/pull/15553#issuecomment-3844059189
Thanks @benwtrent -- I merged, backported to `branch_10x` and opened #15664 for pushing to `branch_10_4`
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: issues-unsubscribe@lucene.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscribe@lucene.apache.org
For additional commands, e-mail: issues-help@lucene.apache.org
Re: [PR] Fix mergedbytevectorvalues lastord [lucene]
Posted by "kaivalnp (via GitHub)" <gi...@apache.org>.
kaivalnp merged PR #15553:
URL: https://github.com/apache/lucene/pull/15553
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: issues-unsubscribe@lucene.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscribe@lucene.apache.org
For additional commands, e-mail: issues-help@lucene.apache.org
Re: [PR] Fix mergedbytevectorvalues lastord [lucene]
Posted by "navneet1v (via GitHub)" <gi...@apache.org>.
navneet1v commented on PR #15553:
URL: https://github.com/apache/lucene/pull/15553#issuecomment-3721013751
Tagging few folks. @mikemccand, @kaivalnp and @vigyasharma to see if they can review the PR.
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: issues-unsubscribe@lucene.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscribe@lucene.apache.org
For additional commands, e-mail: issues-help@lucene.apache.org
Re: [PR] Fix mergedbytevectorvalues lastord [lucene]
Posted by "benwtrent (via GitHub)" <gi...@apache.org>.
benwtrent commented on PR #15553:
URL: https://github.com/apache/lucene/pull/15553#issuecomment-3843358765
@kaivalnp freeze is in effect, but we are blocked by https://github.com/apache/lucene/issues/15662
I am ok with this small change.
FYI, I have cut the branch.
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: issues-unsubscribe@lucene.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscribe@lucene.apache.org
For additional commands, e-mail: issues-help@lucene.apache.org
Re: [PR] Fix mergedbytevectorvalues lastord [lucene]
Posted by "benwtrent (via GitHub)" <gi...@apache.org>.
benwtrent commented on PR #15553:
URL: https://github.com/apache/lucene/pull/15553#issuecomment-3843724691
Freeze means only justified bug fixes
Since we are blocked, I think this one can go in, but please backport to 10.4 branch as soon as possible. I hope to start back up the releases process soon
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: issues-unsubscribe@lucene.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscribe@lucene.apache.org
For additional commands, e-mail: issues-help@lucene.apache.org