Mailing List Archive

[ANNOUNCE] Apache Lucene 9.5.0 released
The Lucene PMC is pleased to announce the release of Apache Lucene 9.5.0.

Apache Lucene is a high-performance, full-featured search engine library
written entirely in Java. It is a technology suitable for nearly any
application that requires structured search, full-text search, faceting,
nearest-neighbor search across high-dimensionality vectors, spell
correction or query suggestions.

This release contains numerous bug fixes, optimizations, and improvements,
some of which are highlighted below. The release is available for immediate
download at:

<https://lucene.apache.org/core/downloads.html>

### Lucene 9.5.0 Release Highlights:

#### New features

* Added KnnByteVectorField and ByteVectorQuery that are specialized for
indexing and querying byte-sized vectors. Deprecated KnnVectorField,
KnnVectorQuery and LeafReader#getVectorValues in favour of the newly
introduced KnnFloatVectorField, KnnFloatVectorQuery and
LeafReader#getFloatVectorValues that are specialized for float vectors.
* Added IntField, LongField, FloatField and DoubleField: easy to use
numeric fields that perform well both for filtering and sorting.
* Support for Java 19 foreign memory access ("project Panama") was enabled
by default removing the need to provide the "--enable-preview" flag.
* Added ByteWritesTrackingDirectoryWrapper to expose metrics for bytes
merged, flushed, and overall write amplification factor.

#### Optimizations

* Improved storage efficiency of connections in the HNSW graph used for
vector search
* Added new stored fields and term vectors interfaces:
IndexReader#storedFields and IndexReader#termVectors. These do not rely
upon ThreadLocal storage for each index segment, which can greatly reduce
RAM requirements when there are many threads and/or segments.
* Several improvements were made to
IndexSortSortedNumericDocValuesRangeQuery including query execution
optimization with points for descending sorts and BoundedDocIdSetIterator
construction sped up using bkd binary search.

#### Other

* Moved DocValuesNumbersQuery from sandbox to
NumericDocValuesField#newSlowSetQuery
* Fix exponential runtime for nested BooleanQuery#rewrite with non scoring
clauses

Please read CHANGES.txt for a full list of new features and changes:

<https://lucene.apache.org/core/9_5_0/changes/Changes.html>