This is an automated email from the ASF dual-hosted git repository. psalagnac pushed a commit to branch branch_9x in repository https://gitbox.apache.org/repos/asf/solr.git
The following commit(s) were added to refs/heads/branch_9x by this push: new d040b2ae6ea SOLR-17471: upgrade Lucene to version 9.12.1 (#2736) d040b2ae6ea is described below commit d040b2ae6ead52186648d45c83cee491c5669949 Author: Pierre Salagnac <psalag...@apache.org> AuthorDate: Mon Jan 6 18:28:12 2025 +0100 SOLR-17471: upgrade Lucene to version 9.12.1 (#2736) --- dev-docs/lucene-upgrade.md | 4 +- solr/CHANGES.txt | 2 +- .../org/apache/solr/core/SchemaCodecFactory.java | 6 +-- .../core/backup/repository/BackupRepository.java | 10 ++-- .../similarities/ClassicSimilarityFactory.java | 12 ++--- .../search/similarities/DFISimilarityFactory.java | 7 +-- .../search/similarities/DFRSimilarityFactory.java | 6 +-- .../search/similarities/IBSimilarityFactory.java | 6 +-- .../similarities/LMDirichletSimilarityFactory.java | 15 ++++-- .../LMJelinekMercerSimilarityFactory.java | 9 ++-- .../similarities/SweetSpotSimilarityFactory.java | 50 +++++++++++++------- .../solr/collection1/conf/schema_codec.xml | 2 +- .../org/apache/solr/core/TestCodecSupport.java | 2 +- .../lucene-analysis-common-9.11.1.jar.sha1 | 1 - .../lucene-analysis-common-9.12.1.jar.sha1 | 1 + solr/licenses/lucene-analysis-icu-9.11.1.jar.sha1 | 1 - solr/licenses/lucene-analysis-icu-9.12.1.jar.sha1 | 1 + .../lucene-analysis-kuromoji-9.11.1.jar.sha1 | 1 - .../lucene-analysis-kuromoji-9.12.1.jar.sha1 | 1 + .../lucene-analysis-morfologik-9.11.1.jar.sha1 | 1 - .../lucene-analysis-morfologik-9.12.1.jar.sha1 | 1 + solr/licenses/lucene-analysis-nori-9.11.1.jar.sha1 | 1 - solr/licenses/lucene-analysis-nori-9.12.1.jar.sha1 | 1 + .../lucene-analysis-opennlp-9.11.1.jar.sha1 | 1 - .../lucene-analysis-opennlp-9.12.1.jar.sha1 | 1 + .../lucene-analysis-phonetic-9.11.1.jar.sha1 | 1 - .../lucene-analysis-phonetic-9.12.1.jar.sha1 | 1 + .../lucene-analysis-smartcn-9.11.1.jar.sha1 | 1 - .../lucene-analysis-smartcn-9.12.1.jar.sha1 | 1 + .../lucene-analysis-stempel-9.11.1.jar.sha1 | 1 - .../lucene-analysis-stempel-9.12.1.jar.sha1 | 1 + .../lucene-backward-codecs-9.11.1.jar.sha1 | 1 - .../lucene-backward-codecs-9.12.1.jar.sha1 | 1 + .../licenses/lucene-classification-9.11.1.jar.sha1 | 1 - .../licenses/lucene-classification-9.12.1.jar.sha1 | 1 + solr/licenses/lucene-codecs-9.11.1.jar.sha1 | 1 - solr/licenses/lucene-codecs-9.12.1.jar.sha1 | 1 + solr/licenses/lucene-core-9.11.1.jar.sha1 | 1 - solr/licenses/lucene-core-9.12.1.jar.sha1 | 1 + solr/licenses/lucene-expressions-9.11.1.jar.sha1 | 1 - solr/licenses/lucene-expressions-9.12.1.jar.sha1 | 1 + solr/licenses/lucene-facet-9.12.1.jar.sha1 | 1 + solr/licenses/lucene-grouping-9.11.1.jar.sha1 | 1 - solr/licenses/lucene-grouping-9.12.1.jar.sha1 | 1 + solr/licenses/lucene-highlighter-9.11.1.jar.sha1 | 1 - solr/licenses/lucene-highlighter-9.12.1.jar.sha1 | 1 + solr/licenses/lucene-join-9.11.1.jar.sha1 | 1 - solr/licenses/lucene-join-9.12.1.jar.sha1 | 1 + solr/licenses/lucene-memory-9.11.1.jar.sha1 | 1 - solr/licenses/lucene-memory-9.12.1.jar.sha1 | 1 + solr/licenses/lucene-misc-9.11.1.jar.sha1 | 1 - solr/licenses/lucene-misc-9.12.1.jar.sha1 | 1 + solr/licenses/lucene-queries-9.11.1.jar.sha1 | 1 - solr/licenses/lucene-queries-9.12.1.jar.sha1 | 1 + solr/licenses/lucene-queryparser-9.11.1.jar.sha1 | 1 - solr/licenses/lucene-queryparser-9.12.1.jar.sha1 | 1 + solr/licenses/lucene-sandbox-9.11.1.jar.sha1 | 1 - solr/licenses/lucene-sandbox-9.12.1.jar.sha1 | 1 + .../licenses/lucene-spatial-extras-9.11.1.jar.sha1 | 1 - .../licenses/lucene-spatial-extras-9.12.1.jar.sha1 | 1 + solr/licenses/lucene-spatial3d-9.11.1.jar.sha1 | 1 - solr/licenses/lucene-spatial3d-9.12.1.jar.sha1 | 1 + solr/licenses/lucene-suggest-9.11.1.jar.sha1 | 1 - solr/licenses/lucene-suggest-9.12.1.jar.sha1 | 1 + .../licenses/lucene-test-framework-9.11.1.jar.sha1 | 1 - .../licenses/lucene-test-framework-9.12.1.jar.sha1 | 1 + .../org/apache/solr/gcs/GCSBackupRepository.java | 4 +- .../org/apache/solr/s3/S3BackupRepository.java | 5 +- .../org/apache/solr/s3/S3BackupRepositoryTest.java | 11 +++-- .../solr/configsets/_default/conf/solrconfig.xml | 2 +- .../conf/solrconfig.xml | 2 +- .../collections/AbstractBackupRepositoryTest.java | 7 ++- versions.lock | 53 +++++++++++----------- versions.props | 2 +- 74 files changed, 141 insertions(+), 129 deletions(-) diff --git a/dev-docs/lucene-upgrade.md b/dev-docs/lucene-upgrade.md index c9ee1a27802..e5ab91e7c9f 100644 --- a/dev-docs/lucene-upgrade.md +++ b/dev-docs/lucene-upgrade.md @@ -27,7 +27,7 @@ Create a new branch locally e.g. `git checkout -b lucene940 -t origin/main` for ## Build -### `versions.props` update +### `gradle/libs.versions.toml` update ``` - org.apache.lucene:*=9.3.0 @@ -37,7 +37,7 @@ Create a new branch locally e.g. `git checkout -b lucene940 -t origin/main` for ### `versions.lock` update ``` -gradlew --write-locks +gradlew :writeLocks ``` ### `solr/licenses` update diff --git a/solr/CHANGES.txt b/solr/CHANGES.txt index 0f86d7cc4a5..d4a65cdedb8 100644 --- a/solr/CHANGES.txt +++ b/solr/CHANGES.txt @@ -29,7 +29,7 @@ Bug Fixes Dependency Upgrades --------------------- -(No changes) +* SOLR-17471: Upgrade Lucene to 9.12.1. (Pierre Salagnac, Christine Poerschke) Other Changes --------------------- diff --git a/solr/core/src/java/org/apache/solr/core/SchemaCodecFactory.java b/solr/core/src/java/org/apache/solr/core/SchemaCodecFactory.java index 9c52f912784..76ce9322ec0 100644 --- a/solr/core/src/java/org/apache/solr/core/SchemaCodecFactory.java +++ b/solr/core/src/java/org/apache/solr/core/SchemaCodecFactory.java @@ -26,8 +26,8 @@ import org.apache.lucene.codecs.KnnVectorsFormat; import org.apache.lucene.codecs.KnnVectorsReader; import org.apache.lucene.codecs.KnnVectorsWriter; import org.apache.lucene.codecs.PostingsFormat; -import org.apache.lucene.codecs.lucene99.Lucene99Codec; -import org.apache.lucene.codecs.lucene99.Lucene99Codec.Mode; +import org.apache.lucene.codecs.lucene912.Lucene912Codec; +import org.apache.lucene.codecs.lucene912.Lucene912Codec.Mode; import org.apache.lucene.codecs.lucene99.Lucene99HnswVectorsFormat; import org.apache.lucene.index.SegmentReadState; import org.apache.lucene.index.SegmentWriteState; @@ -97,7 +97,7 @@ public class SchemaCodecFactory extends CodecFactory implements SolrCoreAware { log.debug("Using default compressionMode: {}", compressionMode); } codec = - new Lucene99Codec(compressionMode) { + new Lucene912Codec(compressionMode) { @Override public PostingsFormat getPostingsFormatForField(String field) { final SchemaField schemaField = core.getLatestSchema().getFieldOrNull(field); diff --git a/solr/core/src/java/org/apache/solr/core/backup/repository/BackupRepository.java b/solr/core/src/java/org/apache/solr/core/backup/repository/BackupRepository.java index b888912974e..689334aef9b 100644 --- a/solr/core/src/java/org/apache/solr/core/backup/repository/BackupRepository.java +++ b/solr/core/src/java/org/apache/solr/core/backup/repository/BackupRepository.java @@ -31,7 +31,6 @@ import org.apache.lucene.store.IndexInput; import org.apache.lucene.store.IndexOutput; import org.apache.lucene.util.IOUtils; import org.apache.solr.common.params.CoreAdminParams; -import org.apache.solr.core.DirectoryFactory; import org.apache.solr.core.backup.Checksum; import org.apache.solr.util.plugin.NamedListInitializedPlugin; @@ -217,9 +216,8 @@ public interface BackupRepository extends NamedListInitializedPlugin, Closeable Directory sourceDir, String sourceFileName, Directory destDir, String destFileName) throws IOException { boolean success = false; - try (ChecksumIndexInput is = - sourceDir.openChecksumInput(sourceFileName, DirectoryFactory.IOCONTEXT_NO_CACHE); - IndexOutput os = destDir.createOutput(destFileName, DirectoryFactory.IOCONTEXT_NO_CACHE)) { + try (ChecksumIndexInput is = sourceDir.openChecksumInput(sourceFileName, IOContext.READONCE); + IndexOutput os = destDir.createOutput(destFileName, IOContext.READONCE)) { os.copyBytes(is, is.length() - CodecUtil.footerLength()); // ensure that index file is not corrupted @@ -312,8 +310,8 @@ public interface BackupRepository extends NamedListInitializedPlugin, Closeable Directory sourceDir, String sourceFileName, Directory destDir, String destFileName) throws IOException { boolean success = false; - try (IndexInput is = sourceDir.openInput(sourceFileName, DirectoryFactory.IOCONTEXT_NO_CACHE); - IndexOutput os = destDir.createOutput(destFileName, DirectoryFactory.IOCONTEXT_NO_CACHE)) { + try (IndexInput is = sourceDir.openInput(sourceFileName, IOContext.READONCE); + IndexOutput os = destDir.createOutput(destFileName, IOContext.READONCE)) { os.copyBytes(is, is.length()); success = true; } finally { diff --git a/solr/core/src/java/org/apache/solr/search/similarities/ClassicSimilarityFactory.java b/solr/core/src/java/org/apache/solr/search/similarities/ClassicSimilarityFactory.java index 250ca045acf..ade8362ee88 100644 --- a/solr/core/src/java/org/apache/solr/search/similarities/ClassicSimilarityFactory.java +++ b/solr/core/src/java/org/apache/solr/search/similarities/ClassicSimilarityFactory.java @@ -31,7 +31,7 @@ import org.apache.solr.schema.SimilarityFactory; * <p>Optional settings: * * <ul> - * <li>discountOverlaps (bool): Sets {@link ClassicSimilarity#setDiscountOverlaps(boolean)} + * <li>discountOverlaps (bool): Sets {@link ClassicSimilarity#getDiscountOverlaps()}. * </ul> * * @see TFIDFSimilarity @@ -41,13 +41,13 @@ public class ClassicSimilarityFactory extends SimilarityFactory { /** * Init param name for specifying the value to use in {@link - * ClassicSimilarity#setDiscountOverlaps(boolean)} + * ClassicSimilarity#getDiscountOverlaps()}. */ public static final String DISCOUNT_OVERLAPS = "discountOverlaps"; /** - * Controls the value of {@link ClassicSimilarity#setDiscountOverlaps(boolean)} on newly - * constructed instances of {@link ClassicSimilarity} + * Controls the value of {@link ClassicSimilarity#getDiscountOverlaps()} on newly constructed + * instances of {@link ClassicSimilarity} */ protected boolean discountOverlaps = true; @@ -59,8 +59,6 @@ public class ClassicSimilarityFactory extends SimilarityFactory { @Override public Similarity getSimilarity() { - ClassicSimilarity sim = new ClassicSimilarity(); - sim.setDiscountOverlaps(discountOverlaps); - return sim; + return new ClassicSimilarity(discountOverlaps); } } diff --git a/solr/core/src/java/org/apache/solr/search/similarities/DFISimilarityFactory.java b/solr/core/src/java/org/apache/solr/search/similarities/DFISimilarityFactory.java index df5ea9f1182..7bdb9f8e518 100644 --- a/solr/core/src/java/org/apache/solr/search/similarities/DFISimilarityFactory.java +++ b/solr/core/src/java/org/apache/solr/search/similarities/DFISimilarityFactory.java @@ -39,8 +39,7 @@ import org.apache.solr.schema.SimilarityFactory; * Optional settings: * * <ul> - * <li>discountOverlaps (bool): Sets {@link - * org.apache.lucene.search.similarities.SimilarityBase#setDiscountOverlaps(boolean)} + * <li>discountOverlaps (bool): Sets {link Similarity#getDiscountOverlaps()} * </ul> * * @lucene.experimental @@ -59,9 +58,7 @@ public class DFISimilarityFactory extends SimilarityFactory { @Override public Similarity getSimilarity() { - DFISimilarity sim = new DFISimilarity(independenceMeasure); - sim.setDiscountOverlaps(discountOverlaps); - return sim; + return new DFISimilarity(independenceMeasure, discountOverlaps); } private Independence parseIndependenceMeasure(String expr) { diff --git a/solr/core/src/java/org/apache/solr/search/similarities/DFRSimilarityFactory.java b/solr/core/src/java/org/apache/solr/search/similarities/DFRSimilarityFactory.java index 61b972f604b..63cca3194f5 100644 --- a/solr/core/src/java/org/apache/solr/search/similarities/DFRSimilarityFactory.java +++ b/solr/core/src/java/org/apache/solr/search/similarities/DFRSimilarityFactory.java @@ -86,7 +86,7 @@ import org.apache.solr.schema.SimilarityFactory; * <p>Optional settings: * * <ul> - * <li>discountOverlaps (bool): Sets {@link DFRSimilarity#setDiscountOverlaps(boolean)} + * <li>discountOverlaps (bool): Sets {@link Similarity#getDiscountOverlaps()} * </ul> * * @lucene.experimental @@ -160,8 +160,6 @@ public class DFRSimilarityFactory extends SimilarityFactory { @Override public Similarity getSimilarity() { - DFRSimilarity sim = new DFRSimilarity(basicModel, afterEffect, normalization); - sim.setDiscountOverlaps(discountOverlaps); - return sim; + return new DFRSimilarity(basicModel, afterEffect, normalization, discountOverlaps); } } diff --git a/solr/core/src/java/org/apache/solr/search/similarities/IBSimilarityFactory.java b/solr/core/src/java/org/apache/solr/search/similarities/IBSimilarityFactory.java index 6c387fe93de..b397b9c655a 100644 --- a/solr/core/src/java/org/apache/solr/search/similarities/IBSimilarityFactory.java +++ b/solr/core/src/java/org/apache/solr/search/similarities/IBSimilarityFactory.java @@ -56,7 +56,7 @@ import org.apache.solr.schema.SimilarityFactory; * <p>Optional settings: * * <ul> - * <li>discountOverlaps (bool): Sets {@link IBSimilarity#setDiscountOverlaps(boolean)} + * <li>discountOverlaps (bool): Sets {link Similarity#getDiscountOverlaps()} * </ul> * * @lucene.experimental @@ -100,8 +100,6 @@ public class IBSimilarityFactory extends SimilarityFactory { @Override public Similarity getSimilarity() { - IBSimilarity sim = new IBSimilarity(distribution, lambda, normalization); - sim.setDiscountOverlaps(discountOverlaps); - return sim; + return new IBSimilarity(distribution, lambda, normalization, discountOverlaps); } } diff --git a/solr/core/src/java/org/apache/solr/search/similarities/LMDirichletSimilarityFactory.java b/solr/core/src/java/org/apache/solr/search/similarities/LMDirichletSimilarityFactory.java index d23430d45ab..8792e5ff0d7 100644 --- a/solr/core/src/java/org/apache/solr/search/similarities/LMDirichletSimilarityFactory.java +++ b/solr/core/src/java/org/apache/solr/search/similarities/LMDirichletSimilarityFactory.java @@ -17,6 +17,7 @@ package org.apache.solr.search.similarities; import org.apache.lucene.search.similarities.LMDirichletSimilarity; +import org.apache.lucene.search.similarities.LMSimilarity; import org.apache.lucene.search.similarities.Similarity; import org.apache.solr.common.params.SolrParams; import org.apache.solr.schema.SimilarityFactory; @@ -33,7 +34,7 @@ import org.apache.solr.schema.SimilarityFactory; * <p>Optional settings: * * <ul> - * <li>discountOverlaps (bool): Sets {@link LMDirichletSimilarity#setDiscountOverlaps(boolean)} + * <li>discountOverlaps (bool): Sets {link Similarity#getDiscountOverlaps()} * </ul> * * @lucene.experimental @@ -51,9 +52,13 @@ public class LMDirichletSimilarityFactory extends SimilarityFactory { @Override public Similarity getSimilarity() { - LMDirichletSimilarity sim = - (mu != null) ? new LMDirichletSimilarity(mu) : new LMDirichletSimilarity(); - sim.setDiscountOverlaps(discountOverlaps); - return sim; + + // Default μ is 2000 in Lucene. Unfortunately, there is no constant we can use + if (mu == null) { + mu = 2000f; + } + + LMSimilarity.CollectionModel model = new LMSimilarity.DefaultCollectionModel(); + return new LMDirichletSimilarity(model, discountOverlaps, mu); } } diff --git a/solr/core/src/java/org/apache/solr/search/similarities/LMJelinekMercerSimilarityFactory.java b/solr/core/src/java/org/apache/solr/search/similarities/LMJelinekMercerSimilarityFactory.java index 1f5549b769f..384dc5d9c37 100644 --- a/solr/core/src/java/org/apache/solr/search/similarities/LMJelinekMercerSimilarityFactory.java +++ b/solr/core/src/java/org/apache/solr/search/similarities/LMJelinekMercerSimilarityFactory.java @@ -17,6 +17,7 @@ package org.apache.solr.search.similarities; import org.apache.lucene.search.similarities.LMJelinekMercerSimilarity; +import org.apache.lucene.search.similarities.LMSimilarity; import org.apache.lucene.search.similarities.Similarity; import org.apache.solr.common.params.SolrParams; import org.apache.solr.schema.SimilarityFactory; @@ -33,8 +34,7 @@ import org.apache.solr.schema.SimilarityFactory; * <p>Optional settings: * * <ul> - * <li>discountOverlaps (bool): Sets {@link - * LMJelinekMercerSimilarity#setDiscountOverlaps(boolean)} + * <li>discountOverlaps (bool): Sets {link Similarity#getDiscountOverlaps()} * </ul> * * @lucene.experimental @@ -52,8 +52,7 @@ public class LMJelinekMercerSimilarityFactory extends SimilarityFactory { @Override public Similarity getSimilarity() { - LMJelinekMercerSimilarity sim = new LMJelinekMercerSimilarity(lambda); - sim.setDiscountOverlaps(discountOverlaps); - return sim; + LMSimilarity.CollectionModel model = new LMSimilarity.DefaultCollectionModel(); + return new LMJelinekMercerSimilarity(model, discountOverlaps, lambda); } } diff --git a/solr/core/src/java/org/apache/solr/search/similarities/SweetSpotSimilarityFactory.java b/solr/core/src/java/org/apache/solr/search/similarities/SweetSpotSimilarityFactory.java index 8dfc886dcc7..e312398bc48 100644 --- a/solr/core/src/java/org/apache/solr/search/similarities/SweetSpotSimilarityFactory.java +++ b/solr/core/src/java/org/apache/solr/search/similarities/SweetSpotSimilarityFactory.java @@ -104,33 +104,44 @@ import org.apache.solr.common.params.SolrParams; * </code> for SVG diagrams showing how the each function behaves with various settings/inputs. */ public class SweetSpotSimilarityFactory extends ClassicSimilarityFactory { - private SweetSpotSimilarity sim = null; + + private Integer ln_min; + private Integer ln_max; + private Float ln_steep; + + private Float hyper_min; + private Float hyper_max; + private Double hyper_base; + private Float hyper_offset; + + private Float baseline_base; + private Float baseline_min; @Override public void init(SolrParams params) { super.init(params); - Integer ln_min = params.getInt("lengthNormMin"); - Integer ln_max = params.getInt("lengthNormMax"); - Float ln_steep = params.getFloat("lengthNormSteepness"); + ln_min = params.getInt("lengthNormMin"); + ln_max = params.getInt("lengthNormMax"); + ln_steep = params.getFloat("lengthNormSteepness"); if (!allOrNoneNull(ln_min, ln_max, ln_steep)) { throw new SolrException( SERVER_ERROR, "Overriding default lengthNorm settings requires all to be specified: lengthNormMin, lengthNormMax, lengthNormSteepness"); } - Float hyper_min = params.getFloat("hyperbolicTfMin"); - Float hyper_max = params.getFloat("hyperbolicTfMax"); - Double hyper_base = params.getDouble("hyperbolicTfBase"); - Float hyper_offset = params.getFloat("hyperbolicTfOffset"); + hyper_min = params.getFloat("hyperbolicTfMin"); + hyper_max = params.getFloat("hyperbolicTfMax"); + hyper_base = params.getDouble("hyperbolicTfBase"); + hyper_offset = params.getFloat("hyperbolicTfOffset"); if (!allOrNoneNull(hyper_min, hyper_max, hyper_base, hyper_offset)) { throw new SolrException( SERVER_ERROR, "Overriding default hyperbolicTf settings requires all to be specified: hyperbolicTfMin, hyperbolicTfMax, hyperbolicTfBase, hyperbolicTfOffset"); } - Float baseline_base = params.getFloat("baselineTfBase"); - Float baseline_min = params.getFloat("baselineTfMin"); + baseline_base = params.getFloat("baselineTfBase"); + baseline_min = params.getFloat("baselineTfMin"); if (!allOrNoneNull(baseline_min, baseline_base)) { throw new SolrException( SERVER_ERROR, @@ -142,13 +153,19 @@ public class SweetSpotSimilarityFactory extends ClassicSimilarityFactory { throw new SolrException( SERVER_ERROR, "Can not mix hyperbolicTf settings with baselineTf settings"); } + } + @Override + public Similarity getSimilarity() { // pick Similarity impl based on whether hyper tf settings are set - sim = (null != hyper_min) ? new HyperbolicSweetSpotSimilarity() : new SweetSpotSimilarity(); + SweetSpotSimilarity sim = + (null != hyper_min) + ? new HyperbolicSweetSpotSimilarity(discountOverlaps) + : new SweetSpotSimilarity(discountOverlaps); if (null != ln_min) { // overlaps already handled by super factory - sim.setLengthNormFactors(ln_min, ln_max, ln_steep, this.discountOverlaps); + sim.setLengthNormFactors(ln_min, ln_max, ln_steep); } if (null != hyper_min) { @@ -158,11 +175,7 @@ public class SweetSpotSimilarityFactory extends ClassicSimilarityFactory { if (null != baseline_min) { sim.setBaselineTfFactors(baseline_base, baseline_min); } - } - @Override - public Similarity getSimilarity() { - assert sim != null : "SweetSpotSimilarityFactory was not initialized"; return sim; } @@ -181,6 +194,11 @@ public class SweetSpotSimilarityFactory extends ClassicSimilarityFactory { } private static final class HyperbolicSweetSpotSimilarity extends SweetSpotSimilarity { + + private HyperbolicSweetSpotSimilarity(boolean discountOverlaps) { + super(discountOverlaps); + } + @Override public float tf(float freq) { return hyperbolicTf(freq); diff --git a/solr/core/src/test-files/solr/collection1/conf/schema_codec.xml b/solr/core/src/test-files/solr/collection1/conf/schema_codec.xml index 29e62e3c88c..5095c0c01ac 100644 --- a/solr/core/src/test-files/solr/collection1/conf/schema_codec.xml +++ b/solr/core/src/test-files/solr/collection1/conf/schema_codec.xml @@ -20,7 +20,7 @@ as a way to vet that the configuration actually matters. --> <fieldType name="string_direct" class="solr.StrField" postingsFormat="Direct" docValuesFormat="Asserting" /> - <fieldType name="string_standard" class="solr.StrField" postingsFormat="Lucene99"/> + <fieldType name="string_standard" class="solr.StrField" postingsFormat="Lucene912"/> <fieldType name="string_disk" class="solr.StrField" /> diff --git a/solr/core/src/test/org/apache/solr/core/TestCodecSupport.java b/solr/core/src/test/org/apache/solr/core/TestCodecSupport.java index 54f7406635d..f5f084da8ab 100644 --- a/solr/core/src/test/org/apache/solr/core/TestCodecSupport.java +++ b/solr/core/src/test/org/apache/solr/core/TestCodecSupport.java @@ -22,7 +22,7 @@ import java.io.IOException; import java.util.Map; import java.util.Set; import org.apache.lucene.codecs.Codec; -import org.apache.lucene.codecs.lucene99.Lucene99Codec.Mode; +import org.apache.lucene.codecs.lucene912.Lucene912Codec.Mode; import org.apache.lucene.codecs.perfield.PerFieldDocValuesFormat; import org.apache.lucene.codecs.perfield.PerFieldPostingsFormat; import org.apache.lucene.index.SegmentInfo; diff --git a/solr/licenses/lucene-analysis-common-9.11.1.jar.sha1 b/solr/licenses/lucene-analysis-common-9.11.1.jar.sha1 deleted file mode 100644 index 2b71b2f9ebf..00000000000 --- a/solr/licenses/lucene-analysis-common-9.11.1.jar.sha1 +++ /dev/null @@ -1 +0,0 @@ -51286aca019db66311f71496191b4bd7adaf3dcf diff --git a/solr/licenses/lucene-analysis-common-9.12.1.jar.sha1 b/solr/licenses/lucene-analysis-common-9.12.1.jar.sha1 new file mode 100644 index 00000000000..805ece8fb95 --- /dev/null +++ b/solr/licenses/lucene-analysis-common-9.12.1.jar.sha1 @@ -0,0 +1 @@ +86836497e35c1ab33259d9864ceb280c0016075e diff --git a/solr/licenses/lucene-analysis-icu-9.11.1.jar.sha1 b/solr/licenses/lucene-analysis-icu-9.11.1.jar.sha1 deleted file mode 100644 index 95765d43eab..00000000000 --- a/solr/licenses/lucene-analysis-icu-9.11.1.jar.sha1 +++ /dev/null @@ -1 +0,0 @@ -028beadfa152c159d21d880461c06f895052bd33 diff --git a/solr/licenses/lucene-analysis-icu-9.12.1.jar.sha1 b/solr/licenses/lucene-analysis-icu-9.12.1.jar.sha1 new file mode 100644 index 00000000000..d938191bbfd --- /dev/null +++ b/solr/licenses/lucene-analysis-icu-9.12.1.jar.sha1 @@ -0,0 +1 @@ +abaef4767ad64289e62abdd4606bf6ed2ddea0fd diff --git a/solr/licenses/lucene-analysis-kuromoji-9.11.1.jar.sha1 b/solr/licenses/lucene-analysis-kuromoji-9.11.1.jar.sha1 deleted file mode 100644 index d51f9c1b6ea..00000000000 --- a/solr/licenses/lucene-analysis-kuromoji-9.11.1.jar.sha1 +++ /dev/null @@ -1 +0,0 @@ -701c1366189c4410d3cb1f8607df2e50621bfd22 diff --git a/solr/licenses/lucene-analysis-kuromoji-9.12.1.jar.sha1 b/solr/licenses/lucene-analysis-kuromoji-9.12.1.jar.sha1 new file mode 100644 index 00000000000..af4a809392a --- /dev/null +++ b/solr/licenses/lucene-analysis-kuromoji-9.12.1.jar.sha1 @@ -0,0 +1 @@ +635c41143b896f402589d29e33695dcfabae9cc5 diff --git a/solr/licenses/lucene-analysis-morfologik-9.11.1.jar.sha1 b/solr/licenses/lucene-analysis-morfologik-9.11.1.jar.sha1 deleted file mode 100644 index 8421387ddb6..00000000000 --- a/solr/licenses/lucene-analysis-morfologik-9.11.1.jar.sha1 +++ /dev/null @@ -1 +0,0 @@ -20fe70fa74097c35c9aaaa5c0e19ca5f7ac93141 diff --git a/solr/licenses/lucene-analysis-morfologik-9.12.1.jar.sha1 b/solr/licenses/lucene-analysis-morfologik-9.12.1.jar.sha1 new file mode 100644 index 00000000000..0df56116cac --- /dev/null +++ b/solr/licenses/lucene-analysis-morfologik-9.12.1.jar.sha1 @@ -0,0 +1 @@ +d8e4716dab6d829e7b37a8b185cbd242650aeb9e diff --git a/solr/licenses/lucene-analysis-nori-9.11.1.jar.sha1 b/solr/licenses/lucene-analysis-nori-9.11.1.jar.sha1 deleted file mode 100644 index 3cd3de6f22d..00000000000 --- a/solr/licenses/lucene-analysis-nori-9.11.1.jar.sha1 +++ /dev/null @@ -1 +0,0 @@ -46e8f4f3f2f540307fe7d9f500ddc56c1e74d400 diff --git a/solr/licenses/lucene-analysis-nori-9.12.1.jar.sha1 b/solr/licenses/lucene-analysis-nori-9.12.1.jar.sha1 new file mode 100644 index 00000000000..2ebf1d07eed --- /dev/null +++ b/solr/licenses/lucene-analysis-nori-9.12.1.jar.sha1 @@ -0,0 +1 @@ +e265410a6a4d9cd23b2e9c73321e6bd307bc1422 diff --git a/solr/licenses/lucene-analysis-opennlp-9.11.1.jar.sha1 b/solr/licenses/lucene-analysis-opennlp-9.11.1.jar.sha1 deleted file mode 100644 index 3d521c374c6..00000000000 --- a/solr/licenses/lucene-analysis-opennlp-9.11.1.jar.sha1 +++ /dev/null @@ -1 +0,0 @@ -8acc70958b0549705c45587bf315b2884a8eb169 diff --git a/solr/licenses/lucene-analysis-opennlp-9.12.1.jar.sha1 b/solr/licenses/lucene-analysis-opennlp-9.12.1.jar.sha1 new file mode 100644 index 00000000000..77cf5acafe1 --- /dev/null +++ b/solr/licenses/lucene-analysis-opennlp-9.12.1.jar.sha1 @@ -0,0 +1 @@ +021d892f1946bc238c6e9a651f9446813b715c5a diff --git a/solr/licenses/lucene-analysis-phonetic-9.11.1.jar.sha1 b/solr/licenses/lucene-analysis-phonetic-9.11.1.jar.sha1 deleted file mode 100644 index 144a5724a1a..00000000000 --- a/solr/licenses/lucene-analysis-phonetic-9.11.1.jar.sha1 +++ /dev/null @@ -1 +0,0 @@ -5d8eca81f0d1e5671bf1f1692225f7d8cc7977e8 diff --git a/solr/licenses/lucene-analysis-phonetic-9.12.1.jar.sha1 b/solr/licenses/lucene-analysis-phonetic-9.12.1.jar.sha1 new file mode 100644 index 00000000000..09dd0aa365c --- /dev/null +++ b/solr/licenses/lucene-analysis-phonetic-9.12.1.jar.sha1 @@ -0,0 +1 @@ +3787b8edc0cfad21998abc6aeb9d2cbf152b4b26 diff --git a/solr/licenses/lucene-analysis-smartcn-9.11.1.jar.sha1 b/solr/licenses/lucene-analysis-smartcn-9.11.1.jar.sha1 deleted file mode 100644 index 4cfb7e94652..00000000000 --- a/solr/licenses/lucene-analysis-smartcn-9.11.1.jar.sha1 +++ /dev/null @@ -1 +0,0 @@ -e900ea081428c3fdc7ec7a48f9c392871304476e diff --git a/solr/licenses/lucene-analysis-smartcn-9.12.1.jar.sha1 b/solr/licenses/lucene-analysis-smartcn-9.12.1.jar.sha1 new file mode 100644 index 00000000000..eed0ea08e27 --- /dev/null +++ b/solr/licenses/lucene-analysis-smartcn-9.12.1.jar.sha1 @@ -0,0 +1 @@ +e935f600bf153c46f5725198ca9352c32025f274 diff --git a/solr/licenses/lucene-analysis-stempel-9.11.1.jar.sha1 b/solr/licenses/lucene-analysis-stempel-9.11.1.jar.sha1 deleted file mode 100644 index 59120fa4610..00000000000 --- a/solr/licenses/lucene-analysis-stempel-9.11.1.jar.sha1 +++ /dev/null @@ -1 +0,0 @@ -50f4d2400fa6264bf682028d8c7b6bbdd588b496 diff --git a/solr/licenses/lucene-analysis-stempel-9.12.1.jar.sha1 b/solr/licenses/lucene-analysis-stempel-9.12.1.jar.sha1 new file mode 100644 index 00000000000..12e57532ee6 --- /dev/null +++ b/solr/licenses/lucene-analysis-stempel-9.12.1.jar.sha1 @@ -0,0 +1 @@ +c4e1c94b1adbd1cb9dbdc0d3c2d2c33beabfc777 diff --git a/solr/licenses/lucene-backward-codecs-9.11.1.jar.sha1 b/solr/licenses/lucene-backward-codecs-9.11.1.jar.sha1 deleted file mode 100644 index d8e756dd606..00000000000 --- a/solr/licenses/lucene-backward-codecs-9.11.1.jar.sha1 +++ /dev/null @@ -1 +0,0 @@ -948fda53ceeb0fa1b835af5376abec771b2c3fb1 diff --git a/solr/licenses/lucene-backward-codecs-9.12.1.jar.sha1 b/solr/licenses/lucene-backward-codecs-9.12.1.jar.sha1 new file mode 100644 index 00000000000..c8871fa4179 --- /dev/null +++ b/solr/licenses/lucene-backward-codecs-9.12.1.jar.sha1 @@ -0,0 +1 @@ +d0e79d06a0ed021663737e4df777ab7b80cd28c4 diff --git a/solr/licenses/lucene-classification-9.11.1.jar.sha1 b/solr/licenses/lucene-classification-9.11.1.jar.sha1 deleted file mode 100644 index 3d17b3b3af8..00000000000 --- a/solr/licenses/lucene-classification-9.11.1.jar.sha1 +++ /dev/null @@ -1 +0,0 @@ -8a157f57964e1b8b9106b8c70083387f5a212362 diff --git a/solr/licenses/lucene-classification-9.12.1.jar.sha1 b/solr/licenses/lucene-classification-9.12.1.jar.sha1 new file mode 100644 index 00000000000..81a3850dc0d --- /dev/null +++ b/solr/licenses/lucene-classification-9.12.1.jar.sha1 @@ -0,0 +1 @@ +a64da0d06bedcf7a7a6ca5b13d0b49918717d576 diff --git a/solr/licenses/lucene-codecs-9.11.1.jar.sha1 b/solr/licenses/lucene-codecs-9.11.1.jar.sha1 deleted file mode 100644 index 87712934448..00000000000 --- a/solr/licenses/lucene-codecs-9.11.1.jar.sha1 +++ /dev/null @@ -1 +0,0 @@ -b1f1f273e1a2a956528dbf2abf4f7300b18648b2 diff --git a/solr/licenses/lucene-codecs-9.12.1.jar.sha1 b/solr/licenses/lucene-codecs-9.12.1.jar.sha1 new file mode 100644 index 00000000000..e65e95728d0 --- /dev/null +++ b/solr/licenses/lucene-codecs-9.12.1.jar.sha1 @@ -0,0 +1 @@ +cf88c401660f80fd7a3c0896c180581126880697 diff --git a/solr/licenses/lucene-core-9.11.1.jar.sha1 b/solr/licenses/lucene-core-9.11.1.jar.sha1 deleted file mode 100644 index d6f1be77240..00000000000 --- a/solr/licenses/lucene-core-9.11.1.jar.sha1 +++ /dev/null @@ -1 +0,0 @@ -8f52ba14b21774f41ce33cf5ca111cbdefeed7f9 diff --git a/solr/licenses/lucene-core-9.12.1.jar.sha1 b/solr/licenses/lucene-core-9.12.1.jar.sha1 new file mode 100644 index 00000000000..2000314c74c --- /dev/null +++ b/solr/licenses/lucene-core-9.12.1.jar.sha1 @@ -0,0 +1 @@ +91447c90c1180122142773b5baddaf8547124794 diff --git a/solr/licenses/lucene-expressions-9.11.1.jar.sha1 b/solr/licenses/lucene-expressions-9.11.1.jar.sha1 deleted file mode 100644 index cb9f8b66836..00000000000 --- a/solr/licenses/lucene-expressions-9.11.1.jar.sha1 +++ /dev/null @@ -1 +0,0 @@ -e46fbc4fd325ca00ed5a7cacde7ffafa01d7973e diff --git a/solr/licenses/lucene-expressions-9.12.1.jar.sha1 b/solr/licenses/lucene-expressions-9.12.1.jar.sha1 new file mode 100644 index 00000000000..870d6a91d7e --- /dev/null +++ b/solr/licenses/lucene-expressions-9.12.1.jar.sha1 @@ -0,0 +1 @@ +667ee99f31c8e42eac70b0adcf8deb4232935430 diff --git a/solr/licenses/lucene-facet-9.12.1.jar.sha1 b/solr/licenses/lucene-facet-9.12.1.jar.sha1 new file mode 100644 index 00000000000..469a8a45fac --- /dev/null +++ b/solr/licenses/lucene-facet-9.12.1.jar.sha1 @@ -0,0 +1 @@ +265df739cf97862931606395a10a0d0b97ff7f97 diff --git a/solr/licenses/lucene-grouping-9.11.1.jar.sha1 b/solr/licenses/lucene-grouping-9.11.1.jar.sha1 deleted file mode 100644 index 8290e22d3c4..00000000000 --- a/solr/licenses/lucene-grouping-9.11.1.jar.sha1 +++ /dev/null @@ -1 +0,0 @@ -0bdf9db0134523d2a41123dca1018f4c771c7b23 diff --git a/solr/licenses/lucene-grouping-9.12.1.jar.sha1 b/solr/licenses/lucene-grouping-9.12.1.jar.sha1 new file mode 100644 index 00000000000..7fa34405470 --- /dev/null +++ b/solr/licenses/lucene-grouping-9.12.1.jar.sha1 @@ -0,0 +1 @@ +e4bc3d0aa7eec4f41b4f350de0263a8d5625d2b3 diff --git a/solr/licenses/lucene-highlighter-9.11.1.jar.sha1 b/solr/licenses/lucene-highlighter-9.11.1.jar.sha1 deleted file mode 100644 index 5fd7ac44ddc..00000000000 --- a/solr/licenses/lucene-highlighter-9.11.1.jar.sha1 +++ /dev/null @@ -1 +0,0 @@ -e16cc9c531998a76eb5528147b5f07596f95fad8 diff --git a/solr/licenses/lucene-highlighter-9.12.1.jar.sha1 b/solr/licenses/lucene-highlighter-9.12.1.jar.sha1 new file mode 100644 index 00000000000..ddd10ca6e1c --- /dev/null +++ b/solr/licenses/lucene-highlighter-9.12.1.jar.sha1 @@ -0,0 +1 @@ +2eeedfcec47dd65969f36e88931ed452291dd43e diff --git a/solr/licenses/lucene-join-9.11.1.jar.sha1 b/solr/licenses/lucene-join-9.11.1.jar.sha1 deleted file mode 100644 index db5c2e0ad13..00000000000 --- a/solr/licenses/lucene-join-9.11.1.jar.sha1 +++ /dev/null @@ -1 +0,0 @@ -f7d63c04f3cc2ec8d7df73178db20de34cf60667 diff --git a/solr/licenses/lucene-join-9.12.1.jar.sha1 b/solr/licenses/lucene-join-9.12.1.jar.sha1 new file mode 100644 index 00000000000..b03ee165abc --- /dev/null +++ b/solr/licenses/lucene-join-9.12.1.jar.sha1 @@ -0,0 +1 @@ +3c5e9ff2925a8373ae0d35c1d0a7b2465cebec9f diff --git a/solr/licenses/lucene-memory-9.11.1.jar.sha1 b/solr/licenses/lucene-memory-9.11.1.jar.sha1 deleted file mode 100644 index bdd68d82720..00000000000 --- a/solr/licenses/lucene-memory-9.11.1.jar.sha1 +++ /dev/null @@ -1 +0,0 @@ -4221baad5c40849f641f0f5c1b8e2f2dfcf1e73a diff --git a/solr/licenses/lucene-memory-9.12.1.jar.sha1 b/solr/licenses/lucene-memory-9.12.1.jar.sha1 new file mode 100644 index 00000000000..e0541f0f417 --- /dev/null +++ b/solr/licenses/lucene-memory-9.12.1.jar.sha1 @@ -0,0 +1 @@ +e80eecfb1dcc324140387c8357c81e12c2a01937 diff --git a/solr/licenses/lucene-misc-9.11.1.jar.sha1 b/solr/licenses/lucene-misc-9.11.1.jar.sha1 deleted file mode 100644 index 53bc1cb906b..00000000000 --- a/solr/licenses/lucene-misc-9.11.1.jar.sha1 +++ /dev/null @@ -1 +0,0 @@ -a3ecdb999c3d3435ead88771ce215834bd8be7b8 diff --git a/solr/licenses/lucene-misc-9.12.1.jar.sha1 b/solr/licenses/lucene-misc-9.12.1.jar.sha1 new file mode 100644 index 00000000000..bed6c11b854 --- /dev/null +++ b/solr/licenses/lucene-misc-9.12.1.jar.sha1 @@ -0,0 +1 @@ +4e65d01d1c23f3f49dc325d552701bbefafee7ee diff --git a/solr/licenses/lucene-queries-9.11.1.jar.sha1 b/solr/licenses/lucene-queries-9.11.1.jar.sha1 deleted file mode 100644 index d8e030fc1f2..00000000000 --- a/solr/licenses/lucene-queries-9.11.1.jar.sha1 +++ /dev/null @@ -1 +0,0 @@ -027fc885a0442a0442f426f7fea9743f6fcf3c43 diff --git a/solr/licenses/lucene-queries-9.12.1.jar.sha1 b/solr/licenses/lucene-queries-9.12.1.jar.sha1 new file mode 100644 index 00000000000..1cda38477b3 --- /dev/null +++ b/solr/licenses/lucene-queries-9.12.1.jar.sha1 @@ -0,0 +1 @@ +14f24315041b686683dba4bc679ca7dc6a505906 diff --git a/solr/licenses/lucene-queryparser-9.11.1.jar.sha1 b/solr/licenses/lucene-queryparser-9.11.1.jar.sha1 deleted file mode 100644 index 1f69eb506fd..00000000000 --- a/solr/licenses/lucene-queryparser-9.11.1.jar.sha1 +++ /dev/null @@ -1 +0,0 @@ -ad6e5b135e1e284d4462d717086ce13a3ce01b4a diff --git a/solr/licenses/lucene-queryparser-9.12.1.jar.sha1 b/solr/licenses/lucene-queryparser-9.12.1.jar.sha1 new file mode 100644 index 00000000000..9baf9838b20 --- /dev/null +++ b/solr/licenses/lucene-queryparser-9.12.1.jar.sha1 @@ -0,0 +1 @@ +aa6df09a99f8881d843e9863aa1713dc9f3ed24f diff --git a/solr/licenses/lucene-sandbox-9.11.1.jar.sha1 b/solr/licenses/lucene-sandbox-9.11.1.jar.sha1 deleted file mode 100644 index 6613da2336a..00000000000 --- a/solr/licenses/lucene-sandbox-9.11.1.jar.sha1 +++ /dev/null @@ -1 +0,0 @@ -9d6a88d9cb7f206c12d13c4fe48f8c7a973ebdb5 diff --git a/solr/licenses/lucene-sandbox-9.12.1.jar.sha1 b/solr/licenses/lucene-sandbox-9.12.1.jar.sha1 new file mode 100644 index 00000000000..87836cb52c9 --- /dev/null +++ b/solr/licenses/lucene-sandbox-9.12.1.jar.sha1 @@ -0,0 +1 @@ +1a66485629d60779f039fc26360f4374ef1496e7 diff --git a/solr/licenses/lucene-spatial-extras-9.11.1.jar.sha1 b/solr/licenses/lucene-spatial-extras-9.11.1.jar.sha1 deleted file mode 100644 index ed1128ece9b..00000000000 --- a/solr/licenses/lucene-spatial-extras-9.11.1.jar.sha1 +++ /dev/null @@ -1 +0,0 @@ -d3938d4f63a29a6e8396416ec6e6e835826e7734 diff --git a/solr/licenses/lucene-spatial-extras-9.12.1.jar.sha1 b/solr/licenses/lucene-spatial-extras-9.12.1.jar.sha1 new file mode 100644 index 00000000000..3495009b5a5 --- /dev/null +++ b/solr/licenses/lucene-spatial-extras-9.12.1.jar.sha1 @@ -0,0 +1 @@ +0a7379410eff21676472adc8ea76a57891ec83c2 diff --git a/solr/licenses/lucene-spatial3d-9.11.1.jar.sha1 b/solr/licenses/lucene-spatial3d-9.11.1.jar.sha1 deleted file mode 100644 index f6dc1cf4979..00000000000 --- a/solr/licenses/lucene-spatial3d-9.11.1.jar.sha1 +++ /dev/null @@ -1 +0,0 @@ -d9c48cf29e8736e6ce6cd81c614367b10210523c diff --git a/solr/licenses/lucene-spatial3d-9.12.1.jar.sha1 b/solr/licenses/lucene-spatial3d-9.12.1.jar.sha1 new file mode 100644 index 00000000000..4dea89bd83e --- /dev/null +++ b/solr/licenses/lucene-spatial3d-9.12.1.jar.sha1 @@ -0,0 +1 @@ +d2fdea4edabb1f616f494999651c43abfd0aa124 diff --git a/solr/licenses/lucene-suggest-9.11.1.jar.sha1 b/solr/licenses/lucene-suggest-9.11.1.jar.sha1 deleted file mode 100644 index 2d79215b57e..00000000000 --- a/solr/licenses/lucene-suggest-9.11.1.jar.sha1 +++ /dev/null @@ -1 +0,0 @@ -9cceafd67d032d2a507e81f797e05eb284849987 diff --git a/solr/licenses/lucene-suggest-9.12.1.jar.sha1 b/solr/licenses/lucene-suggest-9.12.1.jar.sha1 new file mode 100644 index 00000000000..7cceda02bf6 --- /dev/null +++ b/solr/licenses/lucene-suggest-9.12.1.jar.sha1 @@ -0,0 +1 @@ +0660e0996ec7653fe0c13c608137e264645eecac diff --git a/solr/licenses/lucene-test-framework-9.11.1.jar.sha1 b/solr/licenses/lucene-test-framework-9.11.1.jar.sha1 deleted file mode 100644 index bce92787396..00000000000 --- a/solr/licenses/lucene-test-framework-9.11.1.jar.sha1 +++ /dev/null @@ -1 +0,0 @@ -9a3c349131233d2b5c258dff0cac77627525c14a diff --git a/solr/licenses/lucene-test-framework-9.12.1.jar.sha1 b/solr/licenses/lucene-test-framework-9.12.1.jar.sha1 new file mode 100644 index 00000000000..f7a37882d52 --- /dev/null +++ b/solr/licenses/lucene-test-framework-9.12.1.jar.sha1 @@ -0,0 +1 @@ +d348aac4eff0371888f45b2aaa9034922b96b466 diff --git a/solr/modules/gcs-repository/src/java/org/apache/solr/gcs/GCSBackupRepository.java b/solr/modules/gcs-repository/src/java/org/apache/solr/gcs/GCSBackupRepository.java index 13f9f78bcd5..f2b8867b1b8 100644 --- a/solr/modules/gcs-repository/src/java/org/apache/solr/gcs/GCSBackupRepository.java +++ b/solr/modules/gcs-repository/src/java/org/apache/solr/gcs/GCSBackupRepository.java @@ -344,8 +344,8 @@ public class GCSBackupRepository extends AbstractBackupRepository { final BlobInfo blobInfo = BlobInfo.newBuilder(bucketName, blobName).build(); try (IndexInput input = shouldVerifyChecksum - ? sourceDir.openChecksumInput(sourceFileName, DirectoryFactory.IOCONTEXT_NO_CACHE) - : sourceDir.openInput(sourceFileName, DirectoryFactory.IOCONTEXT_NO_CACHE)) { + ? sourceDir.openChecksumInput(sourceFileName, IOContext.READONCE) + : sourceDir.openInput(sourceFileName, IOContext.READONCE)) { if (input.length() <= CodecUtil.footerLength()) { throw new CorruptIndexException("file is too small:" + input.length(), input); } diff --git a/solr/modules/s3-repository/src/java/org/apache/solr/s3/S3BackupRepository.java b/solr/modules/s3-repository/src/java/org/apache/solr/s3/S3BackupRepository.java index 122dcc11918..29b6daffb55 100644 --- a/solr/modules/s3-repository/src/java/org/apache/solr/s3/S3BackupRepository.java +++ b/solr/modules/s3-repository/src/java/org/apache/solr/s3/S3BackupRepository.java @@ -38,7 +38,6 @@ import org.apache.lucene.store.IndexOutput; import org.apache.solr.common.SolrException; import org.apache.solr.common.util.NamedList; import org.apache.solr.common.util.StrUtils; -import org.apache.solr.core.DirectoryFactory; import org.apache.solr.core.backup.repository.AbstractBackupRepository; import org.apache.solr.core.backup.repository.BackupRepository; import org.slf4j.Logger; @@ -280,8 +279,8 @@ public class S3BackupRepository extends AbstractBackupRepository { try (IndexInput indexInput = shouldVerifyChecksum - ? sourceDir.openChecksumInput(sourceFileName, DirectoryFactory.IOCONTEXT_NO_CACHE) - : sourceDir.openInput(sourceFileName, DirectoryFactory.IOCONTEXT_NO_CACHE)) { + ? sourceDir.openChecksumInput(sourceFileName, IOContext.READONCE) + : sourceDir.openInput(sourceFileName, IOContext.READONCE)) { if (indexInput.length() <= CodecUtil.footerLength()) { throw new CorruptIndexException("file is too small:" + indexInput.length(), indexInput); } diff --git a/solr/modules/s3-repository/src/test/org/apache/solr/s3/S3BackupRepositoryTest.java b/solr/modules/s3-repository/src/test/org/apache/solr/s3/S3BackupRepositoryTest.java index 71617a1f028..498b0788ab0 100644 --- a/solr/modules/s3-repository/src/test/org/apache/solr/s3/S3BackupRepositoryTest.java +++ b/solr/modules/s3-repository/src/test/org/apache/solr/s3/S3BackupRepositoryTest.java @@ -33,7 +33,6 @@ import org.apache.lucene.store.Directory; import org.apache.lucene.store.IOContext; import org.apache.lucene.store.IndexInput; import org.apache.lucene.store.IndexOutput; -import org.apache.lucene.store.NIOFSDirectory; import org.apache.lucene.store.OutputStreamIndexOutput; import org.apache.solr.cloud.api.collections.AbstractBackupRepositoryTest; import org.apache.solr.common.util.NamedList; @@ -187,8 +186,9 @@ public class S3BackupRepositoryTest extends AbstractBackupRepositoryTest { CodecUtil.writeFooter(indexOutput); } - Directory sourceDir = new NIOFSDirectory(tmp.toPath()); - repo.copyIndexFileFrom(sourceDir, "from-file", new URI("s3://to-folder"), "to-file"); + try (Directory sourceDir = newFSDirectory(tmp.toPath())) { + repo.copyIndexFileFrom(sourceDir, "from-file", new URI("s3://to-folder"), "to-file"); + } // Sanity check: we do have different files File actualSource = new File(tmp, "from-file"); @@ -208,12 +208,13 @@ public class S3BackupRepositoryTest extends AbstractBackupRepositoryTest { // Local folder for destination File tmp = temporaryFolder.newFolder(); - Directory destDir = new NIOFSDirectory(tmp.toPath()); // Directly create a file on S3 pushObject("from-file", content); - repo.copyIndexFileTo(new URI("s3:///"), "from-file", destDir, "to-file"); + try (Directory destDir = newFSDirectory(tmp.toPath())) { + repo.copyIndexFileTo(new URI("s3:///"), "from-file", destDir, "to-file"); + } // Sanity check: we do have different files File actualSource = pullObject("from-file"); diff --git a/solr/server/solr/configsets/_default/conf/solrconfig.xml b/solr/server/solr/configsets/_default/conf/solrconfig.xml index 1df8df43c37..9bef9240114 100644 --- a/solr/server/solr/configsets/_default/conf/solrconfig.xml +++ b/solr/server/solr/configsets/_default/conf/solrconfig.xml @@ -35,7 +35,7 @@ that you fully re-index after changing this setting as it can affect both how text is indexed and queried. --> - <luceneMatchVersion>9.11</luceneMatchVersion> + <luceneMatchVersion>9.12</luceneMatchVersion> <!-- Data Directory diff --git a/solr/server/solr/configsets/sample_techproducts_configs/conf/solrconfig.xml b/solr/server/solr/configsets/sample_techproducts_configs/conf/solrconfig.xml index 17d07d3c23c..cc595fca93c 100644 --- a/solr/server/solr/configsets/sample_techproducts_configs/conf/solrconfig.xml +++ b/solr/server/solr/configsets/sample_techproducts_configs/conf/solrconfig.xml @@ -35,7 +35,7 @@ that you fully re-index after changing this setting as it can affect both how text is indexed and queried. --> - <luceneMatchVersion>9.11</luceneMatchVersion> + <luceneMatchVersion>9.12</luceneMatchVersion> <!-- Data Directory diff --git a/solr/test-framework/src/java/org/apache/solr/cloud/api/collections/AbstractBackupRepositoryTest.java b/solr/test-framework/src/java/org/apache/solr/cloud/api/collections/AbstractBackupRepositoryTest.java index 34b0d4a2b77..56db52cc9cb 100644 --- a/solr/test-framework/src/java/org/apache/solr/cloud/api/collections/AbstractBackupRepositoryTest.java +++ b/solr/test-framework/src/java/org/apache/solr/cloud/api/collections/AbstractBackupRepositoryTest.java @@ -40,7 +40,6 @@ import org.apache.lucene.store.FilterDirectory; import org.apache.lucene.store.IOContext; import org.apache.lucene.store.IndexInput; import org.apache.lucene.store.IndexOutput; -import org.apache.lucene.store.NIOFSDirectory; import org.apache.lucene.store.OutputStreamIndexOutput; import org.apache.solr.SolrTestCaseJ4; import org.apache.solr.common.params.CoreAdminParams; @@ -337,7 +336,7 @@ public abstract class AbstractBackupRepositoryTest extends SolrTestCaseJ4 { SolrResourceLoader resourceLoader) throws IOException, URISyntaxException { try (BackupRepository repo = repoFactory.newInstance(resourceLoader, repoName); - Directory directory = new NIOFSDirectory(dir.toPath())) { + Directory directory = newFSDirectory(dir.toPath())) { URI destinationDir = repo.resolve(getBaseUri(), "destination-folder"); repo.copyIndexFileFrom(directory, fileName, destinationDir, fileName); } @@ -352,8 +351,8 @@ public abstract class AbstractBackupRepositoryTest extends SolrTestCaseJ4 { SolrResourceLoader resourceLoader) throws IOException { try (BackupRepository repo = repoFactory.newInstance(resourceLoader, repoName); - Directory sourceDirectory = new NIOFSDirectory(sourceDir.toPath()); - Directory destinationDirectory = new NIOFSDirectory(destinationDir.toPath())) { + Directory sourceDirectory = newFSDirectory(sourceDir.toPath()); + Directory destinationDirectory = newFSDirectory(destinationDir.toPath())) { repo.copyIndexFileFrom(sourceDirectory, fileName, destinationDirectory, fileName); } } diff --git a/versions.lock b/versions.lock index b9780503c73..6505f3c8bb7 100644 --- a/versions.lock +++ b/versions.lock @@ -252,32 +252,33 @@ org.apache.logging.log4j:log4j-core:2.21.0 (5 constraints: 5f510091) org.apache.logging.log4j:log4j-layout-template-json:2.21.0 (1 constraints: 3705363b) org.apache.logging.log4j:log4j-slf4j2-impl:2.21.0 (1 constraints: 3705363b) org.apache.logging.log4j:log4j-web:2.21.0 (1 constraints: 3705363b) -org.apache.lucene:lucene-analysis-common:9.11.1 (10 constraints: aaa06d27) -org.apache.lucene:lucene-analysis-icu:9.11.1 (1 constraints: 3e055d3b) -org.apache.lucene:lucene-analysis-kuromoji:9.11.1 (1 constraints: 3e055d3b) -org.apache.lucene:lucene-analysis-morfologik:9.11.1 (1 constraints: 3e055d3b) -org.apache.lucene:lucene-analysis-nori:9.11.1 (1 constraints: 3e055d3b) -org.apache.lucene:lucene-analysis-opennlp:9.11.1 (1 constraints: 3e055d3b) -org.apache.lucene:lucene-analysis-phonetic:9.11.1 (1 constraints: 3e055d3b) -org.apache.lucene:lucene-analysis-smartcn:9.11.1 (1 constraints: 3e055d3b) -org.apache.lucene:lucene-analysis-stempel:9.11.1 (1 constraints: 3e055d3b) -org.apache.lucene:lucene-backward-codecs:9.11.1 (1 constraints: 3e055d3b) -org.apache.lucene:lucene-classification:9.11.1 (1 constraints: 3e055d3b) -org.apache.lucene:lucene-codecs:9.11.1 (3 constraints: 2c26e99d) -org.apache.lucene:lucene-core:9.11.1 (26 constraints: c194eb01) -org.apache.lucene:lucene-expressions:9.11.1 (1 constraints: 3e055d3b) -org.apache.lucene:lucene-grouping:9.11.1 (2 constraints: 42164308) -org.apache.lucene:lucene-highlighter:9.11.1 (1 constraints: 3e055d3b) -org.apache.lucene:lucene-join:9.11.1 (1 constraints: 3e055d3b) -org.apache.lucene:lucene-memory:9.11.1 (1 constraints: c80f6e93) -org.apache.lucene:lucene-misc:9.11.1 (1 constraints: 3e055d3b) -org.apache.lucene:lucene-queries:9.11.1 (6 constraints: ce52d7fa) -org.apache.lucene:lucene-queryparser:9.11.1 (1 constraints: 3e055d3b) -org.apache.lucene:lucene-sandbox:9.11.1 (1 constraints: fc0f1b97) -org.apache.lucene:lucene-spatial-extras:9.11.1 (1 constraints: 3e055d3b) -org.apache.lucene:lucene-spatial3d:9.11.1 (1 constraints: eb1099ca) -org.apache.lucene:lucene-suggest:9.11.1 (1 constraints: 3e055d3b) -org.apache.lucene:lucene-test-framework:9.11.1 (1 constraints: 3e055d3b) +org.apache.lucene:lucene-analysis-common:9.12.1 (10 constraints: b4a03230) +org.apache.lucene:lucene-analysis-icu:9.12.1 (1 constraints: 3f05603b) +org.apache.lucene:lucene-analysis-kuromoji:9.12.1 (1 constraints: 3f05603b) +org.apache.lucene:lucene-analysis-morfologik:9.12.1 (1 constraints: 3f05603b) +org.apache.lucene:lucene-analysis-nori:9.12.1 (1 constraints: 3f05603b) +org.apache.lucene:lucene-analysis-opennlp:9.12.1 (1 constraints: 3f05603b) +org.apache.lucene:lucene-analysis-phonetic:9.12.1 (1 constraints: 3f05603b) +org.apache.lucene:lucene-analysis-smartcn:9.12.1 (1 constraints: 3f05603b) +org.apache.lucene:lucene-analysis-stempel:9.12.1 (1 constraints: 3f05603b) +org.apache.lucene:lucene-backward-codecs:9.12.1 (1 constraints: 3f05603b) +org.apache.lucene:lucene-classification:9.12.1 (1 constraints: 3f05603b) +org.apache.lucene:lucene-codecs:9.12.1 (3 constraints: 2f26829e) +org.apache.lucene:lucene-core:9.12.1 (27 constraints: 17a2bff5) +org.apache.lucene:lucene-expressions:9.12.1 (1 constraints: 3f05603b) +org.apache.lucene:lucene-facet:9.12.1 (1 constraints: 290e204e) +org.apache.lucene:lucene-grouping:9.12.1 (2 constraints: 44167a08) +org.apache.lucene:lucene-highlighter:9.12.1 (1 constraints: 3f05603b) +org.apache.lucene:lucene-join:9.12.1 (1 constraints: 3f05603b) +org.apache.lucene:lucene-memory:9.12.1 (1 constraints: c90f7193) +org.apache.lucene:lucene-misc:9.12.1 (1 constraints: 3f05603b) +org.apache.lucene:lucene-queries:9.12.1 (6 constraints: d45284fd) +org.apache.lucene:lucene-queryparser:9.12.1 (1 constraints: 3f05603b) +org.apache.lucene:lucene-sandbox:9.12.1 (1 constraints: fd0f1e97) +org.apache.lucene:lucene-spatial-extras:9.12.1 (1 constraints: 3f05603b) +org.apache.lucene:lucene-spatial3d:9.12.1 (1 constraints: ec109cca) +org.apache.lucene:lucene-suggest:9.12.1 (1 constraints: 3f05603b) +org.apache.lucene:lucene-test-framework:9.12.1 (1 constraints: 3f05603b) org.apache.opennlp:opennlp-tools:1.9.4 (2 constraints: fc1dce6d) org.apache.pdfbox:fontbox:2.0.26 (1 constraints: 180b72d8) org.apache.pdfbox:jbig2-imageio:3.0.4 (1 constraints: 5e0cef01) diff --git a/versions.props b/versions.props index 0be5c899dbf..156355f1a2b 100644 --- a/versions.props +++ b/versions.props @@ -51,7 +51,7 @@ org.apache.httpcomponents:httpmime=4.5.14 org.apache.kafka:*=3.7.1 org.apache.kerby:*=1.0.1 org.apache.logging.log4j:*=2.21.0 -org.apache.lucene:*=9.11.1 +org.apache.lucene:*=9.12.1 org.apache.tika:*=1.28.5 org.apache.tomcat:annotations-api=6.0.53 org.apache.zookeeper:*=3.9.2