You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@lucene.apache.org by ju...@apache.org on 2021/02/22 19:49:18 UTC

[lucene-solr] branch master updated: LUCENE-9705: Create Lucene90DocValuesFormat and Lucene90NormsFormat (#2392)

This is an automated email from the ASF dual-hosted git repository.

julietibs pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/lucene-solr.git


The following commit(s) were added to refs/heads/master by this push:
     new 4d7b2ae  LUCENE-9705: Create Lucene90DocValuesFormat and Lucene90NormsFormat (#2392)
4d7b2ae is described below

commit 4d7b2aebfe01e2a8d0407c179238bb5e092b8d2a
Author: Julie Tibshirani <ju...@elastic.co>
AuthorDate: Mon Feb 22 11:49:02 2021 -0800

    LUCENE-9705: Create Lucene90DocValuesFormat and Lucene90NormsFormat (#2392)
    
    For now these are just copies of Lucene80DocValuesFormat and
    Lucene80NormsFormat. The existing formats were moved to backwards-codecs.
---
 .../lucene60/Lucene60FieldInfosFormat.java         |  2 +-
 .../backward_codecs}/lucene80/IndexedDISI.java     |  2 +-
 .../backward_codecs/lucene80/Lucene80Codec.java    |  3 +-
 .../lucene80/Lucene80DocValuesConsumer.java        | 16 ++---
 .../lucene80/Lucene80DocValuesFormat.java          |  7 +-
 .../lucene80/Lucene80DocValuesProducer.java        |  2 +-
 .../lucene80/Lucene80NormsFormat.java              | 13 ++--
 .../lucene80/Lucene80NormsProducer.java            |  6 +-
 .../backward_codecs/lucene80/package-info.java     |  2 +-
 .../backward_codecs/lucene84/Lucene84Codec.java    |  4 +-
 .../backward_codecs/lucene86/Lucene86Codec.java    |  6 +-
 .../backward_codecs/lucene87/Lucene87Codec.java    |  6 +-
 .../org.apache.lucene.codecs.DocValuesFormat       |  1 +
 .../backward_codecs/Lucene87/Lucene87RWCodec.java  | 10 ++-
 .../lucene50/TestLucene50CompoundFormat.java       |  2 +-
 .../BaseLucene80DocValuesFormatTestCase.java       |  2 +-
 .../lucene80/Lucene80NormsConsumer.java            |  4 +-
 .../lucene80/Lucene80RWNormsFormat.java}           | 15 +++-
 ...TestBestCompressionLucene80DocValuesFormat.java |  2 +-
 .../TestBestSpeedLucene80DocValuesFormat.java      |  2 +-
 .../lucene80/TestDocValuesCompression.java         | 12 ++--
 .../backward_codecs}/lucene80/TestIndexedDISI.java |  3 +-
 .../lucene80/TestLucene80NormsFormat.java          |  6 +-
 .../TestLucene80NormsFormatMergeInstance.java      |  2 +-
 .../backward_codecs/lucene84/Lucene84RWCodec.java  |  7 ++
 .../backward_codecs/lucene86/Lucene86RWCodec.java  |  7 ++
 .../codecs/{lucene80 => lucene90}/IndexedDISI.java |  2 +-
 .../lucene/codecs/lucene90/Lucene90Codec.java      | 14 ++--
 .../Lucene90DocValuesConsumer.java}                | 82 +++++++++++-----------
 .../Lucene90DocValuesFormat.java}                  | 26 ++++---
 .../Lucene90DocValuesProducer.java}                | 57 +++++++--------
 .../Lucene90NormsConsumer.java}                    | 10 +--
 .../Lucene90NormsFormat.java}                      | 16 ++---
 .../Lucene90NormsProducer.java}                    | 16 ++---
 .../lucene/codecs/lucene90/package-info.java       |  8 +--
 .../org.apache.lucene.codecs.DocValuesFormat       |  2 +-
 ...rmsFormat.java => TestLucene90NormsFormat.java} |  4 +-
 ...a => TestLucene90NormsFormatMergeInstance.java} |  4 +-
 .../BaseLucene90DocValuesFormatTestCase.java}      | 22 +++---
 ...estBestCompressionLucene90DocValuesFormat.java} | 10 +--
 .../TestBestSpeedLucene90DocValuesFormat.java}     |  8 +--
 .../TestDocValuesCompression.java                  | 17 +++--
 .../{lucene80 => lucene90}/TestIndexedDISI.java    |  2 +-
 .../java/org/apache/lucene/index/RandomCodec.java  |  4 +-
 .../src/java/org/apache/lucene/util/TestUtil.java  |  4 +-
 45 files changed, 240 insertions(+), 212 deletions(-)

