Class Lucene90FieldInfosFormat

java.lang.Object
org.apache.lucene.codecs.FieldInfosFormat
org.apache.lucene.codecs.lucene90.Lucene90FieldInfosFormat

public final class Lucene90FieldInfosFormat extends FieldInfosFormat
Lucene 9.0 Field Infos format.

Field names are stored in the field info file, with suffix .fnm.

FieldInfos (.fnm) --> Header,FieldsCount, <FieldName,FieldNumber, FieldBits,DocValuesBits,DocValuesGen,Attributes,DimensionCount,DimensionNumBytes> FieldsCount,Footer

Data types:

Field Descriptions:
  • FieldsCount: the number of fields in this file.
  • FieldName: name of the field as a UTF-8 String.
  • FieldNumber: the field's number. Note that unlike previous versions of Lucene, the fields are not numbered implicitly by their order in the file, instead explicitly.
  • FieldBits: a byte containing field options.
    • The low order bit (0x1) is one for fields that have term vectors stored, and zero for fields without term vectors.
    • If the second lowest order-bit is set (0x2), norms are omitted for the indexed field.
    • If the third lowest-order bit is set (0x4), payloads are stored for the indexed field.
  • IndexOptions: a byte containing index options.
    • 0: not indexed
    • 1: indexed as DOCS_ONLY
    • 2: indexed as DOCS_AND_FREQS
    • 3: indexed as DOCS_AND_FREQS_AND_POSITIONS
    • 4: indexed as DOCS_AND_FREQS_AND_POSITIONS_AND_OFFSETS
  • DocValuesBits: a byte containing per-document value types. The type recorded as two four-bit integers, with the high-order bits representing norms options, and the low-order bits representing DocValues options. Each four-bit integer can be decoded as such:
    • 0: no DocValues for this field.
    • 1: NumericDocValues. (DocValuesType.NUMERIC)
    • 2: BinaryDocValues. (DocValuesType#BINARY)
    • 3: SortedDocValues. (DocValuesType#SORTED)
  • DocValuesGen is the generation count of the field's DocValues. If this is -1, there are no DocValues updates to that field. Anything above zero means there are updates stored by DocValuesFormat.
  • Attributes: a key-value map of codec-private attributes.
  • PointDimensionCount, PointNumBytes: these are non-zero only if the field is indexed as points, e.g. using LongPoint
  • VectorDimension: it is non-zero if the field is indexed as vectors.
  • VectorSimilarityFunction: a byte containing distance function used for similarity calculation.
WARNING: This API is experimental and might change in incompatible ways in the next release.