Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 5 additions & 0 deletions lucene/CHANGES.txt
Original file line number Diff line number Diff line change
Expand Up @@ -98,6 +98,9 @@ API Changes
* GITHUB#16052: Remove IOException from LeafReader#getPointValues, LeafReader#terms,
LeafReader#getDocCount signatures. (Ignacio Vera)

* GITHUB#16281: The checkIntegrity() method of codec Producer APIs gains a OneMerge parameter,
which is used to check for aborted merges during checksum validation. (Tanguy Leroux)

New Features
---------------------
* GITHUB#16241: Add HangulCompositionCharFilter to analysis-nori for opt-in composition of
Expand Down Expand Up @@ -142,6 +145,8 @@ Improvements

* GITHUB#15558: Refactor QueryCache for performance. (Sagar Upadhyaya)

* GITHUB#16281: File integrity checks periodically check if a merge is aborted. (Tanguy Leroux)

Optimizations
---------------------
* GITHUB#16254: Enable the vectorized findNextGEQ path on aarch64, where it was disabled on cores
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -38,6 +38,7 @@
import org.apache.lucene.index.ImpactsEnum;
import org.apache.lucene.index.IndexFileNames;
import org.apache.lucene.index.IndexOptions;
import org.apache.lucene.index.MergePolicy;
import org.apache.lucene.index.PostingsEnum;
import org.apache.lucene.index.SegmentReadState;
import org.apache.lucene.store.ByteArrayDataInput;
Expand Down Expand Up @@ -1404,15 +1405,15 @@ static FreqAndNormBuffer readImpacts(ByteArrayDataInput in, FreqAndNormBuffer re
}