diff --git a/lucene/backward-codecs/src/java/org/apache/lucene/backward_codecs/lucene60/Lucene60FieldInfosFormat.java b/lucene/backward-codecs/src/java/org/apache/lucene/backward_codecs/lucene60/Lucene60FieldInfosFormat.java
index 3eb352e..9295693 100644
--- a/lucene/backward-codecs/src/java/org/apache/lucene/backward_codecs/lucene60/Lucene60FieldInfosFormat.java
+++ b/lucene/backward-codecs/src/java/org/apache/lucene/backward_codecs/lucene60/Lucene60FieldInfosFormat.java
@@ -314,7 +314,7 @@ public final class Lucene60FieldInfosFormat extends FieldInfosFormat {
   /**
    * Note: although this format is only used on older versions, we need to keep the write logic in
    * addition to the read logic. It's possible for field infos on older segments to be written to,
-   * for example as part of in-place doc values updates.
+   * for example as part of doc values updates.
    */
   @Override
   public void write(
diff --git a/lucene/core/src/java/org/apache/lucene/codecs/lucene80/IndexedDISI.java b/lucene/backward-codecs/src/java/org/apache/lucene/backward_codecs/lucene80/IndexedDISI.java
similarity index 99%
copy from lucene/core/src/java/org/apache/lucene/codecs/lucene80/IndexedDISI.java
copy to lucene/backward-codecs/src/java/org/apache/lucene/backward_codecs/lucene80/IndexedDISI.java
index 472dad1..5e370b5 100644
--- a/lucene/core/src/java/org/apache/lucene/codecs/lucene80/IndexedDISI.java
+++ b/lucene/backward-codecs/src/java/org/apache/lucene/backward_codecs/lucene80/IndexedDISI.java
@@ -14,7 +14,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.apache.lucene.codecs.lucene80;
+package org.apache.lucene.backward_codecs.lucene80;
 
 import java.io.DataInput;
 import java.io.IOException;
diff --git a/lucene/backward-codecs/src/java/org/apache/lucene/backward_codecs/lucene80/Lucene80Codec.java b/lucene/backward-codecs/src/java/org/apache/lucene/backward_codecs/lucene80/Lucene80Codec.java
index 92b6a21..7136276 100644
--- a/lucene/backward-codecs/src/java/org/apache/lucene/backward_codecs/lucene80/Lucene80Codec.java
+++ b/lucene/backward-codecs/src/java/org/apache/lucene/backward_codecs/lucene80/Lucene80Codec.java
@@ -35,7 +35,6 @@ import org.apache.lucene.codecs.StoredFieldsFormat;
 import org.apache.lucene.codecs.TermVectorsFormat;
 import org.apache.lucene.codecs.VectorFormat;
 import org.apache.lucene.codecs.lucene50.Lucene50TermVectorsFormat;
-import org.apache.lucene.codecs.lucene80.Lucene80NormsFormat;
 import org.apache.lucene.codecs.perfield.PerFieldDocValuesFormat;
 import org.apache.lucene.codecs.perfield.PerFieldPostingsFormat;
 
@@ -44,7 +43,7 @@ import org.apache.lucene.codecs.perfield.PerFieldPostingsFormat;
  *
  * <p>
  *
- * @see org.apache.lucene.codecs.lucene80 package documentation for file format details.
+ * @see org.apache.lucene.backward_codecs.lucene80 package documentation for file format details.
  * @lucene.experimental
  */
 public class Lucene80Codec extends Codec {
diff --git a/lucene/core/src/java/org/apache/lucene/codecs/lucene80/Lucene80DocValuesConsumer.java b/lucene/backward-codecs/src/java/org/apache/lucene/backward_codecs/lucene80/Lucene80DocValuesConsumer.java
similarity index 98%
copy from lucene/core/src/java/org/apache/lucene/codecs/lucene80/Lucene80DocValuesConsumer.java
copy to lucene/backward-codecs/src/java/org/apache/lucene/backward_codecs/lucene80/Lucene80DocValuesConsumer.java
index 118ba03..bfb0335 100644
--- a/lucene/core/src/java/org/apache/lucene/codecs/lucene80/Lucene80DocValuesConsumer.java
+++ b/lucene/backward-codecs/src/java/org/apache/lucene/backward_codecs/lucene80/Lucene80DocValuesConsumer.java
@@ -14,11 +14,11 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.apache.lucene.codecs.lucene80;
+package org.apache.lucene.backward_codecs.lucene80;
 
-import static org.apache.lucene.codecs.lucene80.Lucene80DocValuesFormat.DIRECT_MONOTONIC_BLOCK_SHIFT;
-import static org.apache.lucene.codecs.lucene80.Lucene80DocValuesFormat.NUMERIC_BLOCK_SHIFT;
-import static org.apache.lucene.codecs.lucene80.Lucene80DocValuesFormat.NUMERIC_BLOCK_SIZE;
+import static org.apache.lucene.backward_codecs.lucene80.Lucene80DocValuesFormat.DIRECT_MONOTONIC_BLOCK_SHIFT;
+import static org.apache.lucene.backward_codecs.lucene80.Lucene80DocValuesFormat.NUMERIC_BLOCK_SHIFT;
+import static org.apache.lucene.backward_codecs.lucene80.Lucene80DocValuesFormat.NUMERIC_BLOCK_SIZE;
 
 import java.io.Closeable;
 import java.io.IOException;
@@ -403,7 +403,7 @@ final class Lucene80DocValuesConsumer extends DocValuesConsumer implements Close
   }
 
   class CompressedBinaryBlockWriter implements Closeable {
-    final FastCompressionHashTable ht = new LZ4.FastCompressionHashTable();
+    final FastCompressionHashTable ht = new FastCompressionHashTable();
     int uncompressedBlockLength = 0;
     int maxUncompressedBlockLength = 0;
     int numDocsInCurrentBlock = 0;
@@ -772,10 +772,10 @@ final class Lucene80DocValuesConsumer extends DocValuesConsumer implements Close
     int maxLength = 0, maxBlockLength = 0;
     TermsEnum iterator = values.termsEnum();
 
-    LZ4.FastCompressionHashTable ht = null;
+    FastCompressionHashTable ht = null;
     ByteArrayDataOutput bufferedOutput = null;
     if (compress) {
-      ht = new LZ4.FastCompressionHashTable();
+      ht = new FastCompressionHashTable();
       bufferedOutput = new ByteArrayDataOutput(termsDictBuffer);
     }
 
@@ -840,7 +840,7 @@ final class Lucene80DocValuesConsumer extends DocValuesConsumer implements Close
   }
 
   private int compressAndGetTermsDictBlockLength(
-      ByteArrayDataOutput bufferedOutput, LZ4.FastCompressionHashTable ht) throws IOException {
+      ByteArrayDataOutput bufferedOutput, FastCompressionHashTable ht) throws IOException {
     int uncompressedLength = bufferedOutput.getPosition();
     data.writeVInt(uncompressedLength);
     long before = data.getFilePointer();
diff --git a/lucene/core/src/java/org/apache/lucene/codecs/lucene80/Lucene80DocValuesFormat.java b/lucene/backward-codecs/src/java/org/apache/lucene/backward_codecs/lucene80/Lucene80DocValuesFormat.java
similarity index 97%
copy from lucene/core/src/java/org/apache/lucene/codecs/lucene80/Lucene80DocValuesFormat.java
copy to lucene/backward-codecs/src/java/org/apache/lucene/backward_codecs/lucene80/Lucene80DocValuesFormat.java
index c8d59cc..4f80698 100644
--- a/lucene/core/src/java/org/apache/lucene/codecs/lucene80/Lucene80DocValuesFormat.java
+++ b/lucene/backward-codecs/src/java/org/apache/lucene/backward_codecs/lucene80/Lucene80DocValuesFormat.java
@@ -14,7 +14,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.apache.lucene.codecs.lucene80;
+package org.apache.lucene.backward_codecs.lucene80;
 
 import java.io.IOException;
 import java.util.Objects;
@@ -163,6 +163,11 @@ public final class Lucene80DocValuesFormat extends DocValuesFormat {
     this.mode = Objects.requireNonNull(mode);
   }
 
+  /**
+   * Note: although this format is only used on older versions, we need to keep the write logic in
+   * addition to the read logic. It's possible for doc values on older segments to be written to
+   * through doc values updates.
+   */
   @Override
   public DocValuesConsumer fieldsConsumer(SegmentWriteState state) throws IOException {
     return new Lucene80DocValuesConsumer(
diff --git a/lucene/core/src/java/org/apache/lucene/codecs/lucene80/Lucene80DocValuesProducer.java b/lucene/backward-codecs/src/java/org/apache/lucene/backward_codecs/lucene80/Lucene80DocValuesProducer.java
similarity index 99%
copy from lucene/core/src/java/org/apache/lucene/codecs/lucene80/Lucene80DocValuesProducer.java
copy to lucene/backward-codecs/src/java/org/apache/lucene/backward_codecs/lucene80/Lucene80DocValuesProducer.java
index 5813435..67e69ee 100644
--- a/lucene/core/src/java/org/apache/lucene/codecs/lucene80/Lucene80DocValuesProducer.java
+++ b/lucene/backward-codecs/src/java/org/apache/lucene/backward_codecs/lucene80/Lucene80DocValuesProducer.java
@@ -14,7 +14,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.apache.lucene.codecs.lucene80;
+package org.apache.lucene.backward_codecs.lucene80;
 
 import java.io.Closeable;
 import java.io.IOException;
diff --git a/lucene/core/src/java/org/apache/lucene/codecs/lucene80/Lucene80NormsFormat.java b/lucene/backward-codecs/src/java/org/apache/lucene/backward_codecs/lucene80/Lucene80NormsFormat.java
similarity index 91%
copy from lucene/core/src/java/org/apache/lucene/codecs/lucene80/Lucene80NormsFormat.java
copy to lucene/backward-codecs/src/java/org/apache/lucene/backward_codecs/lucene80/Lucene80NormsFormat.java
index 1820581..28b191c 100644
--- a/lucene/core/src/java/org/apache/lucene/codecs/lucene80/Lucene80NormsFormat.java
+++ b/lucene/backward-codecs/src/java/org/apache/lucene/backward_codecs/lucene80/Lucene80NormsFormat.java
@@ -14,7 +14,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.apache.lucene.codecs.lucene80;
+package org.apache.lucene.backward_codecs.lucene80;
 
 import java.io.IOException;
 import org.apache.lucene.codecs.CodecUtil;
@@ -87,8 +87,7 @@ public class Lucene80NormsFormat extends NormsFormat {
 
   @Override
   public NormsConsumer normsConsumer(SegmentWriteState state) throws IOException {
-    return new Lucene80NormsConsumer(
-        state, DATA_CODEC, DATA_EXTENSION, METADATA_CODEC, METADATA_EXTENSION);
+    throw new UnsupportedOperationException("Old codecs may only be used for reading");
   }
 
   @Override
@@ -97,10 +96,10 @@ public class Lucene80NormsFormat extends NormsFormat {
         state, DATA_CODEC, DATA_EXTENSION, METADATA_CODEC, METADATA_EXTENSION);
   }
 
-  private static final String DATA_CODEC = "Lucene80NormsData";
-  private static final String DATA_EXTENSION = "nvd";
-  private static final String METADATA_CODEC = "Lucene80NormsMetadata";
-  private static final String METADATA_EXTENSION = "nvm";
+  static final String DATA_CODEC = "Lucene80NormsData";
+  static final String DATA_EXTENSION = "nvd";
+  static final String METADATA_CODEC = "Lucene80NormsMetadata";
+  static final String METADATA_EXTENSION = "nvm";
   static final int VERSION_START = 0;
   static final int VERSION_CURRENT = VERSION_START;
 }
diff --git a/lucene/core/src/java/org/apache/lucene/codecs/lucene80/Lucene80NormsProducer.java b/lucene/backward-codecs/src/java/org/apache/lucene/backward_codecs/lucene80/Lucene80NormsProducer.java
similarity index 98%
copy from lucene/core/src/java/org/apache/lucene/codecs/lucene80/Lucene80NormsProducer.java
copy to lucene/backward-codecs/src/java/org/apache/lucene/backward_codecs/lucene80/Lucene80NormsProducer.java
index ab26cda..2fcd594 100644
--- a/lucene/core/src/java/org/apache/lucene/codecs/lucene80/Lucene80NormsProducer.java
+++ b/lucene/backward-codecs/src/java/org/apache/lucene/backward_codecs/lucene80/Lucene80NormsProducer.java
@@ -14,10 +14,10 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.apache.lucene.codecs.lucene80;
+package org.apache.lucene.backward_codecs.lucene80;
 
-import static org.apache.lucene.codecs.lucene80.Lucene80NormsFormat.VERSION_CURRENT;
-import static org.apache.lucene.codecs.lucene80.Lucene80NormsFormat.VERSION_START;
+import static org.apache.lucene.backward_codecs.lucene80.Lucene80NormsFormat.VERSION_CURRENT;
+import static org.apache.lucene.backward_codecs.lucene80.Lucene80NormsFormat.VERSION_START;
 
 import java.io.IOException;
 import java.util.HashMap;
diff --git a/lucene/backward-codecs/src/java/org/apache/lucene/backward_codecs/lucene80/package-info.java b/lucene/backward-codecs/src/java/org/apache/lucene/backward_codecs/lucene80/package-info.java
index 2f8459c..ade526b 100644
--- a/lucene/backward-codecs/src/java/org/apache/lucene/backward_codecs/lucene80/package-info.java
+++ b/lucene/backward-codecs/src/java/org/apache/lucene/backward_codecs/lucene80/package-info.java
@@ -15,5 +15,5 @@
  * limitations under the License.
  */
 
-/** Lucene 8.0 file format. */
+/** Components from the Lucene 8.0 index format. */
 package org.apache.lucene.backward_codecs.lucene80;
diff --git a/lucene/backward-codecs/src/java/org/apache/lucene/backward_codecs/lucene84/Lucene84Codec.java b/lucene/backward-codecs/src/java/org/apache/lucene/backward_codecs/lucene84/Lucene84Codec.java
index 4f9db55..81125f5 100644
--- a/lucene/backward-codecs/src/java/org/apache/lucene/backward_codecs/lucene84/Lucene84Codec.java
+++ b/lucene/backward-codecs/src/java/org/apache/lucene/backward_codecs/lucene84/Lucene84Codec.java
@@ -24,6 +24,7 @@ import org.apache.lucene.backward_codecs.lucene50.Lucene50StoredFieldsFormat.Mod
 import org.apache.lucene.backward_codecs.lucene60.Lucene60FieldInfosFormat;
 import org.apache.lucene.backward_codecs.lucene60.Lucene60PointsFormat;
 import org.apache.lucene.backward_codecs.lucene70.Lucene70SegmentInfoFormat;
+import org.apache.lucene.backward_codecs.lucene80.Lucene80NormsFormat;
 import org.apache.lucene.codecs.Codec;
 import org.apache.lucene.codecs.CompoundFormat;
 import org.apache.lucene.codecs.DocValuesFormat;
@@ -38,7 +39,6 @@ import org.apache.lucene.codecs.StoredFieldsFormat;
 import org.apache.lucene.codecs.TermVectorsFormat;
 import org.apache.lucene.codecs.VectorFormat;
 import org.apache.lucene.codecs.lucene50.Lucene50TermVectorsFormat;
-import org.apache.lucene.codecs.lucene80.Lucene80NormsFormat;
 import org.apache.lucene.codecs.perfield.PerFieldDocValuesFormat;
 import org.apache.lucene.codecs.perfield.PerFieldPostingsFormat;
 
@@ -173,7 +173,7 @@ public class Lucene84Codec extends Codec {
   private final NormsFormat normsFormat = new Lucene80NormsFormat();
 
   @Override
-  public final NormsFormat normsFormat() {
+  public NormsFormat normsFormat() {
     return normsFormat;
   }
 }
diff --git a/lucene/backward-codecs/src/java/org/apache/lucene/backward_codecs/lucene86/Lucene86Codec.java b/lucene/backward-codecs/src/java/org/apache/lucene/backward_codecs/lucene86/Lucene86Codec.java
index 8176431..78fb85ae 100644
--- a/lucene/backward-codecs/src/java/org/apache/lucene/backward_codecs/lucene86/Lucene86Codec.java
+++ b/lucene/backward-codecs/src/java/org/apache/lucene/backward_codecs/lucene86/Lucene86Codec.java
@@ -22,6 +22,7 @@ import org.apache.lucene.backward_codecs.lucene50.Lucene50CompoundFormat;
 import org.apache.lucene.backward_codecs.lucene50.Lucene50LiveDocsFormat;
 import org.apache.lucene.backward_codecs.lucene50.Lucene50StoredFieldsFormat;
 import org.apache.lucene.backward_codecs.lucene60.Lucene60FieldInfosFormat;
+import org.apache.lucene.backward_codecs.lucene80.Lucene80NormsFormat;
 import org.apache.lucene.backward_codecs.lucene84.Lucene84PostingsFormat;
 import org.apache.lucene.codecs.Codec;
 import org.apache.lucene.codecs.CompoundFormat;
@@ -37,7 +38,6 @@ import org.apache.lucene.codecs.StoredFieldsFormat;
 import org.apache.lucene.codecs.TermVectorsFormat;
 import org.apache.lucene.codecs.VectorFormat;
 import org.apache.lucene.codecs.lucene50.Lucene50TermVectorsFormat;
-import org.apache.lucene.codecs.lucene80.Lucene80NormsFormat;
 import org.apache.lucene.codecs.lucene86.Lucene86PointsFormat;
 import org.apache.lucene.codecs.lucene86.Lucene86SegmentInfoFormat;
 import org.apache.lucene.codecs.perfield.PerFieldDocValuesFormat;
@@ -49,8 +49,8 @@ import org.apache.lucene.codecs.perfield.PerFieldPostingsFormat;
  *
  * <p>If you want to reuse functionality of this codec in another codec, extend {@link FilterCodec}.
  *
- * @see org.apache.lucene.codecs.lucene86 package documentation for file format details.
  * @lucene.experimental
+ * @see org.apache.lucene.codecs.lucene86 package documentation for file format details.
  */
 public class Lucene86Codec extends Codec {
   private final TermVectorsFormat vectorsFormat = new Lucene50TermVectorsFormat();
@@ -175,7 +175,7 @@ public class Lucene86Codec extends Codec {
   private final NormsFormat normsFormat = new Lucene80NormsFormat();
 
   @Override
-  public final NormsFormat normsFormat() {
+  public NormsFormat normsFormat() {
     return normsFormat;
   }
 }
diff --git a/lucene/backward-codecs/src/java/org/apache/lucene/backward_codecs/lucene87/Lucene87Codec.java b/lucene/backward-codecs/src/java/org/apache/lucene/backward_codecs/lucene87/Lucene87Codec.java
index 373a7d3..181e8fb 100644
--- a/lucene/backward-codecs/src/java/org/apache/lucene/backward_codecs/lucene87/Lucene87Codec.java
+++ b/lucene/backward-codecs/src/java/org/apache/lucene/backward_codecs/lucene87/Lucene87Codec.java
@@ -21,6 +21,8 @@ import java.util.Objects;
 import org.apache.lucene.backward_codecs.lucene50.Lucene50CompoundFormat;
 import org.apache.lucene.backward_codecs.lucene50.Lucene50LiveDocsFormat;
 import org.apache.lucene.backward_codecs.lucene60.Lucene60FieldInfosFormat;
+import org.apache.lucene.backward_codecs.lucene80.Lucene80DocValuesFormat;
+import org.apache.lucene.backward_codecs.lucene80.Lucene80NormsFormat;
 import org.apache.lucene.backward_codecs.lucene84.Lucene84PostingsFormat;
 import org.apache.lucene.codecs.Codec;
 import org.apache.lucene.codecs.CompoundFormat;
@@ -36,8 +38,6 @@ import org.apache.lucene.codecs.StoredFieldsFormat;
 import org.apache.lucene.codecs.TermVectorsFormat;
 import org.apache.lucene.codecs.VectorFormat;
 import org.apache.lucene.codecs.lucene50.Lucene50TermVectorsFormat;
-import org.apache.lucene.codecs.lucene80.Lucene80DocValuesFormat;
-import org.apache.lucene.codecs.lucene80.Lucene80NormsFormat;
 import org.apache.lucene.codecs.lucene86.Lucene86PointsFormat;
 import org.apache.lucene.codecs.lucene86.Lucene86SegmentInfoFormat;
 import org.apache.lucene.codecs.lucene87.Lucene87StoredFieldsFormat;
@@ -187,7 +187,7 @@ public class Lucene87Codec extends Codec {
   private final NormsFormat normsFormat = new Lucene80NormsFormat();
 
   @Override
-  public final NormsFormat normsFormat() {
+  public NormsFormat normsFormat() {
     return normsFormat;
   }
 }
diff --git a/lucene/backward-codecs/src/resources/META-INF/services/org.apache.lucene.codecs.DocValuesFormat b/lucene/backward-codecs/src/resources/META-INF/services/org.apache.lucene.codecs.DocValuesFormat
index 8f034f8..f058ccd 100644
--- a/lucene/backward-codecs/src/resources/META-INF/services/org.apache.lucene.codecs.DocValuesFormat
+++ b/lucene/backward-codecs/src/resources/META-INF/services/org.apache.lucene.codecs.DocValuesFormat
@@ -14,3 +14,4 @@
 #  limitations under the License.
 
 org.apache.lucene.backward_codecs.lucene70.Lucene70DocValuesFormat
+org.apache.lucene.backward_codecs.lucene80.Lucene80DocValuesFormat
diff --git a/lucene/backward-codecs/src/test/org/apache/lucene/backward_codecs/Lucene87/Lucene87RWCodec.java b/lucene/backward-codecs/src/test/org/apache/lucene/backward_codecs/Lucene87/Lucene87RWCodec.java
index 214085c..8fac2d6 100644
--- a/lucene/backward-codecs/src/test/org/apache/lucene/backward_codecs/Lucene87/Lucene87RWCodec.java
+++ b/lucene/backward-codecs/src/test/org/apache/lucene/backward_codecs/Lucene87/Lucene87RWCodec.java
@@ -14,12 +14,13 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.apache.lucene.backward_codecs.Lucene87;
+package org.apache.lucene.backward_codecs.lucene87;
 
 import org.apache.lucene.backward_codecs.lucene50.Lucene50RWCompoundFormat;
+import org.apache.lucene.backward_codecs.lucene80.Lucene80RWNormsFormat;
 import org.apache.lucene.backward_codecs.lucene84.Lucene84RWPostingsFormat;
-import org.apache.lucene.backward_codecs.lucene87.Lucene87Codec;
 import org.apache.lucene.codecs.CompoundFormat;
+import org.apache.lucene.codecs.NormsFormat;
 import org.apache.lucene.codecs.PostingsFormat;
 import org.apache.lucene.codecs.perfield.PerFieldPostingsFormat;
 
@@ -41,6 +42,11 @@ public class Lucene87RWCodec extends Lucene87Codec {
   }
 
   @Override
+  public NormsFormat normsFormat() {
+    return new Lucene80RWNormsFormat();
+  }
+
+  @Override
   public PostingsFormat postingsFormat() {
     return postingsFormat;
   }
diff --git a/lucene/backward-codecs/src/test/org/apache/lucene/backward_codecs/lucene50/TestLucene50CompoundFormat.java b/lucene/backward-codecs/src/test/org/apache/lucene/backward_codecs/lucene50/TestLucene50CompoundFormat.java
index 28624bf..de9f72c 100644
--- a/lucene/backward-codecs/src/test/org/apache/lucene/backward_codecs/lucene50/TestLucene50CompoundFormat.java
+++ b/lucene/backward-codecs/src/test/org/apache/lucene/backward_codecs/lucene50/TestLucene50CompoundFormat.java
@@ -16,7 +16,7 @@
  */
 package org.apache.lucene.backward_codecs.lucene50;
 
-import org.apache.lucene.backward_codecs.Lucene87.Lucene87RWCodec;
+import org.apache.lucene.backward_codecs.lucene87.Lucene87RWCodec;
 import org.apache.lucene.codecs.Codec;
 import org.apache.lucene.index.BaseCompoundFormatTestCase;
 
diff --git a/lucene/core/src/test/org/apache/lucene/codecs/lucene80/BaseLucene80DocValuesFormatTestCase.java b/lucene/backward-codecs/src/test/org/apache/lucene/backward_codecs/lucene80/BaseLucene80DocValuesFormatTestCase.java
similarity index 99%
copy from lucene/core/src/test/org/apache/lucene/codecs/lucene80/BaseLucene80DocValuesFormatTestCase.java
copy to lucene/backward-codecs/src/test/org/apache/lucene/backward_codecs/lucene80/BaseLucene80DocValuesFormatTestCase.java
index f1f9518..fce0a39 100644
--- a/lucene/core/src/test/org/apache/lucene/codecs/lucene80/BaseLucene80DocValuesFormatTestCase.java
+++ b/lucene/backward-codecs/src/test/org/apache/lucene/backward_codecs/lucene80/BaseLucene80DocValuesFormatTestCase.java
@@ -14,7 +14,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.apache.lucene.codecs.lucene80;
+package org.apache.lucene.backward_codecs.lucene80;
 
 import java.io.IOException;
 import java.util.ArrayList;
diff --git a/lucene/core/src/java/org/apache/lucene/codecs/lucene80/Lucene80NormsConsumer.java b/lucene/backward-codecs/src/test/org/apache/lucene/backward_codecs/lucene80/Lucene80NormsConsumer.java
similarity index 97%
copy from lucene/core/src/java/org/apache/lucene/codecs/lucene80/Lucene80NormsConsumer.java
copy to lucene/backward-codecs/src/test/org/apache/lucene/backward_codecs/lucene80/Lucene80NormsConsumer.java
index 72a898b..ea5c4df 100644
--- a/lucene/core/src/java/org/apache/lucene/codecs/lucene80/Lucene80NormsConsumer.java
+++ b/lucene/backward-codecs/src/test/org/apache/lucene/backward_codecs/lucene80/Lucene80NormsConsumer.java
@@ -14,9 +14,9 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.apache.lucene.codecs.lucene80;
+package org.apache.lucene.backward_codecs.lucene80;
 
-import static org.apache.lucene.codecs.lucene80.Lucene80NormsFormat.VERSION_CURRENT;
+import static org.apache.lucene.backward_codecs.lucene80.Lucene80NormsFormat.VERSION_CURRENT;
 
 import java.io.IOException;
 import org.apache.lucene.codecs.CodecUtil;
diff --git a/lucene/backward-codecs/src/java/org/apache/lucene/backward_codecs/lucene80/package-info.java b/lucene/backward-codecs/src/test/org/apache/lucene/backward_codecs/lucene80/Lucene80RWNormsFormat.java
similarity index 67%
copy from lucene/backward-codecs/src/java/org/apache/lucene/backward_codecs/lucene80/package-info.java
copy to lucene/backward-codecs/src/test/org/apache/lucene/backward_codecs/lucene80/Lucene80RWNormsFormat.java
index 2f8459c..1eee0f2 100644
--- a/lucene/backward-codecs/src/java/org/apache/lucene/backward_codecs/lucene80/package-info.java
+++ b/lucene/backward-codecs/src/test/org/apache/lucene/backward_codecs/lucene80/Lucene80RWNormsFormat.java
@@ -14,6 +14,17 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-
-/** Lucene 8.0 file format. */
 package org.apache.lucene.backward_codecs.lucene80;
+
+import java.io.IOException;
+import org.apache.lucene.codecs.NormsConsumer;
+import org.apache.lucene.index.SegmentWriteState;
+
+public class Lucene80RWNormsFormat extends Lucene80NormsFormat {
+
+  @Override
+  public NormsConsumer normsConsumer(SegmentWriteState state) throws IOException {
+    return new Lucene80NormsConsumer(
+        state, DATA_CODEC, DATA_EXTENSION, METADATA_CODEC, METADATA_EXTENSION);
+  }
+}
diff --git a/lucene/core/src/test/org/apache/lucene/codecs/lucene80/TestBestCompressionLucene80DocValuesFormat.java b/lucene/backward-codecs/src/test/org/apache/lucene/backward_codecs/lucene80/TestBestCompressionLucene80DocValuesFormat.java
similarity index 96%
copy from lucene/core/src/test/org/apache/lucene/codecs/lucene80/TestBestCompressionLucene80DocValuesFormat.java
copy to lucene/backward-codecs/src/test/org/apache/lucene/backward_codecs/lucene80/TestBestCompressionLucene80DocValuesFormat.java
index 1fafa55..78bb848 100644
--- a/lucene/core/src/test/org/apache/lucene/codecs/lucene80/TestBestCompressionLucene80DocValuesFormat.java
+++ b/lucene/backward-codecs/src/test/org/apache/lucene/backward_codecs/lucene80/TestBestCompressionLucene80DocValuesFormat.java
@@ -14,7 +14,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.apache.lucene.codecs.lucene80;
+package org.apache.lucene.backward_codecs.lucene80;
 
 import org.apache.lucene.codecs.Codec;
 import org.apache.lucene.util.TestUtil;
diff --git a/lucene/core/src/test/org/apache/lucene/codecs/lucene80/TestBestSpeedLucene80DocValuesFormat.java b/lucene/backward-codecs/src/test/org/apache/lucene/backward_codecs/lucene80/TestBestSpeedLucene80DocValuesFormat.java
similarity index 95%
copy from lucene/core/src/test/org/apache/lucene/codecs/lucene80/TestBestSpeedLucene80DocValuesFormat.java
copy to lucene/backward-codecs/src/test/org/apache/lucene/backward_codecs/lucene80/TestBestSpeedLucene80DocValuesFormat.java
index 3027842..283c42f 100644
--- a/lucene/core/src/test/org/apache/lucene/codecs/lucene80/TestBestSpeedLucene80DocValuesFormat.java
+++ b/lucene/backward-codecs/src/test/org/apache/lucene/backward_codecs/lucene80/TestBestSpeedLucene80DocValuesFormat.java
@@ -14,7 +14,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.apache.lucene.codecs.lucene80;
+package org.apache.lucene.backward_codecs.lucene80;
 
 import org.apache.lucene.codecs.Codec;
 import org.apache.lucene.util.TestUtil;
diff --git a/lucene/core/src/test/org/apache/lucene/codecs/lucene80/TestDocValuesCompression.java b/lucene/backward-codecs/src/test/org/apache/lucene/backward_codecs/lucene80/TestDocValuesCompression.java
similarity index 97%
copy from lucene/core/src/test/org/apache/lucene/codecs/lucene80/TestDocValuesCompression.java
copy to lucene/backward-codecs/src/test/org/apache/lucene/backward_codecs/lucene80/TestDocValuesCompression.java
index fb5b66a..1d60164 100644
--- a/lucene/core/src/test/org/apache/lucene/codecs/lucene80/TestDocValuesCompression.java
+++ b/lucene/backward-codecs/src/test/org/apache/lucene/backward_codecs/lucene80/TestDocValuesCompression.java
@@ -14,7 +14,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.apache.lucene.codecs.lucene80;
+package org.apache.lucene.backward_codecs.lucene80;
 
 import java.io.IOException;
 import java.util.ArrayList;
@@ -25,7 +25,6 @@ import java.util.Set;
 import org.apache.lucene.analysis.Analyzer;
 import org.apache.lucene.analysis.standard.StandardAnalyzer;
 import org.apache.lucene.codecs.Codec;
-import org.apache.lucene.codecs.lucene90.Lucene90Codec;
 import org.apache.lucene.document.Document;
 import org.apache.lucene.document.Field;
 import org.apache.lucene.document.SortedDocValuesField;
@@ -43,8 +42,13 @@ import org.apache.lucene.util.LuceneTestCase;
 import org.apache.lucene.util.TestUtil;
 
 public class TestDocValuesCompression extends LuceneTestCase {
-  private final Codec bestSpeed = new Lucene90Codec(Lucene90Codec.Mode.BEST_SPEED);
-  private final Codec bestCompression = new Lucene90Codec(Lucene90Codec.Mode.BEST_COMPRESSION);
+  private final Codec bestSpeed =
+      TestUtil.alwaysDocValuesFormat(
+          new Lucene80DocValuesFormat(Lucene80DocValuesFormat.Mode.BEST_SPEED));
+
+  private final Codec bestCompression =
+      TestUtil.alwaysDocValuesFormat(
+          new Lucene80DocValuesFormat(Lucene80DocValuesFormat.Mode.BEST_COMPRESSION));
 
   public void testTermsDictCompressionForLowCardinalityFields() throws IOException {
     final int CARDINALITY = Lucene80DocValuesFormat.TERMS_DICT_BLOCK_COMPRESSION_THRESHOLD - 1;
diff --git a/lucene/core/src/test/org/apache/lucene/codecs/lucene80/TestIndexedDISI.java b/lucene/backward-codecs/src/test/org/apache/lucene/backward_codecs/lucene80/TestIndexedDISI.java
similarity index 99%
copy from lucene/core/src/test/org/apache/lucene/codecs/lucene80/TestIndexedDISI.java
copy to lucene/backward-codecs/src/test/org/apache/lucene/backward_codecs/lucene80/TestIndexedDISI.java
index cd613db..bf54bf3 100644
--- a/lucene/core/src/test/org/apache/lucene/codecs/lucene80/TestIndexedDISI.java
+++ b/lucene/backward-codecs/src/test/org/apache/lucene/backward_codecs/lucene80/TestIndexedDISI.java
@@ -14,7 +14,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.apache.lucene.codecs.lucene80;
+package org.apache.lucene.backward_codecs.lucene80;
 
 import java.io.IOException;
 import java.util.Random;
@@ -31,7 +31,6 @@ import org.apache.lucene.util.LuceneTestCase;
 import org.apache.lucene.util.SparseFixedBitSet;
 import org.apache.lucene.util.TestUtil;
 
-// Copied from the lucene70 package for separation of codec-code
 public class TestIndexedDISI extends LuceneTestCase {
 
   public void testEmpty() throws IOException {
diff --git a/lucene/core/src/test/org/apache/lucene/codecs/lucene80/TestLucene80NormsFormat.java b/lucene/backward-codecs/src/test/org/apache/lucene/backward_codecs/lucene80/TestLucene80NormsFormat.java
similarity index 86%
copy from lucene/core/src/test/org/apache/lucene/codecs/lucene80/TestLucene80NormsFormat.java
copy to lucene/backward-codecs/src/test/org/apache/lucene/backward_codecs/lucene80/TestLucene80NormsFormat.java
index 36047f0..f46037f 100644
--- a/lucene/core/src/test/org/apache/lucene/codecs/lucene80/TestLucene80NormsFormat.java
+++ b/lucene/backward-codecs/src/test/org/apache/lucene/backward_codecs/lucene80/TestLucene80NormsFormat.java
@@ -14,15 +14,15 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.apache.lucene.codecs.lucene80;
+package org.apache.lucene.backward_codecs.lucene80;
 
+import org.apache.lucene.backward_codecs.lucene87.Lucene87RWCodec;
 import org.apache.lucene.codecs.Codec;
 import org.apache.lucene.index.BaseNormsFormatTestCase;
-import org.apache.lucene.util.TestUtil;
 
 /** Tests Lucene80NormsFormat */
 public class TestLucene80NormsFormat extends BaseNormsFormatTestCase {
-  private final Codec codec = TestUtil.getDefaultCodec();
+  private final Codec codec = new Lucene87RWCodec();
 
   @Override
   protected Codec getCodec() {
diff --git a/lucene/core/src/test/org/apache/lucene/codecs/lucene80/TestLucene80NormsFormatMergeInstance.java b/lucene/backward-codecs/src/test/org/apache/lucene/backward_codecs/lucene80/TestLucene80NormsFormatMergeInstance.java
similarity index 95%
copy from lucene/core/src/test/org/apache/lucene/codecs/lucene80/TestLucene80NormsFormatMergeInstance.java
copy to lucene/backward-codecs/src/test/org/apache/lucene/backward_codecs/lucene80/TestLucene80NormsFormatMergeInstance.java
index d01d049..eaa1738 100644
--- a/lucene/core/src/test/org/apache/lucene/codecs/lucene80/TestLucene80NormsFormatMergeInstance.java
+++ b/lucene/backward-codecs/src/test/org/apache/lucene/backward_codecs/lucene80/TestLucene80NormsFormatMergeInstance.java
@@ -14,7 +14,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.apache.lucene.codecs.lucene80;
+package org.apache.lucene.backward_codecs.lucene80;
 
 /** Test the merge instance of the Lucene80 norms format. */
 public class TestLucene80NormsFormatMergeInstance extends TestLucene80NormsFormat {
diff --git a/lucene/backward-codecs/src/test/org/apache/lucene/backward_codecs/lucene84/Lucene84RWCodec.java b/lucene/backward-codecs/src/test/org/apache/lucene/backward_codecs/lucene84/Lucene84RWCodec.java
index a5e34c9..3b70b2c 100644
--- a/lucene/backward-codecs/src/test/org/apache/lucene/backward_codecs/lucene84/Lucene84RWCodec.java
+++ b/lucene/backward-codecs/src/test/org/apache/lucene/backward_codecs/lucene84/Lucene84RWCodec.java
@@ -20,7 +20,9 @@ import org.apache.lucene.backward_codecs.lucene50.Lucene50RWCompoundFormat;
 import org.apache.lucene.backward_codecs.lucene50.Lucene50RWStoredFieldsFormat;
 import org.apache.lucene.backward_codecs.lucene60.Lucene60RWPointsFormat;
 import org.apache.lucene.backward_codecs.lucene70.Lucene70RWSegmentInfoFormat;
+import org.apache.lucene.backward_codecs.lucene80.Lucene80RWNormsFormat;
 import org.apache.lucene.codecs.CompoundFormat;
+import org.apache.lucene.codecs.NormsFormat;
 import org.apache.lucene.codecs.PointsFormat;
 import org.apache.lucene.codecs.PostingsFormat;
 import org.apache.lucene.codecs.SegmentInfoFormat;
@@ -55,6 +57,11 @@ public class Lucene84RWCodec extends Lucene84Codec {
   }
 
   @Override
+  public NormsFormat normsFormat() {
+    return new Lucene80RWNormsFormat();
+  }
+
+  @Override
   public PostingsFormat postingsFormat() {
     return postingsFormat;
   }
diff --git a/lucene/backward-codecs/src/test/org/apache/lucene/backward_codecs/lucene86/Lucene86RWCodec.java b/lucene/backward-codecs/src/test/org/apache/lucene/backward_codecs/lucene86/Lucene86RWCodec.java
index c8dd36b..97d5633 100644
--- a/lucene/backward-codecs/src/test/org/apache/lucene/backward_codecs/lucene86/Lucene86RWCodec.java
+++ b/lucene/backward-codecs/src/test/org/apache/lucene/backward_codecs/lucene86/Lucene86RWCodec.java
@@ -19,8 +19,10 @@ package org.apache.lucene.backward_codecs.lucene86;
 import org.apache.lucene.backward_codecs.lucene50.Lucene50RWCompoundFormat;
 import org.apache.lucene.backward_codecs.lucene50.Lucene50RWStoredFieldsFormat;
 import org.apache.lucene.backward_codecs.lucene50.Lucene50StoredFieldsFormat;
+import org.apache.lucene.backward_codecs.lucene80.Lucene80RWNormsFormat;
 import org.apache.lucene.backward_codecs.lucene84.Lucene84RWPostingsFormat;
 import org.apache.lucene.codecs.CompoundFormat;
+import org.apache.lucene.codecs.NormsFormat;
 import org.apache.lucene.codecs.PostingsFormat;
 import org.apache.lucene.codecs.StoredFieldsFormat;
 import org.apache.lucene.codecs.perfield.PerFieldPostingsFormat;
@@ -54,6 +56,11 @@ public class Lucene86RWCodec extends Lucene86Codec {
   }
 
   @Override
+  public NormsFormat normsFormat() {
+    return new Lucene80RWNormsFormat();
+  }
+
+  @Override
   public PostingsFormat postingsFormat() {
     return postingsFormat;
   }
diff --git a/lucene/core/src/java/org/apache/lucene/codecs/lucene80/IndexedDISI.java b/lucene/core/src/java/org/apache/lucene/codecs/lucene90/IndexedDISI.java
similarity index 99%
rename from lucene/core/src/java/org/apache/lucene/codecs/lucene80/IndexedDISI.java
rename to lucene/core/src/java/org/apache/lucene/codecs/lucene90/IndexedDISI.java
index 472dad1..22da100 100644
--- a/lucene/core/src/java/org/apache/lucene/codecs/lucene80/IndexedDISI.java
+++ b/lucene/core/src/java/org/apache/lucene/codecs/lucene90/IndexedDISI.java
@@ -14,7 +14,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.apache.lucene.codecs.lucene80;
+package org.apache.lucene.codecs.lucene90;
 
 import java.io.DataInput;
 import java.io.IOException;
diff --git a/lucene/core/src/java/org/apache/lucene/codecs/lucene90/Lucene90Codec.java b/lucene/core/src/java/org/apache/lucene/codecs/lucene90/Lucene90Codec.java
index 65c866d..770f352 100644
--- a/lucene/core/src/java/org/apache/lucene/codecs/lucene90/Lucene90Codec.java
+++ b/lucene/core/src/java/org/apache/lucene/codecs/lucene90/Lucene90Codec.java
@@ -31,8 +31,6 @@ import org.apache.lucene.codecs.StoredFieldsFormat;
 import org.apache.lucene.codecs.TermVectorsFormat;
 import org.apache.lucene.codecs.VectorFormat;
 import org.apache.lucene.codecs.lucene50.Lucene50TermVectorsFormat;
-import org.apache.lucene.codecs.lucene80.Lucene80DocValuesFormat;
-import org.apache.lucene.codecs.lucene80.Lucene80NormsFormat;
 import org.apache.lucene.codecs.lucene86.Lucene86PointsFormat;
 import org.apache.lucene.codecs.lucene86.Lucene86SegmentInfoFormat;
 import org.apache.lucene.codecs.lucene87.Lucene87StoredFieldsFormat;
@@ -52,16 +50,16 @@ public class Lucene90Codec extends Codec {
   /** Configuration option for the codec. */
   public static enum Mode {
     /** Trade compression ratio for retrieval speed. */
-    BEST_SPEED(Lucene87StoredFieldsFormat.Mode.BEST_SPEED, Lucene80DocValuesFormat.Mode.BEST_SPEED),
+    BEST_SPEED(Lucene87StoredFieldsFormat.Mode.BEST_SPEED, Lucene90DocValuesFormat.Mode.BEST_SPEED),
     /** Trade retrieval speed for compression ratio. */
     BEST_COMPRESSION(
         Lucene87StoredFieldsFormat.Mode.BEST_COMPRESSION,
-        Lucene80DocValuesFormat.Mode.BEST_COMPRESSION);
+        Lucene90DocValuesFormat.Mode.BEST_COMPRESSION);
 
     private final Lucene87StoredFieldsFormat.Mode storedMode;
-    private final Lucene80DocValuesFormat.Mode dvMode;
+    private final Lucene90DocValuesFormat.Mode dvMode;
 
-    private Mode(Lucene87StoredFieldsFormat.Mode storedMode, Lucene80DocValuesFormat.Mode dvMode) {
+    private Mode(Lucene87StoredFieldsFormat.Mode storedMode, Lucene90DocValuesFormat.Mode dvMode) {
       this.storedMode = Objects.requireNonNull(storedMode);
       this.dvMode = Objects.requireNonNull(dvMode);
     }
@@ -109,7 +107,7 @@ public class Lucene90Codec extends Codec {
     this.storedFieldsFormat =
         new Lucene87StoredFieldsFormat(Objects.requireNonNull(mode).storedMode);
     this.defaultFormat = new Lucene90PostingsFormat();
-    this.defaultDVFormat = new Lucene80DocValuesFormat(mode.dvMode);
+    this.defaultDVFormat = new Lucene90DocValuesFormat(mode.dvMode);
   }
 
   @Override
@@ -189,7 +187,7 @@ public class Lucene90Codec extends Codec {
 
   private final DocValuesFormat defaultDVFormat;
 
-  private final NormsFormat normsFormat = new Lucene80NormsFormat();
+  private final NormsFormat normsFormat = new Lucene90NormsFormat();
 
   @Override
   public final NormsFormat normsFormat() {
diff --git a/lucene/core/src/java/org/apache/lucene/codecs/lucene80/Lucene80DocValuesConsumer.java b/lucene/core/src/java/org/apache/lucene/codecs/lucene90/Lucene90DocValuesConsumer.java
similarity index 93%
rename from lucene/core/src/java/org/apache/lucene/codecs/lucene80/Lucene80DocValuesConsumer.java
rename to lucene/core/src/java/org/apache/lucene/codecs/lucene90/Lucene90DocValuesConsumer.java
index 118ba03..80a5868 100644
--- a/lucene/core/src/java/org/apache/lucene/codecs/lucene80/Lucene80DocValuesConsumer.java
+++ b/lucene/core/src/java/org/apache/lucene/codecs/lucene90/Lucene90DocValuesConsumer.java
@@ -14,11 +14,11 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.apache.lucene.codecs.lucene80;
+package org.apache.lucene.codecs.lucene90;
 
-import static org.apache.lucene.codecs.lucene80.Lucene80DocValuesFormat.DIRECT_MONOTONIC_BLOCK_SHIFT;
-import static org.apache.lucene.codecs.lucene80.Lucene80DocValuesFormat.NUMERIC_BLOCK_SHIFT;
-import static org.apache.lucene.codecs.lucene80.Lucene80DocValuesFormat.NUMERIC_BLOCK_SIZE;
+import static org.apache.lucene.codecs.lucene90.Lucene90DocValuesFormat.DIRECT_MONOTONIC_BLOCK_SHIFT;
+import static org.apache.lucene.codecs.lucene90.Lucene90DocValuesFormat.NUMERIC_BLOCK_SHIFT;
+import static org.apache.lucene.codecs.lucene90.Lucene90DocValuesFormat.NUMERIC_BLOCK_SIZE;
 
 import java.io.Closeable;
 import java.io.IOException;
@@ -61,26 +61,26 @@ import org.apache.lucene.util.compress.LZ4.FastCompressionHashTable;
 import org.apache.lucene.util.packed.DirectMonotonicWriter;
 import org.apache.lucene.util.packed.DirectWriter;
 
-/** writer for {@link Lucene80DocValuesFormat} */
-final class Lucene80DocValuesConsumer extends DocValuesConsumer implements Closeable {
+/** writer for {@link Lucene90DocValuesFormat} */
+final class Lucene90DocValuesConsumer extends DocValuesConsumer implements Closeable {
 
-  final Lucene80DocValuesFormat.Mode mode;
+  final Lucene90DocValuesFormat.Mode mode;
   IndexOutput data, meta;
   final int maxDoc;
   private final SegmentWriteState state;
   private byte[] termsDictBuffer;
 
   /** expert: Creates a new writer */
-  public Lucene80DocValuesConsumer(
+  public Lucene90DocValuesConsumer(
       SegmentWriteState state,
       String dataCodec,
       String dataExtension,
       String metaCodec,
       String metaExtension,
-      Lucene80DocValuesFormat.Mode mode)
+      Lucene90DocValuesFormat.Mode mode)
       throws IOException {
     this.mode = mode;
-    if (Lucene80DocValuesFormat.Mode.BEST_COMPRESSION == this.mode) {
+    if (Lucene90DocValuesFormat.Mode.BEST_COMPRESSION == this.mode) {
       this.termsDictBuffer = new byte[1 << 14];
     }
     boolean success = false;
@@ -93,7 +93,7 @@ final class Lucene80DocValuesConsumer extends DocValuesConsumer implements Close
       CodecUtil.writeIndexHeader(
           data,
           dataCodec,
-          Lucene80DocValuesFormat.VERSION_CURRENT,
+          Lucene90DocValuesFormat.VERSION_CURRENT,
           state.segmentInfo.getId(),
           state.segmentSuffix);
       String metaName =
@@ -103,7 +103,7 @@ final class Lucene80DocValuesConsumer extends DocValuesConsumer implements Close
       CodecUtil.writeIndexHeader(
           meta,
           metaCodec,
-          Lucene80DocValuesFormat.VERSION_CURRENT,
+          Lucene90DocValuesFormat.VERSION_CURRENT,
           state.segmentInfo.getId(),
           state.segmentSuffix);
       maxDoc = state.segmentInfo.maxDoc();
@@ -141,7 +141,7 @@ final class Lucene80DocValuesConsumer extends DocValuesConsumer implements Close
   public void addNumericField(FieldInfo field, DocValuesProducer valuesProducer)
       throws IOException {
     meta.writeInt(field.number);
-    meta.writeByte(Lucene80DocValuesFormat.NUMERIC);
+    meta.writeByte(Lucene90DocValuesFormat.NUMERIC);
 
     writeValues(
         field,
@@ -407,7 +407,7 @@ final class Lucene80DocValuesConsumer extends DocValuesConsumer implements Close
     int uncompressedBlockLength = 0;
     int maxUncompressedBlockLength = 0;
     int numDocsInCurrentBlock = 0;
-    final int[] docLengths = new int[Lucene80DocValuesFormat.BINARY_DOCS_PER_COMPRESSED_BLOCK];
+    final int[] docLengths = new int[Lucene90DocValuesFormat.BINARY_DOCS_PER_COMPRESSED_BLOCK];
     byte[] block = BytesRef.EMPTY_BYTES;
     int totalChunks = 0;
     long maxPointer = 0;
@@ -423,8 +423,8 @@ final class Lucene80DocValuesConsumer extends DocValuesConsumer implements Close
       try {
         CodecUtil.writeHeader(
             tempBinaryOffsets,
-            Lucene80DocValuesFormat.META_CODEC + "FilePointers",
-            Lucene80DocValuesFormat.VERSION_CURRENT);
+            Lucene90DocValuesFormat.META_CODEC + "FilePointers",
+            Lucene90DocValuesFormat.VERSION_CURRENT);
         blockAddressesStart = data.getFilePointer();
         success = true;
       } finally {
@@ -440,7 +440,7 @@ final class Lucene80DocValuesConsumer extends DocValuesConsumer implements Close
       System.arraycopy(v.bytes, v.offset, block, uncompressedBlockLength, v.length);
       uncompressedBlockLength += v.length;
       numDocsInCurrentBlock++;
-      if (numDocsInCurrentBlock == Lucene80DocValuesFormat.BINARY_DOCS_PER_COMPRESSED_BLOCK) {
+      if (numDocsInCurrentBlock == Lucene90DocValuesFormat.BINARY_DOCS_PER_COMPRESSED_BLOCK) {
         flushData();
       }
     }
@@ -453,7 +453,7 @@ final class Lucene80DocValuesConsumer extends DocValuesConsumer implements Close
 
         // Optimisation - check if all lengths are same
         boolean allLengthsSame = true;
-        for (int i = 1; i < Lucene80DocValuesFormat.BINARY_DOCS_PER_COMPRESSED_BLOCK; i++) {
+        for (int i = 1; i < Lucene90DocValuesFormat.BINARY_DOCS_PER_COMPRESSED_BLOCK; i++) {
           if (docLengths[i] != docLengths[i - 1]) {
             allLengthsSame = false;
             break;
@@ -464,7 +464,7 @@ final class Lucene80DocValuesConsumer extends DocValuesConsumer implements Close
           int onlyOneLength = (docLengths[0] << 1) | 1;
           data.writeVInt(onlyOneLength);
         } else {
-          for (int i = 0; i < Lucene80DocValuesFormat.BINARY_DOCS_PER_COMPRESSED_BLOCK; i++) {
+          for (int i = 0; i < Lucene90DocValuesFormat.BINARY_DOCS_PER_COMPRESSED_BLOCK; i++) {
             if (i == 0) {
               // Write first value shifted and steal a bit to indicate other lengths are to follow
               int multipleLengths = (docLengths[0] << 1);
@@ -494,7 +494,7 @@ final class Lucene80DocValuesConsumer extends DocValuesConsumer implements Close
       meta.writeLong(startDMW);
 
       meta.writeVInt(totalChunks);
-      meta.writeVInt(Lucene80DocValuesFormat.BINARY_BLOCK_SHIFT);
+      meta.writeVInt(Lucene90DocValuesFormat.BINARY_BLOCK_SHIFT);
       meta.writeVInt(maxUncompressedBlockLength);
       meta.writeVInt(DIRECT_MONOTONIC_BLOCK_SHIFT);
 
@@ -505,9 +505,9 @@ final class Lucene80DocValuesConsumer extends DocValuesConsumer implements Close
           state.directory.openChecksumInput(tempBinaryOffsets.getName(), IOContext.READONCE)) {
         CodecUtil.checkHeader(
             filePointersIn,
-            Lucene80DocValuesFormat.META_CODEC + "FilePointers",
-            Lucene80DocValuesFormat.VERSION_CURRENT,
-            Lucene80DocValuesFormat.VERSION_CURRENT);
+            Lucene90DocValuesFormat.META_CODEC + "FilePointers",
+            Lucene90DocValuesFormat.VERSION_CURRENT,
+            Lucene90DocValuesFormat.VERSION_CURRENT);
         Throwable priorE = null;
         try {
           final DirectMonotonicWriter filePointers =
@@ -545,9 +545,9 @@ final class Lucene80DocValuesConsumer extends DocValuesConsumer implements Close
 
   @Override
   public void addBinaryField(FieldInfo field, DocValuesProducer valuesProducer) throws IOException {
-    field.putAttribute(Lucene80DocValuesFormat.MODE_KEY, mode.name());
+    field.putAttribute(Lucene90DocValuesFormat.MODE_KEY, mode.name());
     meta.writeInt(field.number);
-    meta.writeByte(Lucene80DocValuesFormat.BINARY);
+    meta.writeByte(Lucene90DocValuesFormat.BINARY);
 
     switch (mode) {
       case BEST_SPEED:
@@ -682,7 +682,7 @@ final class Lucene80DocValuesConsumer extends DocValuesConsumer implements Close
   @Override
   public void addSortedField(FieldInfo field, DocValuesProducer valuesProducer) throws IOException {
     meta.writeInt(field.number);
-    meta.writeByte(Lucene80DocValuesFormat.SORTED);
+    meta.writeByte(Lucene90DocValuesFormat.SORTED);
     doAddSortedField(field, valuesProducer);
   }
 
@@ -743,17 +743,17 @@ final class Lucene80DocValuesConsumer extends DocValuesConsumer implements Close
     final long size = values.getValueCount();
     meta.writeVLong(size);
     boolean compress =
-        Lucene80DocValuesFormat.Mode.BEST_COMPRESSION == mode
+        Lucene90DocValuesFormat.Mode.BEST_COMPRESSION == mode
             && values.getValueCount()
-                > Lucene80DocValuesFormat.TERMS_DICT_BLOCK_COMPRESSION_THRESHOLD;
+                > Lucene90DocValuesFormat.TERMS_DICT_BLOCK_COMPRESSION_THRESHOLD;
     int code, blockMask, shift;
     if (compress) {
-      code = Lucene80DocValuesFormat.TERMS_DICT_BLOCK_LZ4_CODE;
-      blockMask = Lucene80DocValuesFormat.TERMS_DICT_BLOCK_LZ4_MASK;
-      shift = Lucene80DocValuesFormat.TERMS_DICT_BLOCK_LZ4_SHIFT;
+      code = Lucene90DocValuesFormat.TERMS_DICT_BLOCK_LZ4_CODE;
+      blockMask = Lucene90DocValuesFormat.TERMS_DICT_BLOCK_LZ4_MASK;
+      shift = Lucene90DocValuesFormat.TERMS_DICT_BLOCK_LZ4_SHIFT;
     } else {
-      code = shift = Lucene80DocValuesFormat.TERMS_DICT_BLOCK_SHIFT;
-      blockMask = Lucene80DocValuesFormat.TERMS_DICT_BLOCK_MASK;
+      code = shift = Lucene90DocValuesFormat.TERMS_DICT_BLOCK_SHIFT;
+      blockMask = Lucene90DocValuesFormat.TERMS_DICT_BLOCK_MASK;
     }
 
     meta.writeInt(code);
@@ -862,13 +862,13 @@ final class Lucene80DocValuesConsumer extends DocValuesConsumer implements Close
 
   private void writeTermsIndex(SortedSetDocValues values) throws IOException {
     final long size = values.getValueCount();
-    meta.writeInt(Lucene80DocValuesFormat.TERMS_DICT_REVERSE_INDEX_SHIFT);
+    meta.writeInt(Lucene90DocValuesFormat.TERMS_DICT_REVERSE_INDEX_SHIFT);
     long start = data.getFilePointer();
 
     long numBlocks =
         1L
-            + ((size + Lucene80DocValuesFormat.TERMS_DICT_REVERSE_INDEX_MASK)
-                >>> Lucene80DocValuesFormat.TERMS_DICT_REVERSE_INDEX_SHIFT);
+            + ((size + Lucene90DocValuesFormat.TERMS_DICT_REVERSE_INDEX_MASK)
+                >>> Lucene90DocValuesFormat.TERMS_DICT_REVERSE_INDEX_SHIFT);
     ByteBuffersDataOutput addressBuffer = new ByteBuffersDataOutput();
     DirectMonotonicWriter writer;
     try (ByteBuffersIndexOutput addressOutput =
@@ -881,7 +881,7 @@ final class Lucene80DocValuesConsumer extends DocValuesConsumer implements Close
       long offset = 0;
       long ord = 0;
       for (BytesRef term = iterator.next(); term != null; term = iterator.next()) {
-        if ((ord & Lucene80DocValuesFormat.TERMS_DICT_REVERSE_INDEX_MASK) == 0) {
+        if ((ord & Lucene90DocValuesFormat.TERMS_DICT_REVERSE_INDEX_MASK) == 0) {
           writer.add(offset);
           final int sortKeyLength;
           if (ord == 0) {
@@ -892,8 +892,8 @@ final class Lucene80DocValuesConsumer extends DocValuesConsumer implements Close
           }
           offset += sortKeyLength;
           data.writeBytes(term.bytes, term.offset, sortKeyLength);
-        } else if ((ord & Lucene80DocValuesFormat.TERMS_DICT_REVERSE_INDEX_MASK)
-            == Lucene80DocValuesFormat.TERMS_DICT_REVERSE_INDEX_MASK) {
+        } else if ((ord & Lucene90DocValuesFormat.TERMS_DICT_REVERSE_INDEX_MASK)
+            == Lucene90DocValuesFormat.TERMS_DICT_REVERSE_INDEX_MASK) {
           previous.copyBytes(term);
         }
         ++ord;
@@ -913,7 +913,7 @@ final class Lucene80DocValuesConsumer extends DocValuesConsumer implements Close
   public void addSortedNumericField(FieldInfo field, DocValuesProducer valuesProducer)
       throws IOException {
     meta.writeInt(field.number);
-    meta.writeByte(Lucene80DocValuesFormat.SORTED_NUMERIC);
+    meta.writeByte(Lucene90DocValuesFormat.SORTED_NUMERIC);
 
     long[] stats = writeValues(field, valuesProducer);
     int numDocsWithField = Math.toIntExact(stats[0]);
@@ -947,7 +947,7 @@ final class Lucene80DocValuesConsumer extends DocValuesConsumer implements Close
   public void addSortedSetField(FieldInfo field, DocValuesProducer valuesProducer)
       throws IOException {
     meta.writeInt(field.number);
-    meta.writeByte(Lucene80DocValuesFormat.SORTED_SET);
+    meta.writeByte(Lucene90DocValuesFormat.SORTED_SET);
 
     SortedSetDocValues values = valuesProducer.getSortedSet(field);
     int numDocsWithField = 0;
diff --git a/lucene/core/src/java/org/apache/lucene/codecs/lucene80/Lucene80DocValuesFormat.java b/lucene/core/src/java/org/apache/lucene/codecs/lucene90/Lucene90DocValuesFormat.java
similarity index 93%
rename from lucene/core/src/java/org/apache/lucene/codecs/lucene80/Lucene80DocValuesFormat.java
rename to lucene/core/src/java/org/apache/lucene/codecs/lucene90/Lucene90DocValuesFormat.java
index c8d59cc..51db858 100644
--- a/lucene/core/src/java/org/apache/lucene/codecs/lucene80/Lucene80DocValuesFormat.java
+++ b/lucene/core/src/java/org/apache/lucene/codecs/lucene90/Lucene90DocValuesFormat.java
@@ -14,7 +14,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.apache.lucene.codecs.lucene80;
+package org.apache.lucene.codecs.lucene90;
 
 import java.io.IOException;
 import java.util.Objects;
@@ -30,7 +30,7 @@ import org.apache.lucene.util.SmallFloat;
 import org.apache.lucene.util.packed.DirectWriter;
 
 /**
- * Lucene 8.0 DocValues format.
+ * Lucene 9.0 DocValues format.
  *
  * <p>Documents that have a value for the field are encoded in a way that it is always possible to
  * know the ordinal of the current document in the set of documents that have a value. For instance,
@@ -137,7 +137,7 @@ import org.apache.lucene.util.packed.DirectWriter;
  *
  * @lucene.experimental
  */
-public final class Lucene80DocValuesFormat extends DocValuesFormat {
+public final class Lucene90DocValuesFormat extends DocValuesFormat {
 
   /** Configuration option for doc values. */
   public static enum Mode {
@@ -148,41 +148,39 @@ public final class Lucene80DocValuesFormat extends DocValuesFormat {
   }
 
   /** Attribute key for compression mode. */
-  public static final String MODE_KEY = Lucene80DocValuesFormat.class.getSimpleName() + ".mode";
+  public static final String MODE_KEY = Lucene90DocValuesFormat.class.getSimpleName() + ".mode";
 
   private final Mode mode;
 
   /** Default constructor. */
-  public Lucene80DocValuesFormat() {
+  public Lucene90DocValuesFormat() {
     this(Mode.BEST_SPEED);
   }
 
   /** Constructor */
-  public Lucene80DocValuesFormat(Mode mode) {
-    super("Lucene80");
+  public Lucene90DocValuesFormat(Mode mode) {
+    super("Lucene90");
     this.mode = Objects.requireNonNull(mode);
   }
 
   @Override
   public DocValuesConsumer fieldsConsumer(SegmentWriteState state) throws IOException {
-    return new Lucene80DocValuesConsumer(
+    return new Lucene90DocValuesConsumer(
         state, DATA_CODEC, DATA_EXTENSION, META_CODEC, META_EXTENSION, mode);
   }
 
   @Override
   public DocValuesProducer fieldsProducer(SegmentReadState state) throws IOException {
-    return new Lucene80DocValuesProducer(
+    return new Lucene90DocValuesProducer(
         state, DATA_CODEC, DATA_EXTENSION, META_CODEC, META_EXTENSION);
   }
 
-  static final String DATA_CODEC = "Lucene80DocValuesData";
+  static final String DATA_CODEC = "Lucene90DocValuesData";
   static final String DATA_EXTENSION = "dvd";
-  static final String META_CODEC = "Lucene80DocValuesMetadata";
+  static final String META_CODEC = "Lucene90DocValuesMetadata";
   static final String META_EXTENSION = "dvm";
   static final int VERSION_START = 0;
-  static final int VERSION_BIN_COMPRESSED = 1;
-  static final int VERSION_CONFIGURABLE_COMPRESSION = 2;
-  static final int VERSION_CURRENT = VERSION_CONFIGURABLE_COMPRESSION;
+  static final int VERSION_CURRENT = VERSION_START;
 
   // indicates docvalues type
   static final byte NUMERIC = 0;
diff --git a/lucene/core/src/java/org/apache/lucene/codecs/lucene80/Lucene80DocValuesProducer.java b/lucene/core/src/java/org/apache/lucene/codecs/lucene90/Lucene90DocValuesProducer.java
similarity index 97%
rename from lucene/core/src/java/org/apache/lucene/codecs/lucene80/Lucene80DocValuesProducer.java
rename to lucene/core/src/java/org/apache/lucene/codecs/lucene90/Lucene90DocValuesProducer.java
index 5813435..0a2bb13 100644
--- a/lucene/core/src/java/org/apache/lucene/codecs/lucene80/Lucene80DocValuesProducer.java
+++ b/lucene/core/src/java/org/apache/lucene/codecs/lucene90/Lucene90DocValuesProducer.java
@@ -14,7 +14,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.apache.lucene.codecs.lucene80;
+package org.apache.lucene.codecs.lucene90;
 
 import java.io.Closeable;
 import java.io.IOException;
@@ -51,8 +51,8 @@ import org.apache.lucene.util.compress.LZ4;
 import org.apache.lucene.util.packed.DirectMonotonicReader;
 import org.apache.lucene.util.packed.DirectReader;
 
-/** reader for {@link Lucene80DocValuesFormat} */
-final class Lucene80DocValuesProducer extends DocValuesProducer implements Closeable {
+/** reader for {@link Lucene90DocValuesFormat} */
+final class Lucene90DocValuesProducer extends DocValuesProducer implements Closeable {
   private final Map<String, NumericEntry> numerics = new HashMap<>();
   private final Map<String, BinaryEntry> binaries = new HashMap<>();
   private final Map<String, SortedEntry> sorted = new HashMap<>();
@@ -64,7 +64,7 @@ final class Lucene80DocValuesProducer extends DocValuesProducer implements Close
   private int version = -1;
 
   /** expert: instantiates a new reader */
-  Lucene80DocValuesProducer(
+  Lucene90DocValuesProducer(
       SegmentReadState state,
       String dataCodec,
       String dataExtension,
@@ -85,8 +85,8 @@ final class Lucene80DocValuesProducer extends DocValuesProducer implements Close
             CodecUtil.checkIndexHeader(
                 in,
                 metaCodec,
-                Lucene80DocValuesFormat.VERSION_START,
-                Lucene80DocValuesFormat.VERSION_CURRENT,
+                Lucene90DocValuesFormat.VERSION_START,
+                Lucene90DocValuesFormat.VERSION_CURRENT,
                 state.segmentInfo.getId(),
                 state.segmentSuffix);
 
@@ -108,8 +108,8 @@ final class Lucene80DocValuesProducer extends DocValuesProducer implements Close
           CodecUtil.checkIndexHeader(
               data,
               dataCodec,
-              Lucene80DocValuesFormat.VERSION_START,
-              Lucene80DocValuesFormat.VERSION_CURRENT,
+              Lucene90DocValuesFormat.VERSION_START,
+              Lucene90DocValuesFormat.VERSION_CURRENT,
               state.segmentInfo.getId(),
               state.segmentSuffix);
       if (version != version2) {
@@ -139,32 +139,27 @@ final class Lucene80DocValuesProducer extends DocValuesProducer implements Close
         throw new CorruptIndexException("Invalid field number: " + fieldNumber, meta);
       }
       byte type = meta.readByte();
-      if (type == Lucene80DocValuesFormat.NUMERIC) {
+      if (type == Lucene90DocValuesFormat.NUMERIC) {
         numerics.put(info.name, readNumeric(meta));
-      } else if (type == Lucene80DocValuesFormat.BINARY) {
-        final boolean compressed;
-        if (version >= Lucene80DocValuesFormat.VERSION_CONFIGURABLE_COMPRESSION) {
-          String value = info.getAttribute(Lucene80DocValuesFormat.MODE_KEY);
-          if (value == null) {
-            throw new IllegalStateException(
-                "missing value for "
-                    + Lucene80DocValuesFormat.MODE_KEY
-                    + " for field: "
-                    + info.name
-                    + " in segment: "
-                    + segmentName);
-          }
-          Lucene80DocValuesFormat.Mode mode = Lucene80DocValuesFormat.Mode.valueOf(value);
-          compressed = mode == Lucene80DocValuesFormat.Mode.BEST_COMPRESSION;
-        } else {
-          compressed = version >= Lucene80DocValuesFormat.VERSION_BIN_COMPRESSED;
+      } else if (type == Lucene90DocValuesFormat.BINARY) {
+        String value = info.getAttribute(Lucene90DocValuesFormat.MODE_KEY);
+        if (value == null) {
+          throw new IllegalStateException(
+              "missing value for "
+                  + Lucene90DocValuesFormat.MODE_KEY
+                  + " for field: "
+                  + info.name
+                  + " in segment: "
+                  + segmentName);
         }
+        Lucene90DocValuesFormat.Mode mode = Lucene90DocValuesFormat.Mode.valueOf(value);
+        final boolean compressed = mode == Lucene90DocValuesFormat.Mode.BEST_COMPRESSION;
         binaries.put(info.name, readBinary(meta, compressed));
-      } else if (type == Lucene80DocValuesFormat.SORTED) {
+      } else if (type == Lucene90DocValuesFormat.SORTED) {
         sorted.put(info.name, readSorted(meta));
-      } else if (type == Lucene80DocValuesFormat.SORTED_SET) {
+      } else if (type == Lucene90DocValuesFormat.SORTED_SET) {
         sortedSets.put(info.name, readSortedSet(meta));
-      } else if (type == Lucene80DocValuesFormat.SORTED_NUMERIC) {
+      } else if (type == Lucene90DocValuesFormat.SORTED_NUMERIC) {
         sortedNumerics.put(info.name, readSortedNumeric(meta));
       } else {
         throw new CorruptIndexException("invalid type: " + type, meta);
@@ -288,10 +283,10 @@ final class Lucene80DocValuesProducer extends DocValuesProducer implements Close
   private static void readTermDict(IndexInput meta, TermsDictEntry entry) throws IOException {
     entry.termsDictSize = meta.readVLong();
     int termsDictBlockCode = meta.readInt();
-    if (Lucene80DocValuesFormat.TERMS_DICT_BLOCK_LZ4_CODE == termsDictBlockCode) {
+    if (Lucene90DocValuesFormat.TERMS_DICT_BLOCK_LZ4_CODE == termsDictBlockCode) {
       // This is a LZ4 compressed block.
       entry.compressed = true;
-      entry.termsDictBlockShift = Lucene80DocValuesFormat.TERMS_DICT_BLOCK_LZ4_SHIFT;
+      entry.termsDictBlockShift = Lucene90DocValuesFormat.TERMS_DICT_BLOCK_LZ4_SHIFT;
     } else {
       entry.termsDictBlockShift = termsDictBlockCode;
     }
diff --git a/lucene/core/src/java/org/apache/lucene/codecs/lucene80/Lucene80NormsConsumer.java b/lucene/core/src/java/org/apache/lucene/codecs/lucene90/Lucene90NormsConsumer.java
similarity index 96%
rename from lucene/core/src/java/org/apache/lucene/codecs/lucene80/Lucene80NormsConsumer.java
rename to lucene/core/src/java/org/apache/lucene/codecs/lucene90/Lucene90NormsConsumer.java
index 72a898b..5157cab 100644
--- a/lucene/core/src/java/org/apache/lucene/codecs/lucene80/Lucene80NormsConsumer.java
+++ b/lucene/core/src/java/org/apache/lucene/codecs/lucene90/Lucene90NormsConsumer.java
@@ -14,9 +14,9 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.apache.lucene.codecs.lucene80;
+package org.apache.lucene.codecs.lucene90;
 
-import static org.apache.lucene.codecs.lucene80.Lucene80NormsFormat.VERSION_CURRENT;
+import static org.apache.lucene.codecs.lucene90.Lucene90NormsFormat.VERSION_CURRENT;
 
 import java.io.IOException;
 import org.apache.lucene.codecs.CodecUtil;
@@ -30,12 +30,12 @@ import org.apache.lucene.search.DocIdSetIterator;
 import org.apache.lucene.store.IndexOutput;
 import org.apache.lucene.util.IOUtils;
 
-/** Writer for {@link Lucene80NormsFormat} */
-final class Lucene80NormsConsumer extends NormsConsumer {
+/** Writer for {@link Lucene90NormsFormat} */
+final class Lucene90NormsConsumer extends NormsConsumer {
   IndexOutput data, meta;
   final int maxDoc;
 
-  Lucene80NormsConsumer(
+  Lucene90NormsConsumer(
       SegmentWriteState state,
       String dataCodec,
       String dataExtension,
diff --git a/lucene/core/src/java/org/apache/lucene/codecs/lucene80/Lucene80NormsFormat.java b/lucene/core/src/java/org/apache/lucene/codecs/lucene90/Lucene90NormsFormat.java
similarity index 92%
rename from lucene/core/src/java/org/apache/lucene/codecs/lucene80/Lucene80NormsFormat.java
rename to lucene/core/src/java/org/apache/lucene/codecs/lucene90/Lucene90NormsFormat.java
index 1820581..b0d60c2 100644
--- a/lucene/core/src/java/org/apache/lucene/codecs/lucene80/Lucene80NormsFormat.java
+++ b/lucene/core/src/java/org/apache/lucene/codecs/lucene90/Lucene90NormsFormat.java
@@ -14,7 +14,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.apache.lucene.codecs.lucene80;
+package org.apache.lucene.codecs.lucene90;
 
 import java.io.IOException;
 import org.apache.lucene.codecs.CodecUtil;
@@ -26,7 +26,7 @@ import org.apache.lucene.index.SegmentWriteState;
 import org.apache.lucene.store.DataOutput;
 
 /**
- * Lucene 8.0 Score normalization format.
+ * Lucene 9.0 Score normalization format.
  *
  * <p>Encodes normalization values by encoding each value with the minimum number of bytes needed to
  * represent the range (which can be zero).
@@ -80,26 +80,26 @@ import org.apache.lucene.store.DataOutput;
  *
  * @lucene.experimental
  */
-public class Lucene80NormsFormat extends NormsFormat {
+public class Lucene90NormsFormat extends NormsFormat {
 
   /** Sole Constructor */
-  public Lucene80NormsFormat() {}
+  public Lucene90NormsFormat() {}
 
   @Override
   public NormsConsumer normsConsumer(SegmentWriteState state) throws IOException {
-    return new Lucene80NormsConsumer(
+    return new Lucene90NormsConsumer(
         state, DATA_CODEC, DATA_EXTENSION, METADATA_CODEC, METADATA_EXTENSION);
   }
 
   @Override
   public NormsProducer normsProducer(SegmentReadState state) throws IOException {
-    return new Lucene80NormsProducer(
+    return new Lucene90NormsProducer(
         state, DATA_CODEC, DATA_EXTENSION, METADATA_CODEC, METADATA_EXTENSION);
   }
 
-  private static final String DATA_CODEC = "Lucene80NormsData";
+  private static final String DATA_CODEC = "Lucene90NormsData";
   private static final String DATA_EXTENSION = "nvd";
-  private static final String METADATA_CODEC = "Lucene80NormsMetadata";
+  private static final String METADATA_CODEC = "Lucene90NormsMetadata";
   private static final String METADATA_EXTENSION = "nvm";
   static final int VERSION_START = 0;
   static final int VERSION_CURRENT = VERSION_START;
diff --git a/lucene/core/src/java/org/apache/lucene/codecs/lucene80/Lucene80NormsProducer.java b/lucene/core/src/java/org/apache/lucene/codecs/lucene90/Lucene90NormsProducer.java
similarity index 97%
rename from lucene/core/src/java/org/apache/lucene/codecs/lucene80/Lucene80NormsProducer.java
rename to lucene/core/src/java/org/apache/lucene/codecs/lucene90/Lucene90NormsProducer.java
index ab26cda..fdeb0a7 100644
--- a/lucene/core/src/java/org/apache/lucene/codecs/lucene80/Lucene80NormsProducer.java
+++ b/lucene/core/src/java/org/apache/lucene/codecs/lucene90/Lucene90NormsProducer.java
@@ -14,10 +14,10 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.apache.lucene.codecs.lucene80;
+package org.apache.lucene.codecs.lucene90;
 
-import static org.apache.lucene.codecs.lucene80.Lucene80NormsFormat.VERSION_CURRENT;
-import static org.apache.lucene.codecs.lucene80.Lucene80NormsFormat.VERSION_START;
+import static org.apache.lucene.codecs.lucene90.Lucene90NormsFormat.VERSION_CURRENT;
+import static org.apache.lucene.codecs.lucene90.Lucene90NormsFormat.VERSION_START;
 
 import java.io.IOException;
 import java.util.HashMap;
@@ -36,8 +36,8 @@ import org.apache.lucene.store.IndexInput;
 import org.apache.lucene.store.RandomAccessInput;
 import org.apache.lucene.util.IOUtils;
 
-/** Reader for {@link Lucene80NormsFormat} */
-final class Lucene80NormsProducer extends NormsProducer implements Cloneable {
+/** Reader for {@link Lucene90NormsFormat} */
+final class Lucene90NormsProducer extends NormsProducer implements Cloneable {
   // metadata maps (just file pointers and minimal stuff)
   private final Map<Integer, NormsEntry> norms = new HashMap<>();
   private final int maxDoc;
@@ -47,7 +47,7 @@ final class Lucene80NormsProducer extends NormsProducer implements Cloneable {
   private Map<Integer, RandomAccessInput> disiJumpTables;
   private Map<Integer, RandomAccessInput> dataInputs;
 
-  Lucene80NormsProducer(
+  Lucene90NormsProducer(
       SegmentReadState state,
       String dataCodec,
       String dataExtension,
@@ -113,9 +113,9 @@ final class Lucene80NormsProducer extends NormsProducer implements Cloneable {
 
   @Override
   public NormsProducer getMergeInstance() {
-    Lucene80NormsProducer clone;
+    Lucene90NormsProducer clone;
     try {
-      clone = (Lucene80NormsProducer) super.clone();
+      clone = (Lucene90NormsProducer) super.clone();
     } catch (CloneNotSupportedException e) {
       // cannot happen
       throw new RuntimeException(e);
diff --git a/lucene/core/src/java/org/apache/lucene/codecs/lucene90/package-info.java b/lucene/core/src/java/org/apache/lucene/codecs/lucene90/package-info.java
index b615cf7..83a3912 100644
--- a/lucene/core/src/java/org/apache/lucene/codecs/lucene90/package-info.java
+++ b/lucene/core/src/java/org/apache/lucene/codecs/lucene90/package-info.java
@@ -162,14 +162,14 @@
  *   <li>{@link org.apache.lucene.codecs.lucene90.Lucene90PostingsFormat Term Proximity data}. For
  *       each term in the dictionary, the positions that the term occurs in each document. Note that
  *       this will not exist if all fields in all documents omit position data.
- *   <li>{@link org.apache.lucene.codecs.lucene80.Lucene80NormsFormat Normalization factors}. For
+ *   <li>{@link org.apache.lucene.codecs.lucene90.Lucene90NormsFormat Normalization factors}. For
  *       each field in each document, a value is stored that is multiplied into the score for hits
  *       on that field.
  *   <li>{@link org.apache.lucene.codecs.lucene50.Lucene50TermVectorsFormat Term Vectors}. For each
  *       field in each document, the term vector (sometimes called document vector) may be stored. A
  *       term vector consists of term text and term frequency. To add Term Vectors to your index see
  *       the {@link org.apache.lucene.document.Field Field} constructors
- *   <li>{@link org.apache.lucene.codecs.lucene80.Lucene80DocValuesFormat Per-document values}. Like
+ *   <li>{@link org.apache.lucene.codecs.lucene90.Lucene90DocValuesFormat Per-document values}. Like
  *       stored values, these are also keyed by document number, but are generally intended to be
  *       loaded into main memory for fast access. Whereas stored values are generally intended for
  *       summary results from searches, per-document values are useful for things like scoring
@@ -280,12 +280,12 @@
  * <td>Stores additional per-position metadata information such as character offsets and user payloads</td>
  * </tr>
  * <tr>
- * <td>{@link org.apache.lucene.codecs.lucene80.Lucene80NormsFormat Norms}</td>
+ * <td>{@link org.apache.lucene.codecs.lucene90.Lucene90NormsFormat Norms}</td>
  * <td>.nvd, .nvm</td>
  * <td>Encodes length and boost factors for docs and fields</td>
  * </tr>
  * <tr>
- * <td>{@link org.apache.lucene.codecs.lucene80.Lucene80DocValuesFormat Per-Document Values}</td>
+ * <td>{@link org.apache.lucene.codecs.lucene90.Lucene90DocValuesFormat Per-Document Values}</td>
  * <td>.dvd, .dvm</td>
  * <td>Encodes additional scoring factors or other per-document information.</td>
  * </tr>
diff --git a/lucene/core/src/resources/META-INF/services/org.apache.lucene.codecs.DocValuesFormat b/lucene/core/src/resources/META-INF/services/org.apache.lucene.codecs.DocValuesFormat
index 43ed529..5ef3a99 100644
--- a/lucene/core/src/resources/META-INF/services/org.apache.lucene.codecs.DocValuesFormat
+++ b/lucene/core/src/resources/META-INF/services/org.apache.lucene.codecs.DocValuesFormat
@@ -13,4 +13,4 @@
 #  See the License for the specific language governing permissions and
 #  limitations under the License.
 
-org.apache.lucene.codecs.lucene80.Lucene80DocValuesFormat
+org.apache.lucene.codecs.lucene90.Lucene90DocValuesFormat
diff --git a/lucene/core/src/test/org/apache/lucene/codecs/lucene80/TestLucene80NormsFormat.java b/lucene/core/src/test/org/apache/lucene/codecs/lucene80/TestLucene90NormsFormat.java
similarity index 91%
rename from lucene/core/src/test/org/apache/lucene/codecs/lucene80/TestLucene80NormsFormat.java
rename to lucene/core/src/test/org/apache/lucene/codecs/lucene80/TestLucene90NormsFormat.java
index 36047f0..0b152d6 100644
--- a/lucene/core/src/test/org/apache/lucene/codecs/lucene80/TestLucene80NormsFormat.java
+++ b/lucene/core/src/test/org/apache/lucene/codecs/lucene80/TestLucene90NormsFormat.java
@@ -20,8 +20,8 @@ import org.apache.lucene.codecs.Codec;
 import org.apache.lucene.index.BaseNormsFormatTestCase;
 import org.apache.lucene.util.TestUtil;
 
-/** Tests Lucene80NormsFormat */
-public class TestLucene80NormsFormat extends BaseNormsFormatTestCase {
+/** Tests Lucene90NormsFormat */
+public class TestLucene90NormsFormat extends BaseNormsFormatTestCase {
   private final Codec codec = TestUtil.getDefaultCodec();
 
   @Override
diff --git a/lucene/core/src/test/org/apache/lucene/codecs/lucene80/TestLucene80NormsFormatMergeInstance.java b/lucene/core/src/test/org/apache/lucene/codecs/lucene80/TestLucene90NormsFormatMergeInstance.java
similarity index 86%
rename from lucene/core/src/test/org/apache/lucene/codecs/lucene80/TestLucene80NormsFormatMergeInstance.java
rename to lucene/core/src/test/org/apache/lucene/codecs/lucene80/TestLucene90NormsFormatMergeInstance.java
index d01d049..c9ba03f 100644
--- a/lucene/core/src/test/org/apache/lucene/codecs/lucene80/TestLucene80NormsFormatMergeInstance.java
+++ b/lucene/core/src/test/org/apache/lucene/codecs/lucene80/TestLucene90NormsFormatMergeInstance.java
@@ -16,8 +16,8 @@
  */
 package org.apache.lucene.codecs.lucene80;
 
-/** Test the merge instance of the Lucene80 norms format. */
-public class TestLucene80NormsFormatMergeInstance extends TestLucene80NormsFormat {
+/** Test the merge instance of the Lucene90 norms format. */
+public class TestLucene90NormsFormatMergeInstance extends TestLucene90NormsFormat {
 
   @Override
   protected boolean shouldTestMergeInstance() {
diff --git a/lucene/core/src/test/org/apache/lucene/codecs/lucene80/BaseLucene80DocValuesFormatTestCase.java b/lucene/core/src/test/org/apache/lucene/codecs/lucene90/BaseLucene90DocValuesFormatTestCase.java
similarity index 97%
rename from lucene/core/src/test/org/apache/lucene/codecs/lucene80/BaseLucene80DocValuesFormatTestCase.java
rename to lucene/core/src/test/org/apache/lucene/codecs/lucene90/BaseLucene90DocValuesFormatTestCase.java
index f1f9518..19bc542 100644
--- a/lucene/core/src/test/org/apache/lucene/codecs/lucene80/BaseLucene80DocValuesFormatTestCase.java
+++ b/lucene/core/src/test/org/apache/lucene/codecs/lucene90/BaseLucene90DocValuesFormatTestCase.java
@@ -14,7 +14,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.apache.lucene.codecs.lucene80;
+package org.apache.lucene.codecs.lucene90;
 
 import java.io.IOException;
 import java.util.ArrayList;
@@ -67,8 +67,8 @@ import org.apache.lucene.util.BytesRef;
 import org.apache.lucene.util.BytesRefBuilder;
 import org.apache.lucene.util.TestUtil;
 
-/** Tests Lucene80DocValuesFormat */
-public abstract class BaseLucene80DocValuesFormatTestCase
+/** Tests Lucene90DocValuesFormat */
+public abstract class BaseLucene90DocValuesFormatTestCase
     extends BaseCompressingDocValuesFormatTestCase {
 
   // TODO: these big methods can easily blow up some of the other ram-hungry codecs...
@@ -445,7 +445,7 @@ public abstract class BaseLucene80DocValuesFormatTestCase
 
   @Nightly
   public void testSortedSetAroundBlockSize() throws IOException {
-    final int frontier = 1 << Lucene80DocValuesFormat.DIRECT_MONOTONIC_BLOCK_SHIFT;
+    final int frontier = 1 << Lucene90DocValuesFormat.DIRECT_MONOTONIC_BLOCK_SHIFT;
     for (int maxDoc = frontier - 1; maxDoc <= frontier + 1; ++maxDoc) {
       final Directory dir = newDirectory();
       IndexWriter w =
@@ -499,7 +499,7 @@ public abstract class BaseLucene80DocValuesFormatTestCase
 
   @Nightly
   public void testSortedNumericAroundBlockSize() throws IOException {
-    final int frontier = 1 << Lucene80DocValuesFormat.DIRECT_MONOTONIC_BLOCK_SHIFT;
+    final int frontier = 1 << Lucene90DocValuesFormat.DIRECT_MONOTONIC_BLOCK_SHIFT;
     for (int maxDoc = frontier - 1; maxDoc <= frontier + 1; ++maxDoc) {
       final Directory dir = newDirectory();
       IndexWriter w =
@@ -613,12 +613,12 @@ public abstract class BaseLucene80DocValuesFormatTestCase
     final long mul = TestUtil.nextInt(random(), 1, 100);
     final long min = random().nextInt();
     return new LongSupplier() {
-      int i = Lucene80DocValuesFormat.NUMERIC_BLOCK_SIZE;
+      int i = Lucene90DocValuesFormat.NUMERIC_BLOCK_SIZE;
       int maxDelta;
 
       @Override
       public long getAsLong() {
-        if (i == Lucene80DocValuesFormat.NUMERIC_BLOCK_SIZE) {
+        if (i == Lucene90DocValuesFormat.NUMERIC_BLOCK_SIZE) {
           maxDelta = 1 << random().nextInt(5);
           i = 0;
         }
@@ -632,12 +632,12 @@ public abstract class BaseLucene80DocValuesFormatTestCase
       throws Exception {
     Directory dir = newDirectory();
     IndexWriterConfig conf = newIndexWriterConfig(new MockAnalyzer(random()));
-    conf.setMaxBufferedDocs(atLeast(Lucene80DocValuesFormat.NUMERIC_BLOCK_SIZE));
+    conf.setMaxBufferedDocs(atLeast(Lucene90DocValuesFormat.NUMERIC_BLOCK_SIZE));
     conf.setRAMBufferSizeMB(-1);
     conf.setMergePolicy(newLogMergePolicy(random().nextBoolean()));
     IndexWriter writer = new IndexWriter(dir, conf);
 
-    final int numDocs = atLeast(Lucene80DocValuesFormat.NUMERIC_BLOCK_SIZE * 3);
+    final int numDocs = atLeast(Lucene90DocValuesFormat.NUMERIC_BLOCK_SIZE * 3);
     final LongSupplier values = blocksOfVariousBPV();
     for (int i = 0; i < numDocs; i++) {
       Document doc = new Document();
@@ -691,7 +691,7 @@ public abstract class BaseLucene80DocValuesFormatTestCase
   private void doTestSparseNumericBlocksOfVariousBitsPerValue(double density) throws Exception {
     Directory dir = newDirectory();
     IndexWriterConfig conf = newIndexWriterConfig(new MockAnalyzer(random()));
-    conf.setMaxBufferedDocs(atLeast(Lucene80DocValuesFormat.NUMERIC_BLOCK_SIZE));
+    conf.setMaxBufferedDocs(atLeast(Lucene90DocValuesFormat.NUMERIC_BLOCK_SIZE));
     conf.setRAMBufferSizeMB(-1);
     conf.setMergePolicy(newLogMergePolicy(random().nextBoolean()));
     IndexWriter writer = new IndexWriter(dir, conf);
@@ -701,7 +701,7 @@ public abstract class BaseLucene80DocValuesFormatTestCase
     doc.add(storedField);
     doc.add(dvField);
 
-    final int numDocs = atLeast(Lucene80DocValuesFormat.NUMERIC_BLOCK_SIZE * 3);
+    final int numDocs = atLeast(Lucene90DocValuesFormat.NUMERIC_BLOCK_SIZE * 3);
     final LongSupplier longs = blocksOfVariousBPV();
     for (int i = 0; i < numDocs; i++) {
       if (random().nextDouble() > density) {
diff --git a/lucene/core/src/test/org/apache/lucene/codecs/lucene80/TestBestCompressionLucene80DocValuesFormat.java b/lucene/core/src/test/org/apache/lucene/codecs/lucene90/TestBestCompressionLucene90DocValuesFormat.java
similarity index 80%
rename from lucene/core/src/test/org/apache/lucene/codecs/lucene80/TestBestCompressionLucene80DocValuesFormat.java
rename to lucene/core/src/test/org/apache/lucene/codecs/lucene90/TestBestCompressionLucene90DocValuesFormat.java
index 1fafa55..8747701 100644
--- a/lucene/core/src/test/org/apache/lucene/codecs/lucene80/TestBestCompressionLucene80DocValuesFormat.java
+++ b/lucene/core/src/test/org/apache/lucene/codecs/lucene90/TestBestCompressionLucene90DocValuesFormat.java
@@ -14,17 +14,17 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.apache.lucene.codecs.lucene80;
+package org.apache.lucene.codecs.lucene90;
 
 import org.apache.lucene.codecs.Codec;
 import org.apache.lucene.util.TestUtil;
 
-/** Tests Lucene80DocValuesFormat */
-public class TestBestCompressionLucene80DocValuesFormat
-    extends BaseLucene80DocValuesFormatTestCase {
+/** Tests Lucene90DocValuesFormat */
+public class TestBestCompressionLucene90DocValuesFormat
+    extends BaseLucene90DocValuesFormatTestCase {
   private final Codec codec =
       TestUtil.alwaysDocValuesFormat(
-          new Lucene80DocValuesFormat(Lucene80DocValuesFormat.Mode.BEST_COMPRESSION));
+          new Lucene90DocValuesFormat(Lucene90DocValuesFormat.Mode.BEST_COMPRESSION));
 
   @Override
   protected Codec getCodec() {
diff --git a/lucene/core/src/test/org/apache/lucene/codecs/lucene80/TestBestSpeedLucene80DocValuesFormat.java b/lucene/core/src/test/org/apache/lucene/codecs/lucene90/TestBestSpeedLucene90DocValuesFormat.java
similarity index 81%
rename from lucene/core/src/test/org/apache/lucene/codecs/lucene80/TestBestSpeedLucene80DocValuesFormat.java
rename to lucene/core/src/test/org/apache/lucene/codecs/lucene90/TestBestSpeedLucene90DocValuesFormat.java
index 3027842..6303795 100644
--- a/lucene/core/src/test/org/apache/lucene/codecs/lucene80/TestBestSpeedLucene80DocValuesFormat.java
+++ b/lucene/core/src/test/org/apache/lucene/codecs/lucene90/TestBestSpeedLucene90DocValuesFormat.java
@@ -14,16 +14,16 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.apache.lucene.codecs.lucene80;
+package org.apache.lucene.codecs.lucene90;
 
 import org.apache.lucene.codecs.Codec;
 import org.apache.lucene.util.TestUtil;
 
-/** Tests Lucene80DocValuesFormat */
-public class TestBestSpeedLucene80DocValuesFormat extends BaseLucene80DocValuesFormatTestCase {
+/** Tests Lucene90DocValuesFormat */
+public class TestBestSpeedLucene90DocValuesFormat extends BaseLucene90DocValuesFormatTestCase {
   private final Codec codec =
       TestUtil.alwaysDocValuesFormat(
-          new Lucene80DocValuesFormat(Lucene80DocValuesFormat.Mode.BEST_SPEED));
+          new Lucene90DocValuesFormat(Lucene90DocValuesFormat.Mode.BEST_SPEED));
 
   @Override
   protected Codec getCodec() {
diff --git a/lucene/core/src/test/org/apache/lucene/codecs/lucene80/TestDocValuesCompression.java b/lucene/core/src/test/org/apache/lucene/codecs/lucene90/TestDocValuesCompression.java
similarity index 95%
rename from lucene/core/src/test/org/apache/lucene/codecs/lucene80/TestDocValuesCompression.java
rename to lucene/core/src/test/org/apache/lucene/codecs/lucene90/TestDocValuesCompression.java
index fb5b66a..8df5260 100644
--- a/lucene/core/src/test/org/apache/lucene/codecs/lucene80/TestDocValuesCompression.java
+++ b/lucene/core/src/test/org/apache/lucene/codecs/lucene90/TestDocValuesCompression.java
@@ -14,7 +14,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.apache.lucene.codecs.lucene80;
+package org.apache.lucene.codecs.lucene90;
 
 import java.io.IOException;
 import java.util.ArrayList;
@@ -25,7 +25,6 @@ import java.util.Set;
 import org.apache.lucene.analysis.Analyzer;
 import org.apache.lucene.analysis.standard.StandardAnalyzer;
 import org.apache.lucene.codecs.Codec;
-import org.apache.lucene.codecs.lucene90.Lucene90Codec;
 import org.apache.lucene.document.Document;
 import org.apache.lucene.document.Field;
 import org.apache.lucene.document.SortedDocValuesField;
@@ -47,7 +46,7 @@ public class TestDocValuesCompression extends LuceneTestCase {
   private final Codec bestCompression = new Lucene90Codec(Lucene90Codec.Mode.BEST_COMPRESSION);
 
   public void testTermsDictCompressionForLowCardinalityFields() throws IOException {
-    final int CARDINALITY = Lucene80DocValuesFormat.TERMS_DICT_BLOCK_COMPRESSION_THRESHOLD - 1;
+    final int CARDINALITY = Lucene90DocValuesFormat.TERMS_DICT_BLOCK_COMPRESSION_THRESHOLD - 1;
     Set<String> valuesSet = new HashSet<>();
     for (int i = 0; i < CARDINALITY; ++i) {
       final int length = TestUtil.nextInt(random(), 10, 30);
@@ -64,7 +63,7 @@ public class TestDocValuesCompression extends LuceneTestCase {
   }
 
   public void testTermsDictCompressionForHighCardinalityFields() throws IOException {
-    final int CARDINALITY = Lucene80DocValuesFormat.TERMS_DICT_BLOCK_COMPRESSION_THRESHOLD << 1;
+    final int CARDINALITY = Lucene90DocValuesFormat.TERMS_DICT_BLOCK_COMPRESSION_THRESHOLD << 1;
     Set<String> valuesSet = new HashSet<>();
     for (int i = 0; i < CARDINALITY; ++i) {
       final int length = TestUtil.nextInt(random(), 10, 30);
@@ -82,7 +81,7 @@ public class TestDocValuesCompression extends LuceneTestCase {
   }
 
   public void testReseekAfterSkipDecompression() throws IOException {
-    final int CARDINALITY = (Lucene80DocValuesFormat.TERMS_DICT_BLOCK_LZ4_SIZE << 1) + 11;
+    final int CARDINALITY = (Lucene90DocValuesFormat.TERMS_DICT_BLOCK_LZ4_SIZE << 1) + 11;
     Set<String> valueSet = new HashSet<>(CARDINALITY);
     for (int i = 0; i < CARDINALITY; i++) {
       valueSet.add(TestUtil.randomSimpleString(random(), 64));
@@ -91,7 +90,7 @@ public class TestDocValuesCompression extends LuceneTestCase {
     Collections.sort(values);
     // Create one non-existent value just between block-1 and block-2.
     String nonexistentValue =
-        values.get(Lucene80DocValuesFormat.TERMS_DICT_BLOCK_LZ4_SIZE - 1)
+        values.get(Lucene90DocValuesFormat.TERMS_DICT_BLOCK_LZ4_SIZE - 1)
             + TestUtil.randomSimpleString(random(), 64, 128);
     int docValues = values.size();
 
@@ -130,7 +129,7 @@ public class TestDocValuesCompression extends LuceneTestCase {
   }
 
   public void testLargeTermsCompression() throws IOException {
-    final int CARDINALITY = Lucene80DocValuesFormat.TERMS_DICT_BLOCK_COMPRESSION_THRESHOLD << 1;
+    final int CARDINALITY = Lucene90DocValuesFormat.TERMS_DICT_BLOCK_COMPRESSION_THRESHOLD << 1;
     Set<String> valuesSet = new HashSet<>();
     for (int i = 0; i < CARDINALITY; ++i) {
       final int length = TestUtil.nextInt(random(), 512, 1024);
@@ -166,7 +165,7 @@ public class TestDocValuesCompression extends LuceneTestCase {
 
   // Ensure the old segment can be merged together with the new compressed segment.
   public void testMergeWithUncompressedSegment() throws IOException {
-    final int CARDINALITY = Lucene80DocValuesFormat.TERMS_DICT_BLOCK_COMPRESSION_THRESHOLD << 1;
+    final int CARDINALITY = Lucene90DocValuesFormat.TERMS_DICT_BLOCK_COMPRESSION_THRESHOLD << 1;
     Set<String> valuesSet = new HashSet<>();
     for (int i = 0; i < CARDINALITY; ++i) {
       final int length = TestUtil.nextInt(random(), 10, 30);
@@ -305,7 +304,7 @@ public class TestDocValuesCompression extends LuceneTestCase {
 
   static long docValueFileSize(Directory d) throws IOException {
     for (String file : d.listAll()) {
-      if (file.endsWith(Lucene80DocValuesFormat.DATA_EXTENSION)) {
+      if (file.endsWith(Lucene90DocValuesFormat.DATA_EXTENSION)) {
         return d.fileLength(file);
       }
     }
diff --git a/lucene/core/src/test/org/apache/lucene/codecs/lucene80/TestIndexedDISI.java b/lucene/core/src/test/org/apache/lucene/codecs/lucene90/TestIndexedDISI.java
similarity index 99%
rename from lucene/core/src/test/org/apache/lucene/codecs/lucene80/TestIndexedDISI.java
rename to lucene/core/src/test/org/apache/lucene/codecs/lucene90/TestIndexedDISI.java
index cd613db..97f22bd 100644
--- a/lucene/core/src/test/org/apache/lucene/codecs/lucene80/TestIndexedDISI.java
+++ b/lucene/core/src/test/org/apache/lucene/codecs/lucene90/TestIndexedDISI.java
@@ -14,7 +14,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.apache.lucene.codecs.lucene80;
+package org.apache.lucene.codecs.lucene90;
 
 import java.io.IOException;
 import java.util.Random;
diff --git a/lucene/test-framework/src/java/org/apache/lucene/index/RandomCodec.java b/lucene/test-framework/src/java/org/apache/lucene/index/RandomCodec.java
index 171384a..2ecfe45 100644
--- a/lucene/test-framework/src/java/org/apache/lucene/index/RandomCodec.java
+++ b/lucene/test-framework/src/java/org/apache/lucene/index/RandomCodec.java
@@ -39,9 +39,9 @@ import org.apache.lucene.codecs.blockterms.LuceneVarGapDocFreqInterval;
 import org.apache.lucene.codecs.blockterms.LuceneVarGapFixedInterval;
 import org.apache.lucene.codecs.blocktreeords.BlockTreeOrdsPostingsFormat;
 import org.apache.lucene.codecs.bloom.TestBloomFilteredLucenePostings;
-import org.apache.lucene.codecs.lucene80.Lucene80DocValuesFormat;
 import org.apache.lucene.codecs.lucene86.Lucene86PointsReader;
 import org.apache.lucene.codecs.lucene86.Lucene86PointsWriter;
+import org.apache.lucene.codecs.lucene90.Lucene90DocValuesFormat;
 import org.apache.lucene.codecs.memory.DirectPostingsFormat;
 import org.apache.lucene.codecs.memory.FSTPostingsFormat;
 import org.apache.lucene.codecs.mockrandom.MockRandomPostingsFormat;
@@ -227,7 +227,7 @@ public class RandomCodec extends AssertingCodec {
     addDocValues(
         avoidCodecs,
         TestUtil.getDefaultDocValuesFormat(),
-        new Lucene80DocValuesFormat(Lucene80DocValuesFormat.Mode.BEST_COMPRESSION),
+        new Lucene90DocValuesFormat(Lucene90DocValuesFormat.Mode.BEST_COMPRESSION),
         new AssertingDocValuesFormat());
 
     Collections.shuffle(formats, random);
diff --git a/lucene/test-framework/src/java/org/apache/lucene/util/TestUtil.java b/lucene/test-framework/src/java/org/apache/lucene/util/TestUtil.java
index d6615d5..8b69743 100644
--- a/lucene/test-framework/src/java/org/apache/lucene/util/TestUtil.java
+++ b/lucene/test-framework/src/java/org/apache/lucene/util/TestUtil.java
@@ -53,8 +53,8 @@ import org.apache.lucene.codecs.PostingsFormat;
 import org.apache.lucene.codecs.asserting.AssertingCodec;
 import org.apache.lucene.codecs.blockterms.LuceneFixedGap;
 import org.apache.lucene.codecs.blocktreeords.BlockTreeOrdsPostingsFormat;
-import org.apache.lucene.codecs.lucene80.Lucene80DocValuesFormat;
 import org.apache.lucene.codecs.lucene90.Lucene90Codec;
+import org.apache.lucene.codecs.lucene90.Lucene90DocValuesFormat;
 import org.apache.lucene.codecs.lucene90.Lucene90PostingsFormat;
 import org.apache.lucene.codecs.perfield.PerFieldDocValuesFormat;
 import org.apache.lucene.codecs.perfield.PerFieldPostingsFormat;
@@ -1252,7 +1252,7 @@ public final class TestUtil {
    * Lucene.
    */
   public static DocValuesFormat getDefaultDocValuesFormat() {
-    return new Lucene80DocValuesFormat();
+    return new Lucene90DocValuesFormat();
   }
 
   // TODO: generalize all 'test-checks-for-crazy-codecs' to