Skip to content

Commit 78a622d

Browse files
authored
Remove merge instance assertions from AssertingKnnVectorsFormat (#15044)
Get byte/float vectors can run at the same time as an open merge instance. This does mean that byte/float accesses at that time use the wrong ReadAdvice on MMapDirectory. This requires further investigation.
1 parent cfb407b commit 78a622d

File tree

1 file changed

+1
-13
lines changed

1 file changed

+1
-13
lines changed

lucene/test-framework/src/java/org/apache/lucene/tests/codecs/asserting/AssertingKnnVectorsFormat.java

Lines changed: 1 addition & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -114,20 +114,13 @@ public static class AssertingKnnVectorsReader extends KnnVectorsReader
114114
implements HnswGraphProvider {
115115
public final KnnVectorsReader delegate;
116116
private final FieldInfos fis;
117-
private final boolean mergeInstance;
118117
private final AtomicInteger mergeInstanceCount = new AtomicInteger();
119118
private final AtomicInteger finishMergeCount = new AtomicInteger();
120119

121120
private AssertingKnnVectorsReader(KnnVectorsReader delegate, FieldInfos fis) {
122-
this(delegate, fis, false);
123-
}
124-
125-
private AssertingKnnVectorsReader(
126-
KnnVectorsReader delegate, FieldInfos fis, boolean mergeInstance) {
127121
assert delegate != null;
128122
this.delegate = delegate;
129123
this.fis = fis;
130-
this.mergeInstance = mergeInstance;
131124
}
132125

133126
@Override
@@ -137,8 +130,6 @@ public void checkIntegrity() throws IOException {
137130

138131
@Override
139132
public FloatVectorValues getFloatVectorValues(String field) throws IOException {
140-
assert mergeInstanceCount.get() == finishMergeCount.get() || mergeInstance
141-
: "Called on the wrong instance";
142133
FieldInfo fi = fis.fieldInfo(field);
143134
assert fi != null
144135
&& fi.getVectorDimension() > 0
@@ -153,8 +144,6 @@ public FloatVectorValues getFloatVectorValues(String field) throws IOException {
153144

154145
@Override
155146
public ByteVectorValues getByteVectorValues(String field) throws IOException {
156-
assert mergeInstanceCount.get() == finishMergeCount.get() || mergeInstance
157-
: "Called on the wrong instance";
158147
FieldInfo fi = fis.fieldInfo(field);
159148
assert fi != null
160149
&& fi.getVectorDimension() > 0
@@ -196,8 +185,7 @@ public KnnVectorsReader getMergeInstance() throws IOException {
196185
mergeInstanceCount.incrementAndGet();
197186
AtomicInteger parentMergeFinishCount = this.finishMergeCount;
198187

199-
return new AssertingKnnVectorsReader(
200-
mergeVectorsReader, AssertingKnnVectorsReader.this.fis, true) {
188+
return new AssertingKnnVectorsReader(mergeVectorsReader, AssertingKnnVectorsReader.this.fis) {
201189
private boolean finished;
202190

203191
@Override

0 commit comments

Comments
 (0)