@Override
public void checkIntegrity() throws IOException {
public void checkIntegrity(MergePolicy.OneMerge merge) throws IOException {
if (docIn != null) {
CodecUtil.checksumEntireFile(docIn);
CodecUtil.checksumEntireFile(docIn, merge);
}
if (posIn != null) {
CodecUtil.checksumEntireFile(posIn);
CodecUtil.checksumEntireFile(posIn, merge);
}
if (payIn != null) {
CodecUtil.checksumEntireFile(payIn);
CodecUtil.checksumEntireFile(payIn, merge);
}
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -43,6 +43,7 @@
import org.apache.lucene.index.FloatVectorValues;
import org.apache.lucene.index.IndexFileNames;
import org.apache.lucene.index.KnnVectorValues;
import org.apache.lucene.index.MergePolicy;
import org.apache.lucene.index.SegmentReadState;
import org.apache.lucene.index.SegmentWriteState;
import org.apache.lucene.index.VectorEncoding;
Expand Down Expand Up @@ -211,9 +212,9 @@ public RandomVectorScorer getRandomVectorScorer(String field, byte[] target) thr
}

@Override
public void checkIntegrity() throws IOException {
rawVectorsReader.checkIntegrity();
CodecUtil.checksumEntireFile(quantizedVectorData);
public void checkIntegrity(MergePolicy.OneMerge merge) throws IOException {
rawVectorsReader.checkIntegrity(merge);
CodecUtil.checksumEntireFile(quantizedVectorData, merge);
}

@Override
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -38,6 +38,7 @@
import org.apache.lucene.index.ImpactsEnum;
import org.apache.lucene.index.IndexFileNames;
import org.apache.lucene.index.IndexOptions;
import org.apache.lucene.index.MergePolicy;
import org.apache.lucene.index.PostingsEnum;
import org.apache.lucene.index.SegmentReadState;
import org.apache.lucene.search.DocAndFloatFeatureBuffer;
Expand Down Expand Up @@ -1449,15 +1450,15 @@ static FreqAndNormBuffer readImpacts(ByteArrayDataInput in, FreqAndNormBuffer re
}

@Override
public void checkIntegrity() throws IOException {
public void checkIntegrity(MergePolicy.OneMerge merge) throws IOException {
if (docIn != null) {
CodecUtil.checksumEntireFile(docIn);
CodecUtil.checksumEntireFile(docIn, merge);
}
if (posIn != null) {
CodecUtil.checksumEntireFile(posIn);
CodecUtil.checksumEntireFile(posIn, merge);
}
if (payIn != null) {
CodecUtil.checksumEntireFile(payIn);
CodecUtil.checksumEntireFile(payIn, merge);
}
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -31,6 +31,7 @@
import org.apache.lucene.index.FieldInfos;
import org.apache.lucene.index.ImpactsEnum;
import org.apache.lucene.index.IndexFileNames;
import org.apache.lucene.index.MergePolicy;
import org.apache.lucene.index.NumericDocValues;
import org.apache.lucene.index.PostingsEnum;
import org.apache.lucene.index.SegmentReadState;
Expand Down Expand Up @@ -1683,8 +1684,8 @@ public DocValuesSkipper getSkipper(FieldInfo field) {
}

@Override
public void checkIntegrity() throws IOException {
CodecUtil.checksumEntireFile(data);
public void checkIntegrity(MergePolicy.OneMerge merge) throws IOException {
CodecUtil.checksumEntireFile(data, merge);
}

/**
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -32,6 +32,7 @@
import org.apache.lucene.index.FieldInfos;
import org.apache.lucene.index.FloatVectorValues;
import org.apache.lucene.index.IndexFileNames;
import org.apache.lucene.index.MergePolicy;
import org.apache.lucene.index.SegmentReadState;
import org.apache.lucene.index.VectorSimilarityFunction;
import org.apache.lucene.internal.hppc.IntObjectHashMap;
Expand Down Expand Up @@ -218,9 +219,9 @@ private FieldEntry readField(IndexInput input, FieldInfo info) throws IOExceptio
}

@Override
public void checkIntegrity() throws IOException {
CodecUtil.checksumEntireFile(vectorData);
CodecUtil.checksumEntireFile(vectorIndex);
public void checkIntegrity(MergePolicy.OneMerge merge) throws IOException {
CodecUtil.checksumEntireFile(vectorData, merge);
CodecUtil.checksumEntireFile(vectorIndex, merge);
}

private FieldEntry getFieldEntry(String field) {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -36,6 +36,7 @@
import org.apache.lucene.index.ImpactsEnum;
import org.apache.lucene.index.IndexFileNames;
import org.apache.lucene.index.IndexOptions;
import org.apache.lucene.index.MergePolicy;
import org.apache.lucene.index.PostingsEnum;
import org.apache.lucene.index.SegmentReadState;
import org.apache.lucene.index.SlowImpactsEnum;
Expand Down Expand Up @@ -2042,15 +2043,15 @@ public long cost() {
}

@Override
public void checkIntegrity() throws IOException {
public void checkIntegrity(MergePolicy.OneMerge merge) throws IOException {
if (docIn != null) {
CodecUtil.checksumEntireFile(docIn);
CodecUtil.checksumEntireFile(docIn, merge);
}
if (posIn != null) {
CodecUtil.checksumEntireFile(posIn);
CodecUtil.checksumEntireFile(posIn, merge);
}
if (payIn != null) {
CodecUtil.checksumEntireFile(payIn);
CodecUtil.checksumEntireFile(payIn, merge);
}
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -29,6 +29,7 @@
import org.apache.lucene.index.FieldInfos;
import org.apache.lucene.index.IndexFileNames;
import org.apache.lucene.index.IndexOptions;
import org.apache.lucene.index.MergePolicy;
import org.apache.lucene.index.SegmentReadState;
import org.apache.lucene.index.Terms;
import org.apache.lucene.internal.hppc.IntCursor;
Expand Down Expand Up @@ -327,15 +328,15 @@ public int size() {
}

@Override
public void checkIntegrity() throws IOException {
public void checkIntegrity(MergePolicy.OneMerge merge) throws IOException {
// terms index
CodecUtil.checksumEntireFile(indexIn);
CodecUtil.checksumEntireFile(indexIn, merge);

// term dictionary
CodecUtil.checksumEntireFile(termsIn);
CodecUtil.checksumEntireFile(termsIn, merge);

// postings
postingsReader.checkIntegrity();
postingsReader.checkIntegrity(merge);
}

@Override
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -34,6 +34,7 @@
import org.apache.lucene.index.FieldInfos;
import org.apache.lucene.index.FloatVectorValues;
import org.apache.lucene.index.IndexFileNames;
import org.apache.lucene.index.MergePolicy;
import org.apache.lucene.index.SegmentReadState;
import org.apache.lucene.index.VectorSimilarityFunction;
import org.apache.lucene.internal.hppc.IntObjectHashMap;
Expand Down Expand Up @@ -214,9 +215,9 @@ private FieldEntry readField(IndexInput input, FieldInfo info) throws IOExceptio
}

@Override
public void checkIntegrity() throws IOException {
CodecUtil.checksumEntireFile(vectorData);
CodecUtil.checksumEntireFile(vectorIndex);
public void checkIntegrity(MergePolicy.OneMerge merge) throws IOException {
CodecUtil.checksumEntireFile(vectorData, merge);
CodecUtil.checksumEntireFile(vectorIndex, merge);
}

private FieldEntry getFieldEntry(String field) {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -38,6 +38,7 @@
import org.apache.lucene.index.ImpactsEnum;
import org.apache.lucene.index.IndexFileNames;
import org.apache.lucene.index.IndexOptions;
import org.apache.lucene.index.MergePolicy;
import org.apache.lucene.index.PostingsEnum;
import org.apache.lucene.index.SegmentReadState;
import org.apache.lucene.index.SlowImpactsEnum;
Expand Down Expand Up @@ -1795,15 +1796,15 @@ static FreqAndNormBuffer readImpacts(ByteArrayDataInput in, FreqAndNormBuffer re
}

@Override
public void checkIntegrity() throws IOException {
public void checkIntegrity(MergePolicy.OneMerge merge) throws IOException {
if (docIn != null) {
CodecUtil.checksumEntireFile(docIn);
CodecUtil.checksumEntireFile(docIn, merge);
}
if (posIn != null) {
CodecUtil.checksumEntireFile(posIn);
CodecUtil.checksumEntireFile(posIn, merge);
}
if (payIn != null) {
CodecUtil.checksumEntireFile(payIn);
CodecUtil.checksumEntireFile(payIn, merge);
}
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -33,6 +33,7 @@
import org.apache.lucene.index.FieldInfos;
import org.apache.lucene.index.FloatVectorValues;
import org.apache.lucene.index.IndexFileNames;
import org.apache.lucene.index.MergePolicy;
import org.apache.lucene.index.SegmentReadState;
import org.apache.lucene.index.VectorSimilarityFunction;
import org.apache.lucene.internal.hppc.IntObjectHashMap;
Expand Down Expand Up @@ -211,9 +212,9 @@ private FieldEntry readField(IndexInput input, FieldInfo info) throws IOExceptio
}

@Override
public void checkIntegrity() throws IOException {
CodecUtil.checksumEntireFile(vectorData);
CodecUtil.checksumEntireFile(vectorIndex);
public void checkIntegrity(MergePolicy.OneMerge merge) throws IOException {
CodecUtil.checksumEntireFile(vectorData, merge);
CodecUtil.checksumEntireFile(vectorIndex, merge);
}

private FieldEntry getFieldEntry(String field) {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -33,6 +33,7 @@
import org.apache.lucene.index.FieldInfos;
import org.apache.lucene.index.FloatVectorValues;
import org.apache.lucene.index.IndexFileNames;
import org.apache.lucene.index.MergePolicy;
import org.apache.lucene.index.SegmentReadState;
import org.apache.lucene.index.VectorEncoding;
import org.apache.lucene.index.VectorSimilarityFunction;
Expand Down Expand Up @@ -229,9 +230,9 @@ private FieldEntry readField(IndexInput input, FieldInfo info) throws IOExceptio
}

@Override
public void checkIntegrity() throws IOException {
CodecUtil.checksumEntireFile(vectorData);
CodecUtil.checksumEntireFile(vectorIndex);
public void checkIntegrity(MergePolicy.OneMerge merge) throws IOException {
CodecUtil.checksumEntireFile(vectorData, merge);
CodecUtil.checksumEntireFile(vectorIndex, merge);
}

private FieldEntry getFieldEntryOrThrow(String field) {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -37,6 +37,7 @@
import org.apache.lucene.index.FieldInfos;
import org.apache.lucene.index.FloatVectorValues;
import org.apache.lucene.index.IndexFileNames;
import org.apache.lucene.index.MergePolicy;
import org.apache.lucene.index.SegmentReadState;
import org.apache.lucene.index.VectorEncoding;
import org.apache.lucene.index.VectorSimilarityFunction;
Expand Down Expand Up @@ -229,9 +230,9 @@ private FieldEntry readField(IndexInput input, FieldInfo info) throws IOExceptio
}

@Override
public void checkIntegrity() throws IOException {
CodecUtil.checksumEntireFile(vectorData);
CodecUtil.checksumEntireFile(vectorIndex);
public void checkIntegrity(MergePolicy.OneMerge merge) throws IOException {
CodecUtil.checksumEntireFile(vectorData, merge);
CodecUtil.checksumEntireFile(vectorIndex, merge);
}

private FieldEntry getFieldEntryOrThrow(String field) {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -36,6 +36,7 @@
import org.apache.lucene.index.ImpactsEnum;
import org.apache.lucene.index.IndexFileNames;
import org.apache.lucene.index.IndexOptions;
import org.apache.lucene.index.MergePolicy;
import org.apache.lucene.index.PostingsEnum;
import org.apache.lucene.index.SegmentReadState;
import org.apache.lucene.index.SlowImpactsEnum;
Expand Down Expand Up @@ -2075,15 +2076,15 @@ private void prefetchSkipData(IndexInput docIn, long docStartFP, long skipOffset
}

@Override
public void checkIntegrity() throws IOException {
public void checkIntegrity(MergePolicy.OneMerge merge) throws IOException {
if (docIn != null) {
CodecUtil.checksumEntireFile(docIn);
CodecUtil.checksumEntireFile(docIn, merge);
}
if (posIn != null) {
CodecUtil.checksumEntireFile(posIn);
CodecUtil.checksumEntireFile(posIn, merge);
}
if (payIn != null) {
CodecUtil.checksumEntireFile(payIn);
CodecUtil.checksumEntireFile(payIn, merge);
}
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -34,6 +34,7 @@
import org.apache.lucene.index.FieldInfos;
import org.apache.lucene.index.FloatVectorValues;
import org.apache.lucene.index.IndexFileNames;
import org.apache.lucene.index.MergePolicy;
import org.apache.lucene.index.SegmentReadState;
import org.apache.lucene.index.SegmentWriteState;
import org.apache.lucene.index.VectorEncoding;
Expand Down Expand Up @@ -166,9 +167,9 @@ static void validateFieldEntry(FieldInfo info, FieldEntry fieldEntry) {
}

@Override
public void checkIntegrity() throws IOException {
rawVectorsReader.checkIntegrity();
CodecUtil.checksumEntireFile(quantizedVectorData);
public void checkIntegrity(MergePolicy.OneMerge merge) throws IOException {
rawVectorsReader.checkIntegrity(merge);
CodecUtil.checksumEntireFile(quantizedVectorData, merge);
}

private FieldEntry getFieldEntry(String field) {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -30,6 +30,7 @@
import org.apache.lucene.index.ImpactsEnum;
import org.apache.lucene.index.IndexFileNames;
import org.apache.lucene.index.IndexOptions;
import org.apache.lucene.index.MergePolicy;
import org.apache.lucene.index.PostingsEnum;
import org.apache.lucene.index.SegmentReadState;
import org.apache.lucene.index.TermState;
Expand Down Expand Up @@ -867,11 +868,11 @@ public String toString() {
}

@Override
public void checkIntegrity() throws IOException {
public void checkIntegrity(MergePolicy.OneMerge merge) throws IOException {
// verify terms
CodecUtil.checksumEntireFile(in);
CodecUtil.checksumEntireFile(in, merge);

// verify postings
postingsReader.checkIntegrity();
postingsReader.checkIntegrity(merge);
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -28,6 +28,7 @@
import org.apache.lucene.index.FieldInfo;
import org.apache.lucene.index.IndexFileNames;
import org.apache.lucene.index.IndexOptions;
import org.apache.lucene.index.MergePolicy;
import org.apache.lucene.index.SegmentReadState;
import org.apache.lucene.index.Terms;
import org.apache.lucene.store.IndexInput;
Expand Down Expand Up @@ -226,12 +227,12 @@ public int size() {
}

@Override
public void checkIntegrity() throws IOException {
public void checkIntegrity(MergePolicy.OneMerge merge) throws IOException {
// term dictionary
CodecUtil.checksumEntireFile(in);
CodecUtil.checksumEntireFile(in, merge);

// postings
postingsReader.checkIntegrity();
postingsReader.checkIntegrity(merge);
}

@Override
Expand Down
Loading
Loading