diff --git a/build.gradle b/build.gradle
index 4f5fcfdab274..79e58db8002c 100644
--- a/build.gradle
+++ b/build.gradle
@@ -36,7 +36,7 @@ apply from: file('gradle/globals.gradle')
// Calculate project version:
version = {
// Release manager: update base version here after release:
- String baseVersion = '9.7.1'
+ String baseVersion = '9.7.0'
// On a release explicitly set release version in one go:
// -Dversion.release=x.y.z
@@ -44,8 +44,8 @@ version = {
// Jenkins can just set just a suffix, overriding SNAPSHOT, e.g. using build id:
// -Dversion.suffix=jenkins123
- String versionSuffix = propertyOrDefault('version.suffix', 'SNAPSHOT')
- return propertyOrDefault('version.release', "${baseVersion}-${versionSuffix}")
+ //String versionSuffix = propertyOrDefault('version.suffix', '')
+ return propertyOrDefault('version.release', "${baseVersion}")
}()
description = 'Grandparent project for Apache Lucene Core'
diff --git a/lucene/core/src/java/org/apache/lucene/codecs/DocValuesConsumer.java b/lucene/core/src/java/org/apache/lucene/codecs/DocValuesConsumer.java
index 4b494a042e24..52bfe0af1848 100644
--- a/lucene/core/src/java/org/apache/lucene/codecs/DocValuesConsumer.java
+++ b/lucene/core/src/java/org/apache/lucene/codecs/DocValuesConsumer.java
@@ -121,6 +121,14 @@ public abstract void addSortedNumericField(FieldInfo field, DocValuesProducer va
public abstract void addSortedSetField(FieldInfo field, DocValuesProducer valuesProducer)
throws IOException;
+ /**
+ * Aggregate doc values
+ *
+ * @throws IOException if an I/O error occurred
+ */
+ public void aggregate() throws IOException {
+ // default no op
+ }
/**
* Merges in the fields from the readers in mergeState
. The default implementation
* calls {@link #mergeNumericField}, {@link #mergeBinaryField}, {@link #mergeSortedField}, {@link
diff --git a/lucene/core/src/java/org/apache/lucene/codecs/DocValuesProducer.java b/lucene/core/src/java/org/apache/lucene/codecs/DocValuesProducer.java
index 2731bccd0671..6112e355de1e 100644
--- a/lucene/core/src/java/org/apache/lucene/codecs/DocValuesProducer.java
+++ b/lucene/core/src/java/org/apache/lucene/codecs/DocValuesProducer.java
@@ -92,4 +92,13 @@ protected DocValuesProducer() {}
public DocValuesProducer getMergeInstance() {
return this;
}
+
+ /** StarTreeAggregatedValues is the return type
+ * Todo : don't return object
+ *
+ */
+ public Object getAggregatedDocValues() throws IOException {
+ // No-op by default
+ return null;
+ }
}
diff --git a/lucene/core/src/java/org/apache/lucene/codecs/lucene95/Lucene95Codec.java b/lucene/core/src/java/org/apache/lucene/codecs/lucene95/Lucene95Codec.java
index fd495b6026fe..94d20919f5a0 100644
--- a/lucene/core/src/java/org/apache/lucene/codecs/lucene95/Lucene95Codec.java
+++ b/lucene/core/src/java/org/apache/lucene/codecs/lucene95/Lucene95Codec.java
@@ -206,7 +206,7 @@ public KnnVectorsFormat getKnnVectorsFormatForField(String field) {
}
@Override
- public final DocValuesFormat docValuesFormat() {
+ public DocValuesFormat docValuesFormat() {
return docValuesFormat;
}
diff --git a/lucene/core/src/java/org/apache/lucene/index/CodecReader.java b/lucene/core/src/java/org/apache/lucene/index/CodecReader.java
index 5d184aa4ee15..e251dc2044cf 100644
--- a/lucene/core/src/java/org/apache/lucene/index/CodecReader.java
+++ b/lucene/core/src/java/org/apache/lucene/index/CodecReader.java
@@ -183,6 +183,11 @@ public final SortedDocValues getSortedDocValues(String field) throws IOException
return getDocValuesReader().getSorted(fi);
}
+ @Override
+ public final Object getAggregatedDocValues() throws IOException {
+ return getDocValuesReader().getAggregatedDocValues();
+ }
+
@Override
public final SortedNumericDocValues getSortedNumericDocValues(String field) throws IOException {
ensureOpen();
diff --git a/lucene/core/src/java/org/apache/lucene/index/FilterLeafReader.java b/lucene/core/src/java/org/apache/lucene/index/FilterLeafReader.java
index e7e25adec778..ef707e7b8c43 100644
--- a/lucene/core/src/java/org/apache/lucene/index/FilterLeafReader.java
+++ b/lucene/core/src/java/org/apache/lucene/index/FilterLeafReader.java
@@ -429,6 +429,13 @@ public NumericDocValues getNumericDocValues(String field) throws IOException {
return in.getNumericDocValues(field);
}
+ @Override
+ public Object getAggregatedDocValues() throws IOException {
+ ensureOpen();
+ return in.getAggregatedDocValues();
+ }
+
+
@Override
public BinaryDocValues getBinaryDocValues(String field) throws IOException {
ensureOpen();
diff --git a/lucene/core/src/java/org/apache/lucene/index/IndexingChain.java b/lucene/core/src/java/org/apache/lucene/index/IndexingChain.java
index a68a84ff5ac7..9e45a3aa8304 100644
--- a/lucene/core/src/java/org/apache/lucene/index/IndexingChain.java
+++ b/lucene/core/src/java/org/apache/lucene/index/IndexingChain.java
@@ -181,6 +181,12 @@ public SortedDocValues getSortedDocValues(String field) throws IOException {
return null;
}
+ @Override
+ public Object getAggregatedDocValues()
+ throws IOException {
+ return null;
+ }
+
@Override
public SortedNumericDocValues getSortedNumericDocValues(String field) throws IOException {
PerField pf = getPerField(field);
@@ -413,7 +419,8 @@ private void writeDocValues(SegmentWriteState state, Sorter.DocMap sortMap) thro
perField = perField.next;
}
}
-
+ // IMPORTANT : This call creates the star tree data structures along with the associated doc values in the POC
+ if (dvConsumer != null) dvConsumer.aggregate();
// TODO: catch missing DV fields here? else we have
// null/"" depending on how docs landed in segments?
// but we can't detect all cases, and we should leave
@@ -885,6 +892,12 @@ public SortedDocValues getSortedDocValues(String field) {
return DocValues.emptySorted();
}
+ @Override
+ public Object getAggregatedDocValues()
+ throws IOException {
+ return null;
+ }
+
@Override
public SortedNumericDocValues getSortedNumericDocValues(String field) {
if (Objects.equals(field, fieldToValidate)
diff --git a/lucene/core/src/java/org/apache/lucene/index/LeafReader.java b/lucene/core/src/java/org/apache/lucene/index/LeafReader.java
index 767874cc87d7..19d5a466401f 100644
--- a/lucene/core/src/java/org/apache/lucene/index/LeafReader.java
+++ b/lucene/core/src/java/org/apache/lucene/index/LeafReader.java
@@ -180,6 +180,13 @@ public final PostingsEnum postings(Term term) throws IOException {
*/
public abstract SortedDocValues getSortedDocValues(String field) throws IOException;
+ /**
+ * Aggregate doc values
+ *
+ * @throws IOException if an I/O error occurred
+ */
+ public abstract Object getAggregatedDocValues() throws IOException;
+
/**
* Returns {@link SortedNumericDocValues} for this field, or null if no {@link
* SortedNumericDocValues} were indexed for this field. The returned instance should only be used
diff --git a/lucene/core/src/java/org/apache/lucene/index/ParallelLeafReader.java b/lucene/core/src/java/org/apache/lucene/index/ParallelLeafReader.java
index 690ccb697e51..d687605d9eb3 100644
--- a/lucene/core/src/java/org/apache/lucene/index/ParallelLeafReader.java
+++ b/lucene/core/src/java/org/apache/lucene/index/ParallelLeafReader.java
@@ -405,6 +405,12 @@ public SortedDocValues getSortedDocValues(String field) throws IOException {
return reader == null ? null : reader.getSortedDocValues(field);
}
+ @Override
+ public Object getAggregatedDocValues()
+ throws IOException {
+ return null;
+ }
+
@Override
public SortedNumericDocValues getSortedNumericDocValues(String field) throws IOException {
ensureOpen();
diff --git a/lucene/core/src/java/org/apache/lucene/util/Version.java b/lucene/core/src/java/org/apache/lucene/util/Version.java
index e7c86cdb0ab1..636aecf3624f 100644
--- a/lucene/core/src/java/org/apache/lucene/util/Version.java
+++ b/lucene/core/src/java/org/apache/lucene/util/Version.java
@@ -263,17 +263,12 @@ public final class Version {
*/
@Deprecated public static final Version LUCENE_9_6_0 = new Version(9, 6, 0);
- /**
- * @deprecated (9.7.1) Use latest
- */
- @Deprecated public static final Version LUCENE_9_7_0 = new Version(9, 7, 0);
-
/**
* Match settings and bugs in Lucene's 9.7.1 release.
*
*
Use this to get the latest & greatest settings, bug fixes, etc, for Lucene. */ - public static final Version LUCENE_9_7_1 = new Version(9, 7, 1); + public static final Version LUCENE_9_7_0 = new Version(9, 7, 0); // To add a new version: // * Only add above this comment @@ -289,7 +284,7 @@ public final class Version { * re-test your entire application to ensure it behaves as expected, as some defaults may * have changed and may break functionality in your application. */ - public static final Version LATEST = LUCENE_9_7_1; + public static final Version LATEST = LUCENE_9_7_0; /** * Constant for backwards compatibility. diff --git a/lucene/test-framework/src/java/org/apache/lucene/tests/index/MergeReaderWrapper.java b/lucene/test-framework/src/java/org/apache/lucene/tests/index/MergeReaderWrapper.java index 085f32d0078b..17d680ad7923 100644 --- a/lucene/test-framework/src/java/org/apache/lucene/tests/index/MergeReaderWrapper.java +++ b/lucene/test-framework/src/java/org/apache/lucene/tests/index/MergeReaderWrapper.java @@ -149,6 +149,12 @@ public SortedDocValues getSortedDocValues(String field) throws IOException { return docValues.getSorted(fi); } + @Override + public Object getAggregatedDocValues() + throws IOException { + return null; + } + @Override public SortedNumericDocValues getSortedNumericDocValues(String field) throws IOException { ensureOpen(); diff --git a/lucene/test-framework/src/java/org/apache/lucene/tests/search/QueryUtils.java b/lucene/test-framework/src/java/org/apache/lucene/tests/search/QueryUtils.java index da25bd3acc8a..c8a1b3a01c57 100644 --- a/lucene/test-framework/src/java/org/apache/lucene/tests/search/QueryUtils.java +++ b/lucene/test-framework/src/java/org/apache/lucene/tests/search/QueryUtils.java @@ -210,6 +210,12 @@ public SortedDocValues getSortedDocValues(String field) throws IOException { return null; } + @Override + public Object getAggregatedDocValues() + throws IOException { + return null; + } + @Override public SortedNumericDocValues getSortedNumericDocValues(String field) throws IOException { return null;