You may also read these news as an ATOM feed .

1 September 2020 - Apache Lucene™ 8.6.2 available ¶

The Lucene PMC is pleased to announce the release of Apache Lucene 8.6.2.

Apache Lucene is a high-performance, full-featured text search engine library written entirely in Java. It is a technology suitable for nearly any application that requires full-text search, especially cross-platform.

This release contains one bug fix. The release is available for immediate download at:

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

Lucene 8.6.2 Bug Fixes:

LUCENE-9478: IndexWriter leaked about 500 byte of heap space for each full-flush, getReader or commit. This was a regression in 6.8.0

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

https://lucene.apache.org/core/8_6_2/changes/Changes.html

13 August 2020 - Apache Lucene™ 8.6.1 available ¶

The Lucene PMC is pleased to announce the release of Apache Lucene 8.6.1.

Apache Lucene is a high-performance, full-featured text search engine library written entirely in Java. It is a technology suitable for nearly any application that requires full-text search, especially cross-platform.

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 8.6.1 Release Highlights:

LUCENE-9443: The UnifiedHighlighter was closing the underlying reader when there were multiple term-vector fields.

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

https://lucene.apache.org/core/8_6_1/changes/Changes.html

15 July 2020 - Apache Lucene™ 8.6.0 available ¶

The Lucene PMC is pleased to announce the release of Apache Lucene 8.6.0.

Apache Lucene is a high-performance, full-featured text search engine library written entirely in Java. It is a technology suitable for nearly any application that requires full-text search, especially cross-platform.

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 8.6.0 Release Highlights:

API change in: SimpleFSDireectory, IndexWriterConfig, MergeScheduler, SortFields, SimpleBindings, QueryVisitor, DocValues, CodecUtil.

New: IndexWriter merge-on-commit feature to selectively merge small segments on commit, subject to a configurable timeout, to improve search performance by reducing the number of small segments for searching.

New: Grouping by range based on DoubleValueSource and LongValueSource.

Optimizations: BKD trees and index, DoubleValuesSource/QueryValueSource, UsageTrackingQueryingCachingPolicy, FST, Geometry queries, Points, UniformSplit.

Others: Ukrainian analyzer, checksums verification, resource leaks fixes.

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

https://lucene.apache.org/core/8_6_0/changes/Changes.html

26 May 2020 - Apache Lucene™ 8.5.2 available ¶

The Lucene PMC is pleased to announce the release of Apache Lucene 8.5.2.

Apache Lucene is a high-performance, full-featured text search engine library written entirely in Java. It is a technology suitable for nearly any application that requires full-text search, especially cross-platform.

This release contains one bug fixes. The release is available for immediate download at:

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

Lucene 8.5.2 Release Highlights:

LUCENE-9350: Don't cache automata on FuzzyQuery

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

https://lucene.apache.org/core/8_5_2/changes/Changes.html

28 April 2020 - Apache Lucene™ 7.7.3 available ¶

The Lucene PMC is pleased to announce the release of Apache Lucene 7.7.3.

Apache Lucene is a high-performance, full-featured text search engine library written entirely in Java. It is a technology suitable for nearly any application that requires full-text search, especially cross-platform.

This release contains 1 bugfix in Lucene. The release is available for immediate download at:

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

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

https://lucene.apache.org/core/7_7_3/changes/Changes.html

16 April 2020 - Apache Lucene™ 8.5.1 available ¶

The Lucene PMC is pleased to announce the release of Apache Lucene 8.5.1.

Apache Lucene is a high-performance, full-featured text search engine library written entirely in Java. It is a technology suitable for nearly any application that requires full-text search, especially cross-platform.

This release contains one bug fix. The release is available for immediate download at:

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

Lucene 8.5.1 Bug Fixes:

LUCENE-9300: Index corruption with doc values updates and addIndexes.

Further details of changes are available in the change log available at:

https://lucene.apache.org/core/8_5_1/changes/Changes.html

24 March 2020 - Apache Lucene™ 8.5.0 available ¶

The Lucene PMC is pleased to announce the release of Apache Lucene 8.5.0.

Apache Lucene is a high-performance, full-featured text search engine library written entirely in Java. It is a technology suitable for nearly any application that requires full-text search, especially cross-platform.

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 8.5.0 Release Highlights:

XYPointField allows you to index points in flat X,Y space and efficiently find documents that fall within a bounding box, distance or arbitrary polygon

New query builders on LatLonShape allow you to efficiently find documents with a specific relation to a point or polygon

You can now store up to 16 data dimensions in a Point field

KoreanTokenizer supports custom dictionaries

Binary doc values are now compressed, and term dictionaries have improved compression

Index flushes are up to 20% faster if all docvalues updates are updating a single field to the same value

The index of stored fields and term vectors is now stored off-heap

Query parsers based on QueryBuilder can boost particular terms or synonyms by setting BoostAttribute values on a token stream

Intervals queries correctly handle repeated subterms in ordered and unordered sources

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

https://lucene.apache.org/core/8_5_0/changes/Changes.html

13 January 2020 - Apache Lucene™ 8.4.1 available ¶

The Lucene PMC is pleased to announce the release of Apache Lucene 8.4.1.

Apache Lucene is a high-performance, full-featured text search engine library written entirely in Java. It is a technology suitable for nearly any application that requires full-text search, especially cross-platform.

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 8.4.1 Release Highlights:

(No Changes since 8.4.0)

29 December 2019 - Apache Lucene™ 8.4.0 available ¶

The Lucene PMC is pleased to announce the release of Apache Lucene 8.4.0.

Apache Lucene is a high-performance, full-featured text search engine library written entirely in Java. It is a technology suitable for nearly any application that requires full-text search, especially cross-platform.

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 8.4.0 Release Highlights:

LatLonShape now supports the "CONTAINS" relation, which enables to find all indexed shapes that contain the query shape.

Concurrent search is getting more efficient by allowing collectors to share information across threads in order to more efficiently skip non-competitive hits.

Faster FST lookups on dense nodes.

Postings are now decoded using SIMD instructions.

LRUQueryCache includes new heuristics that prevent caching from hurting latency too much.

LatLonShape builds a more efficient tree that is expected to translate into search speed improvements.

BaseDirectoryReader no longer sums up document counts across leaves eagerly, allowing for more efficient reader views that hide a subset of documents.

The index on top of BKD trees is now stored off-heap with MMapDirectory.

Simple Intervals queries support highlighting.

Reading DocValues can be interrupted when timeout is exceeded.

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

https://lucene.apache.org/core/8_4_0/changes/Changes.html

3 December 2019 - Apache Lucene™ 8.3.1 available ¶

The Lucene PMC is pleased to announce the release of Apache Lucene 8.3.1.

Apache Lucene is a high-performance, full-featured text search engine library written entirely in Java. It is a technology suitable for nearly any application that requires full-text search, especially cross-platform.

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 8.3.1 Release Highlights:

Bugfix: MultiTermIntervalsSource.visit() was not calling back to its visitor

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

https://lucene.apache.org/core/8_3_1/changes/Changes.html

2 November 2019 - Apache Lucene™ 8.3.0 available ¶

The Lucene PMC is pleased to announce the release of Apache Lucene 8.3.0.

Apache Lucene is a high-performance, full-featured text search engine library written entirely in Java. It is a technology suitable for nearly any application that requires full-text search, especially cross

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 8.3.0 Release Highlights:

New SpanishMinimalStemFilter

New "export all terms and doc freqs" feature to Luke with delimiters

Composite Matches from multiple subqueries now allow access to their submatches, and a new NamedMatches API allows marking of subqueries and a simple way to find which subqueries have matched on a given

Range Query For Multiple Connected Ranges

LatLonDocValuesPointInPolygonQuery for LatLonDocValuesField

New UniformSplitPostingsFormat (name "UniformSplit") primarily benefiting in simplicity and extensibility

New STUniformSplitPostingsFormat (name "SharedTermsUniformSplit") that shares a single internal term dictionary across fields

DisjunctionMaxQuery more efficiently leverages impacts to skip non-competitive hits

BooleanQuery with no scoring clause can now early terminate the query when the total hits is not requested

Matches on wildcard queries will defer building their full disjunction until a MatchesIterator is pulled

spatial-extras quad and packed quad prefix trees now index points faster

Add additional leaf node level optimizations in LatLonShapeBoundingBoxQuery

Improve performance of WITHIN and DISJOINT queries for Shape queries by doing just one pass whenever possible

Introduce shared count based early termination across multiple slices

Blocktree's seekExact now short-circuits false if the term isn't in the min-max range of the segment. Large perf gain for ID/time like data when populated sequentially

Show SPI names instead of class names in Luke Analysis tab

GraphTokenStreamFiniteStrings preserves all Token attributes through its finite strings TokenStreams

Introduced SpanPositionRange into XML Query Parser

Use a sort key instead of true distance in NearestNeighbor

Tessellator labels the edges of the generated triangles whether they belong to the original polygon

Use exact distance between point and bounding rectangle in FloatPointNearestNeighbor

The Korean analyzer now splits tokens on boundaries between digits and alphabetic characters

MoreLikeThis is biased for uncommon fields

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

https://lucene.apache.org/core/8_3_0/changes/Changes.html

26 July 2019 - Apache Lucene™ 8.2.0 available ¶

The Lucene PMC is pleased to announce the release of Apache Lucene 8.2.0.

Apache Lucene is a high-performance, full-featured text search engine library written entirely in Java. It is a technology suitable for nearly any application that requires full-text search, especially cross-platform.

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 8.2.0 Release Highlights:

API Changes:

Intervals queries has been moved from the sandbox to the queries module.

New Features

New XYShape Field and Queries for indexing and querying general cartesian geometries.

Snowball stemmer/analyzer for the Estonian language.

Provide a FeatureSortfield to allow sorting search hits by descending value of a feature.

Add new KoreanNumberFilter that can change Hangul character to number and process decimal point.

Add doc-value support to range fields.

Add monitor subproject (previously Luwak monitoring library) that allows a stream of documents to be matched against a set of registered queriesin an efficient manner.

Add a numeric range query in sandbox that takes advantage of index sorting.Add a numeric range query in sandbox that takes advantage of index sorting.

Optimizations

Use exponential search instead of binary search in IntArrayDocIdSet#advance method.

Use incoming thread for execution if IndexSearcher has an executor. Now caller threads execute at least one search on an index even if there is an executor provided to minimize thread context switching.

New storing strategy for BKD tree leaves with low cardinality that can lower storage costs and It can be used at search time to speed up queries.

Load frequencies lazily only when needed in BlockDocsEnum and BlockImpactsEverythingEnum.

Phrase queries now leverage impacts.

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

https://lucene.apache.org/core/8_2_0/changes/Changes.html

4 June 2019 - Apache Lucene™ 7.7.2 available ¶

The Lucene PMC is pleased to announce the release of Apache Lucene 7.7.2.

Apache Lucene is a high-performance, full-featured text search engine library written entirely in Java. It is a technology suitable for nearly any application that requires full-text search, especially cross-platform.

This release contains 9 bugfixes in Lucene. The release is available for immediate download at:

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

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

https://lucene.apache.org/core/7_7_2/changes/Changes.html

28 May 2019 - Apache Lucene™ 8.1.1 available ¶

The Lucene PMC is pleased to announce the release of Apache Lucene 8.1.1.

Apache Lucene is a high-performance, full-featured text search engine library written entirely in Java. It is a technology suitable for nearly any application that requires full-text search, especially cross-platform.

This release contains no change over 8.1.0. The release is available for immediate download at:

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

16 May 2019 - Apache Lucene™ 8.1.0 available ¶

The Lucene PMC is pleased to announce the release of Apache Lucene 8.1.0.

Apache Lucene is a high-performance, full-featured text search engine library written entirely in Java. It is a technology suitable for nearly any application that requires full-text search, especially cross-platform.

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 8.1.0 Release Highlights:

A query introspection API has been introduced.

Luke, well-known GUI for inspecting Lucene indexes, now added as a Lucene module

Merging dimensional points to use radix partitioning, which has also been optimized

Bugfix: LatLonShapePolygonQuery returns incorrect WITHIN results with shared boundaries

TieredMergePolicy#findForcedMerges now tries to create the cheapest merges

Build point writers in the BKD tree only when they are needed

SynonymQuery can now deboost the document frequency of each term when blending synonym scores

ConstantScoreQuery can early terminate if minimum score > constant score (total hits are not requested)

DateRangePrefixTree can now parse more precise dates

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

https://lucene.apache.org/core/8_1_0/changes/Changes.html

5 April 2019 - Apache Lucene™ 6.6.6 available ¶

The Lucene PMC is pleased to announce the release of Apache Lucene 6.6.6.

Apache Lucene is a high-performance, full-featured text search engine library written entirely in Java. It is a technology suitable for nearly any application that requires full-text search, especially cross-pla

This release contains no change over 6.6.4. The release is available for immediate download at:

https://www.apache.org/dyn/closer.lua/lucene/java/6.6.6

14 March 2019 - Apache Lucene™ 8.0.0 available ¶

The Lucene PMC is pleased to announce the release of Apache Lucene 8.0.0.

Apache Lucene is a high-performance, full-featured text search engine library written entirely in Java. It is a technology suitable for nearly any application that requires full-text search, especially cross-platform.

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 8.0.0 Release Highlights:

Query execution

Term queries, phrase queries and boolean queries introduced new optimization that enables efficient skipping over non-competitive documents when the total hit count is not needed. Depending on the exact query and data distribution, queries might run between a few percents slower and many times faster, especially term queries and pure disjunctions.

In order to support this enhancement, some API changes have been made: * TopDocs.totalHits is no longer a long but an object that gives a lower bound of the actual hit count. * IndexSearcher's search and searchAfter methods now only compute total hit counts accurately up to 1,000 in order to enable this optimization by default. * Queries are now required to produce non-negative scores.

Codecs

Postings now index score impacts alongside skip data. This is how term queries optimize collection of top hits when hit counts are not needed.

Doc values introduced jump tables, so that advancing runs in constant time. This is especially helpful on sparse fields.

The terms index FST is now loaded off-heap for non-primary-key fields using MMapDirectory, reducing heap usage for such fields.

Custom scoring

The new FeatureField allows efficient integration of static features such as a pagerank into the score. Furthermore, the new LongPoint#newDistanceFeatureQuery and LatLonPoint#newDistanceFeatureQuery methods allow boosting by recency and geo-distance respectively. These new helpers are optimized for the case when total hit counts are not needed. For instance if the pagerank has a significant weight in your scores, then Lucene might be able to skip over documents that have a low pagerank value.

Further details of changes are available in the change log available at:

https://lucene.apache.org/core/8_0_0/changes/Changes.html

1 March 2019 - Apache Lucene™ 7.7.1 available ¶

The Lucene PMC is pleased to announce the release of Apache Lucene 7.7.1.

Apache Lucene is a high-performance, full-featured text search engine library written entirely in Java. It is a technology suitable for nearly any application that requires full-text search, especially cross-platform.

This release contains no change over 7.7.0. The release is available for immediate download at:

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

11 February 2019 - Apache Lucene™ 7.7.0 available ¶

The Lucene PMC is pleased to announce the release of Apache Lucene 7.7.0.

Apache Lucene is a high-performance, full-featured text search engine library written entirely in Java. It is a technology suitable for nearly any application that requires full-text search, especially cross-platform.

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 7.7.0 Release Highlights:

Fix LatLonShape WITHIN queries that fail with Multiple search Polygons that share the dateline.

LatLonShape's within and disjoint queries can return false positives with indexed multi-shapes.

ExitableDirectoryReader may now time out queries that run on points such as range queries or geo queries.

StandardTokenizer and UAX29URLEmailTokenizer now support Unicode 9.0, and provide Unicode UTS#51 v11.0 Emoji tokenization with the " " token type.

TopFieldCollector can now early-terminates queries when sorting by SortField.DOC.

Speed up merging segments of points with data dimensions by only sorting on the indexed dimensions.

The KoreanTokenizer no longer splits unknown words on combining diacritics and detects script boundaries more accurately with Character#UnicodeScript#of.

Change LatLonShape encoding to use 4 bytes Per Dimension.

BufferedUpdates now uses an optimized storage for buffering docvalues updates that can save up to 80% of the heap used compared to the previous implementation and uses non-object based datastructures.

Moved to the default accepted overhead ratio for packet ints in DocValuesFieldUpdates yields an up-to 4x performance improvement when applying doc values updates.

Doc-value updates get applied faster by sorting with quicksort, rather than an in-place mergesort, which needs to perform fewer swaps.

Decrease I/O pressure when merging high dimensional points.

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

https://lucene.apache.org/core/7_7_0/changes/Changes.html

14 December 2018 - Apache Lucene™ 7.6.0 available ¶

The Lucene PMC is pleased to announce the release of Apache Lucene 7.6.0.

Apache Lucene is a high-performance, full-featured text search engine library written entirely in Java. It is a technology suitable for nearly any application that requires full-text search, especially cross-platform.

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 7.6.0 Release Highlights:

Index sorting corruption due to numeric overflow has been fixed. Indices affected by this bug can be detected by running the CheckIndex command on a 7.6+ release distribution.

Better tessellation processing of Polygons including graceful exceptions for detecting invalid shapes.

Points codec now supports selective indexing ; the ability to designate dimensions as as "data only" dimensions that do not affect construction of the index.

; the ability to designate dimensions as as "data only" dimensions that do not affect construction of the index. New Simple WKT Shape Parser builds lucene geometries (polygons, lines, rectangles) from WKT format.

New LatLonShapeLineQuery queries indexed shapes with arbitrary lines.

analyzeGraphPhrase query builder creates one phrase query per finite strings in the graph based on slop parameter.

Performance in PerFieldMergeState#FilterFieldInfos has been improved from O(N) to O(1) lookup time.

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

https://lucene.apache.org/core/7_6_0/changes/Changes.html

24 September 2018 - Apache Lucene™ 7.5.0 available ¶

The Lucene PMC is pleased to announce the release of Apache Lucene 7.5.0.

Apache Lucene is a high-performance, full-featured text search engine library written entirely in Java. It is a technology suitable for nearly any application that requires full-text search, especially cross-platform.

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 7.5.0 Release Highlights:

IndexWriter#deleteDocs(Query... query) applies deletes to wrong documents if the index is sorted.

TieredMergePolicy now respects maxSegmentSizeMB by default when executing findForcedMerges and findForcedDeletesMerges.

A new points based Shape Indexing and Searching that decomposes shapes into a triangular mesh and indexes individual triangles as a 6 dimension point.

A new ByteBuffer based Directory implementation that aims to replace the deprecated RAMDirectory.

The UnifiedHighlighter can now use the MatchesIterator API to highlight any query more accurately.

TopFieldComparator can now stop comparing documents if the index is sorted, even if hits still need to be visited to compute the hit count.

TieredMergePolicy can control how aggressively deletes should be reclaimed with the new deletesPctAllowed setting.

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

https://lucene.apache.org/core/7_5_0/changes/Changes.html

3 July 2018 - Apache Lucene™ 6.6.5 available ¶

The Lucene PMC is pleased to announce the release of Apache Lucene 6.6.5.

Apache Lucene is a high-performance, full-featured text search engine library written entirely in Java. It is a technology suitable for nearly any application that requires full-text search, especially cross-platform.

This release contains no change over 6.6.4. The release is available for immediate download at:

https://www.apache.org/dyn/closer.lua/lucene/java/6.6.5

27 June 2018 - Apache Lucene™ 7.4.0 available ¶

The Lucene PMC is pleased to announce the release of Apache Lucene 7.4.0.

Apache Lucene is a high-performance, full-featured text search engine library written entirely in Java. It is a technology suitable for nearly any application that requires full-text search, especially cross-platform.

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

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

https://lucene.apache.org/core/7_4_0/changes/Changes.html

15 May 2018 - Apache Lucene™ 6.6.4 available ¶

The Lucene PMC is pleased to announce the release of Apache Lucene 6.6.4.

Apache Lucene is a high-performance, full-featured text search engine library written entirely in Java. It is a technology suitable for nearly any application that requires full-text search, especially cross-platform.

This release contains no change over 6.6.3. The release is available for immediate download at:

https://www.apache.org/dyn/closer.lua/lucene/java/6.6.4

15 May 2018 - Apache Lucene™ 7.3.1 available ¶

The Lucene PMC is pleased to announce the release of Apache Lucene 7.3.1.

Apache Lucene is a high-performance, full-featured text search engine library written entirely in Java. It is a technology suitable for nearly any application that requires full-text search, especially cross-platform.

This release contains one build change. The release is available for immediate download at:

https://lucene.apache.org/core/mirrors-core-redir.html

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

https://lucene.apache.org/core/7_3_1/changes/Changes.html

4 April 2018 - Apache Lucene™ 7.3.0 available ¶

The Lucene PMC is pleased to announce the release of Apache Lucene 7.3.0.

Apache Lucene is a high-performance, full-featured text search engine library written entirely in Java. It is a technology suitable for nearly any application that requires full-text search, especially cross-platform.

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/mirrors-core-redir.html

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

https://lucene.apache.org/core/7_3_0/changes/Changes.html

7 March 2018 - Apache Lucene™ 6.6.3 available ¶

The Lucene PMC is pleased to announce the release of Apache Lucene 6.6.3.

Apache Lucene is a high-performance, full-featured text search engine library written entirely in Java. It is a technology suitable for nearly any application that requires full-text search, especially cross-platform.

This release contains one build change. The release is available for immediate download at:

https://lucene.apache.org/core/mirrors-core-redir.html

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

https://lucene.apache.org/core/6_6_3/changes/Changes.html

15 January 2018 - Apache Lucene™ 7.2.1 available ¶

The Lucene PMC is pleased to announce the release of Apache Lucene 7.2.1.

Apache Lucene is a high-performance, full-featured text search engine library written entirely in Java. It is a technology suitable for nearly any application that requires full-text search, especially cross-platform.

This release contains one bug fix. The release is available for immediate download at:

https://lucene.apache.org/core/mirrors-core-latest-redir.html

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

https://lucene.apache.org/core/7_2_1/changes/Changes.html

Lucene 7.2.1 Bug Fix:

Fix advanceExact on SortedNumericDocValues produced by Lucene54DocValuesProducer.

21 December 2017 - Apache Lucene™ 7.2.0 available ¶

The Lucene PMC is pleased to announce the release of Apache Lucene 7.2.0.

Apache Lucene is a high-performance, full-featured text search engine library written entirely in Java. It is a technology suitable for nearly any application that requires full-text search, especially cross-platform.

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/mirrors-core-latest-redir.html

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

https://lucene.apache.org/core/7_2_0/changes/Changes.html

Lucene 7.2.0 Release Highlights:

Specific query implementations can now opt out of caching.

TopFieldDocCollector can now early terminate collection of matches when the index is sorted and the total hit count is not requested.

IndexWriter#flushNextBuffer gives more fine-grained control over the memory usage of IndexWriter.

Fixed document accounting in IndexWriter.

Query scores can be exposed in a ValuesSource using DoubleValuesSource.fromQuery().

24 October 2017 - Apache Lucene™ 5.5.5 available ¶

The Lucene PMC is pleased to announce the release of Apache Lucene 5.5.5.

Apache Lucene is a high-performance, full-featured text search engine library written entirely in Java. It is a technology suitable for nearly any application that requires full-text search, especially cross-platform.

This release contains one bug fix. The release is available for immediate download at:

https://lucene.apache.org/core/mirrors-core-latest-redir.html

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

https://lucene.apache.org/core/5_5_5/changes/Changes.html

This release includes a critical security fix. Details:

Disallow resolving of external entities in queryparser/xml/CoreParser by default.

18 October 2017 - Apache Lucene™ 6.6.2 available ¶

The Lucene PMC is pleased to announce the release of Apache Lucene 6.6.2.

Apache Lucene is a high-performance, full-featured text search engine library written entirely in Java. It is a technology suitable for nearly any application that requires full-text search, especially cross-platform.

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

https://www.apache.org/dyn/closer.lua/lucene/java/6.6.2

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

https://lucene.apache.org/core/6_6_2/changes/Changes.html

This release includes a critical security fix. Details:

Disallow resolving of external entities in queryparser/xml/CoreParser by default.

17 October 2017 - Apache Lucene™ 7.1.0 available ¶

The Lucene PMC is pleased to announce the release of Apache Lucene 7.1.0.

Apache Lucene is a high-performance, full-featured text search engine library written entirely in Java. It is a technology suitable for nearly any application that requires full-text search, especially cross-platform.

This release contains numerous bug fixes, optimizations, and improvements, some of which are highlighted below.

The release is available for immediate download at:

https://www.apache.org/dyn/closer.lua/lucene/java/7.1.0

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

https://lucene.apache.org/core/7_1_0/changes/Changes.html

Lucene 7.1.0 Release Highlights:

New Geo3D shapes for non-spherical planet models

Serialization and deserialization support for Geo3D

A new CoveringQuery, whose required number of matching clauses can be defined per document

New BengaliAnalyzer for Bengali language

A point based range field called LatLonBoundingBox

FloatPointNearestNeighbor, an N-dimensional FloatPoint K-nearest-neighbor search implementation

Faster default taxonomy cache

Support for computing facet counts for individual numeric values via LongValueFacetCounts

Faster geo-distance queries in case of dense single-valued fields when most documents match

Better heuristics in IndexOrDocValuesQuery

Optimized builds for OrdinalMap (used by SortedSetDocValuesFacetCounts and others)

6 October 2017 - Apache Lucene™ 7.0.1 available ¶

The Lucene PMC is pleased to announce the release of Apache Lucene 7.0.1

Apache Lucene is a high-performance, full-featured text search engine library written entirely in Java. It is a technology suitable for nearly any application that requires full-text search, especially cross-platform.

This release contains 1 bug fix since the 7.0.0 release:

ConjunctionScorer.getChildren was failing to return all child scorers

The release is available for immediate download at:

https://www.apache.org/dyn/closer.lua/lucene/java/7.0.1

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

https://lucene.apache.org/core/7_0_1/changes/Changes.html

20 September 2017 - Apache Lucene™ 7.0.0 available ¶

The Lucene PMC is pleased to announce the release of Apache Lucene 7.0.0.

Apache Lucene is a high-performance, full-featured text search engine library written entirely in Java. It is a technology suitable for nearly any application that requires full-text search, especially cross-platform.

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

https://www.apache.org/dyn/closer.lua/lucene/java/7.0.0

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

https://lucene.apache.org/core/7_0_0/changes/Changes.html

Lucene 7.0.0 Release Highlights:

Doc values switched from random access to iterators.

The 7.0 codec now sparsely encodes sparse doc values and length normalization factors ("norms"), which also translates to optimization in both indexing, and search on sparse values. With these changes, you finally only pay for what you actually use with doc values, in index size, indexing performance, etc.

Index time boost for documents is now removed.

Substantial performance gains for delete and update heavy Lucene usage; see http://blog.mikemccandless.com/2017/07/lucene-gets-concurrent-deletes-and.html for details

Query scoring is now simpler with removal of coord factor, and query normalization.

Classic query parser no longer splits on whitespaces. This enables better multi-word synonym support.

The version of Lucene that created the index segment would be recorded, along with the version that last modified the index.

IndexWriter, used to add, update and delete documents in your index, will no longer accept broken token offsets sometimes produced by mis-behaving token filters.

IndexReader exposes methods that are typically used to manage resources whose lifetime needs to mimic the lifetime of segments/indexes, typically caches. They have been made much less trappy.

The dimensional points API now takes a field name up front to offer per-field points access, matching how the doc values APIs work.

The PostingsHighlighter was removed. Migrating to the UnifiedHighlighter should be straight-forward.

Apache Lucene was tested to be fully compatible with the release of Java 9 and its module system Jigsaw, coming out tomorrow on September 21st!

7 September 2017 - Apache Lucene™ 6.6.1 available ¶

The Lucene PMC is pleased to announce the release of Apache Lucene 6.6.1

Apache Lucene is a high-performance, full-featured text search engine library written entirely in Java. It is a technology suitable for nearly any application that requires full-text search, especially cross-platform.

The release is available for immediate download at:

https://www.apache.org/dyn/closer.lua/lucene/java/6.6.1

See the CHANGES.txt file included with the release for a full list of changes and further details.

This release contains 2 bug fixes since the 6.6.0 release:

Documents with multiple points that should match might not match on a memory index

A query which has only one synonym with AND as the default operator would wrongly translate as an AND between the query term and the synonym

6 June 2017 - Apache Lucene™ 6.6.0 available ¶

The Lucene PMC is pleased to announce the release of Apache Lucene 6.6.0

Apache Lucene is a high-performance, full-featured text search engine library written entirely in Java. It is a technology suitable for nearly any application that requires full-text search, especially cross-platform.

The release is available for immediate download at:

https://www.apache.org/dyn/closer.lua/lucene/java/6.6.0

See the CHANGES.txt file included with the release for a full list of changes and further details.

Highlights of this Lucene release include:

A concurrent SortedSet facets implementation

spatial-extras HeatmapFacetCounter will now short-circuit it's work when Bits.MatchNoBits is passed

OfflineSorter now passes the total number of items it will write to getWriter()

Move dictionary for Ukrainian analyzer to external dependency

SortedSetDocValuesReaderState now implements Accountable so one can see how much RAM it is using

OfflineSorter can now run concurrently if you pass it an optional ExecutorService Sorted set facets now use sparse storage when collecting hits, when appropriate

PostingsHighlighter has been deprecated in favour of the UnifiedHighlighter

27 April 2017 - Apache Lucene™ 6.5.1 available ¶

The Lucene PMC is pleased to announce the release of Apache Lucene 6.5.1

Apache Lucene is a high-performance, full-featured text search engine library written entirely in Java. It is a technology suitable for nearly any application that requires full-text search, especially cross-platform.

The release is available for immediate download at:

https://www.apache.org/dyn/closer.lua/lucene/java/6.5.1

See the CHANGES.txt file included with the release for a full list of changes and further details.

This release contains 3 bug fixes since the 6.5.0 release:

Fixed join queries to not reference IndexReaders, as it could cause leaks if they are cached.

Made LRUQueryCache delegate the scoreSupplier method.

Fixed index sorting to work with sparse numeric and binary docvalues field

27 March 2017 - Apache Lucene™ 6.5.0 available ¶

The Lucene PMC is pleased to announce the release of Apache Lucene 6.5.0

Apache Lucene is a high-performance, full-featured text search engine library written entirely in Java. It is a technology suitable for nearly any application that requires full-text search, especially cross-platform.

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

https://www.apache.org/dyn/closer.lua/lucene/java/6.5.0

See the CHANGES.txt file included with the release for a full list of changes and further details.

Highlights of this Lucene release include:

It is now possible filter out duplicates in the NRT suggester

SimpleQueryString now supports default fuziness

IndexWriter can return the list of visible field names

DisjunctionScorer now supports returning the matching children clauses

A new FunctionScoreQuery that modifies the internal query's score using the per-document values

A new FunctionMatchQuery that returns any documents with a value that matches a predicate

A new WordDelimiterGraphFilter that outputs a correct graph structure for multi-token expansion at query time

A new PatternTokenizer that uses Lucene's RegExp implementation

RangeFieldQuery now supports CROSSES relation

A new IndexOrDocValuesQuery that uses either an index (points or terms) or doc values in order to run a (range, geo box and distance) query, depending which one is more efficient

index-time boosts are deprecated

Term filters are no longer cached

Compound filters are cached earlier than regular queries

BKDReader now calls grow on larger increments

LatLonPointInPolygonQuery are faster

LatLonPointDistanceQuery now skips distance computations more often

To-parent block joins now implements two-phase iteration

Point ranges that match most documents are faster

PointValues#estimatePointCount is faster with Relation.CELL_INSIDE_QUERY

Segments are now also sorted during flush, and merging on a sorted index is substantially faster by using some of the same bulk merge optimizations that non-sorted merging uses

7 March 2017 - Apache Lucene 6.4.2 and Apache Solr 6.4.2 Available ¶

The Lucene PMC is pleased to announce the release of Apache Lucene 6.4.2

Apache Lucene is a high-performance, full-featured text search engine library written entirely in Java. It is a technology suitable for nearly any application that requires full-text search, especially cross-platform.

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

https://www.apache.org/dyn/closer.lua/lucene/java/6.4.2

See the CHANGES.txt file included with the release for a full list of changes and further details.

Highlights of this Lucene release include:

Fixed: CommonGramsQueryFilter was producing a disconnected token graph, messing up phrase queries during query parsing

15 February 2017 - Apache Lucene™ 5.5.4 available ¶

The Lucene PMC is pleased to announce the release of Apache Lucene 5.5.4

Apache Lucene is a high-performance, full-featured text search engine library written entirely in Java. It is a technology suitable for nearly any application that requires full-text search, especially cross-platform.

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

https://www.apache.org/dyn/closer.lua/lucene/java/5.5.4

See the CHANGES.txt file included with the release for a full list of changes and further details.

Highlights of this Lucene release include:

Made stored fields reclaim native memory more aggressively

Fixed a potential memory leak with LRUQueryCache and (Span)TermQuery

MmapDirectory's unmapping code is now compatible with Java 9 (EA build 150 and later)

6 February 2017 - Apache Lucene™ 6.4.1 available ¶

The Lucene PMC is pleased to announce the release of Apache Lucene 6.4.1

Apache Lucene is a high-performance, full-featured text search engine library written entirely in Java. It is a technology suitable for nearly any application that requires full-text search, especially cross-platform.

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

https://www.apache.org/dyn/closer.lua/lucene/java/6.4.1

See the CHANGES.txt file included with the release for a full list of changes and further details.

Highlights of this Lucene release include:

Javadocs now build successfully with Java 8u121

Fixed memory leak in the case that TermQuery or SpanTermQuery objects that wrap a TermContext were cached

Fixed native memory leak when the codec is configured with the BEST_COMPRESSION option

AnalyzingInfixSuggester now only opens an IndexWriter when changes need to be applied

23 January 2017 - Apache Lucene™ 6.4.0 available ¶

The Lucene PMC is pleased to announce the release of Apache Lucene 6.4.0

Apache Lucene is a high-performance, full-featured text search engine library written entirely in Java. It is a technology suitable for nearly any application that requires full-text search, especially cross-platform.

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

https://www.apache.org/dyn/closer.lua/lucene/java/6.4.0

See the CHANGES.txt file included with the release for a full list of changes and further details.

Highlights of this Lucene release include:

Lucene's best efforts to un-map memory mapped files with "MMapDirectory" now work with the latest Java9 early access builds

A new similarity "BooleanSimilarity" that gives terms a score that is equal to their query boost

The axiomatic family of similarities (6 in total) based on https://www.eecis.udel.edu/~hfang/pubs/sigir05-axiom.pdf

A new token filter "SynonymGraphFilter" that outputs a correct graph structure for multi-token synonyms at query time

Graph token streams, such as those produced by the "SynonymGraphFilter", are now handled accurately by query parsers

A new collector "DocValuesStatsCollector" gives the ability to compute statistics on DocValues field

It is now possible to filter "SortedDocValues" and "SortedSetDocValues" terms enum with a compiled automaton

The "UnifiedHighlighter" can now highlight fields with queries that don't necessarily refer to that field

DrillSideways can now run queries concurrently

Index sorting now supports sorting on multi-valued fields using MIN, MAX, etc. selectors

Points do not store the implicit split dimension in the 1-dimension case. This saves between 6% memory for the largest types such an InetAddressPoint to 33% for the smaller types such as HalfFloatPoint.

The BKD in-memory index for dimensional points now uses a compressed format, using substantially less RAM in some cases

The BKD writing now buffers each leaf block in heap before writing to disk, giving a small speedup in points-heavy use cases

"TermAutomatonQuery" now rewrites to more efficient queries when possible

Please note, this release cannot be built from source with Java 8 update 121, use an earlier version instead! This is caused by a bug introduced into the Javadocs tool shipped with that update. The workaround was too late for this Lucene release. Of course, you can use the binary artifacts.

8 November 2016 - Apache Lucene™ 6.3.0 available ¶

The Lucene PMC is pleased to announce the release of Apache Lucene 6.3.0

Apache Lucene is a high-performance, full-featured text search engine library written entirely in Java. It is a technology suitable for nearly any application that requires full-text search, especially cross-platform.

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

https://www.apache.org/dyn/closer.lua/lucene/java/6.3.0

See the CHANGES.txt file included with the release for a full list of changes and further details.

Highlights of this Lucene release include:

A brand new "UnifiedHighlighter" derivative of the PostingsHighlighter that can consume offsets from postings, term vectors, or analysis. It can highlight phrases as accurately as the standard Highlighter. Light term vectors can be used with offsets in postings for fast wildcard (MultiTermQuery) highlighting.

SimpleQueryParser now parses '*' to MatchAllDocsQuery

FuzzyQuery now matches all terms within the specified edit distance, even if they are short terms

Points do not store the implicit split dimension in the 1-dimension case. This saves between 6% memory for the largest types such an InetAddressPoint to 33% for the smaller types such as HalfFloatPoint.

Many other changes and bug fixes

20 September 2016 - Apache Lucene™ 6.2.1 available ¶

The Lucene PMC is pleased to announce the release of Apache Lucene 6.2.1

Apache Lucene is a high-performance, full-featured text search engine library written entirely in Java. It is a technology suitable for nearly any application that requires full-text search, especially cross-platform.

Highlights of this Lucene release include:

LUCENE-7417: The standard Highlighter could throw an !IllegalArgumentException when trying to highlight a query containing a degenerate case of a !MultiPhraseQuery with one term.

LUCENE-7440: Document id skipping (!PostingsEnum.advance) could throw an !ArrayIndexOutOfBoundsException exception on large index segments (>1.8B docs) with large skips.

LUCENE-7318: Fix backwards compatibility issues around StandardAnalyzer and its components, introduced with Lucene 6.2.0. The moved classes were restored in their original packages: LowercaseFilter and StopFilter, as well as several utility classes.

The release is available for immediate download at:

https://www.apache.org/dyn/closer.lua/lucene/java/6.2.1

See the CHANGES.txt file included with the release for a full list of changes and further details.

9 September 2016 - Apache Lucene 5.5.3 available ¶

The Lucene PMC is pleased to announce the release of Apache Lucene 5.5.3

Apache Lucene is a high-performance, full-featured text search engine library written entirely in Java. It is a technology suitable for nearly any application that requires full-text search, especially cross-platform.

The release is available for immediate download at:

https://www.apache.org/dyn/closer.lua/lucene/java/5.5.3

See the CHANGES.txt file included with the release for a full list of changes and further details.

25 August 2016 - Apache Lucene 6.2.0 available ¶

The Lucene PMC is pleased to announce the release of Apache Lucene 6.2.0

Apache Lucene is a high-performance, full-featured text search engine library written entirely in Java. It is a technology suitable for nearly any application that requires full-text search, especially cross-platform.

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/mirrors-core-latest-redir.html

Please read CHANGES.txt for a full list of new features and changes: https://lucene.apache.org/core/6_2_0/changes/Changes.html

Highlights of this Lucene release include:

The CREATE_NEW flag is passed when creating a file to ensure Lucene is really write-once

Index numeric ranges (min and max value in a single field) and search by overlapping range

IndexWriter methods return a sequence number indicating effective order of operations across threads

UkrainianMorfologikAnalyzer is a new dictionary based analyzer for the Ukrainian language

The Polygon class can now be created from a GeoJSON string

Compound file creation now verifies checksum of its component files

Index time sorting is now a core feature, and supports dimensional points

StandardAnalyzer is moved to core and is the default analyzer

MatchNoDocsQuery now includes the reason it was created

QueryParser can now be told to not pre-split on whitespace

MMapDirectory tries harder to prevent SIGSEGV if buggy code tries to execute searches after the index was closed, but it's still best effort

MMapDirectory no longer allocates weak references to ease garbage collection

Conjunction (MUST, FILTER) queries are faster

Dimensional points have much faster (~40%) flush time and use less space in the index

25 June 2016 - Apache Lucene 5.5.2 available ¶

The Lucene PMC is pleased to announce the release of Apache Lucene 5.5.2

Apache Lucene is a high-performance, full-featured text search engine library written entirely in Java. It is a technology suitable for nearly any application that requires full-text search, especially cross-platform.

This release contains 11 bug fixes since the 5.5.1 release.

The release is available for immediate download at:

https://www.apache.org/dyn/closer.lua/lucene/java/5.5.2

See the CHANGES.txt file included with the release for a full list of changes and further details.

17 June 2016 - Apache Lucene 6.1.0 available ¶

The Lucene PMC is pleased to announce the release of Apache Lucene 6.1.0.

Apache Lucene is a high-performance, full-featured text search engine library written entirely in Java. It is a technology suitable for nearly any application that requires full-text search, especially cross-platform.

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/mirrors-core-latest-redir.html

Please read CHANGES.txt for a full list of new features and changes: https://lucene.apache.org/core/6_1_0/changes/Changes.html

Lucene 6.1.0 Release Highlights:

New features

Numerous improvements to LatLonPoint, for indexing a latitude/longitude point and searching by polygon, distance or box, or finding nearest neighbors

Geo3D now has simple APIs for creating common shape queries, matching LatLonPoint

Optimizations

Faster indexing and searching of points.

Faster geo-spatial indexing and searching for LatLonPoint, Geo3D and GeoPoint (see http://home.apache.org/~mikemccand/geobench.html )

HardlinkCopyDirectoryWrapper optimizes file copies using hard links

In case of contention, the query cache now prefers returning an uncached Scorer rather than waiting on a lock.

Bug fixes

BooleanQuery could sometimes assign too low scores to ranges of documents that matched a single clause.

Doc values updates could sometimes be applied in the wrong order.

28 May 2016 - Apache Lucene 6.0.1 available ¶

The Lucene PMC is pleased to announce the release of Apache Lucene 6.0.1

Apache Lucene is a high-performance, full-featured text search engine library written entirely in Java. It is a technology suitable for nearly any application that requires full-text search, especially cross-platform.

This release contains 10 bug fixes since the 6.0.0 release, and one new feature:

Spatial-extras DateRangePrefixTree's Calendar is now configurable, to e.g. clear the Gregorian Change Date. Also, toString(cal) is now identical to DateTimeFormatter.ISO_INSTANT.

The release is available for immediate download at:

https://www.apache.org/dyn/closer.lua/lucene/java/6.0.1

See the CHANGES.txt file included with the release for a full list of changes and further details.

5 May 2016 - Apache Lucene 5.5.1 Available ¶

The Lucene PMC is pleased to announce the release of Apache Lucene 5.5.1

Apache Lucene is a high-performance, full-featured text search engine library written entirely in Java. It is a technology suitable for nearly any application that requires full-text search, especially cross-platform.

This release contains one bug fix since the 5.5.0 release. The release is available for immediate download at:

https://www.apache.org/dyn/closer.lua/lucene/core/5.5.1

See the CHANGES.txt file included with the release for a full list of changes and further details.

8 April 2016 - Apache Lucene 6.0.0 Available ¶

The Lucene PMC is pleased to announce the release of Apache Lucene 6.0.0.

The release can be downloaded from https://lucene.apache.org/core/mirrors-core-latest-redir.html

Release Highlights:

Java 8 is the minimum Java version required.

Dimensional points, replacing legacy numeric fields, provides fast and space-efficient support for both single- and multi-dimension range and shape filtering. This includes numeric (int, float, long, double), InetAddress, BigInteger and binary range filtering, as well as geo-spatial shape search over indexed 2D LatLonPoints. See this blog post for details. Dependent classes and modules (e.g., MemoryIndex, Spatial Strategies, Join module) have been refactored to use new point types.

Lucene classification module now works on Lucene Documents using a KNearestNeighborClassifier or SimpleNaiveBayesClassifier.

The spatial module no longer depends on third-party libraries. Previous spatial classes have been moved to a new spatial-extras module.

Spatial4j has been updated to a new 0.6 version hosted by locationtech.

TermsQuery performance boost by a more aggressive default query caching policy.

IndexSearcher's default Similarity is now changed to BM25Similarity.

Easier method of defining custom CharTokenizer instances.

22 February 2016 - Apache Lucene 5.5.0 Available ¶

The Lucene PMC is pleased to announce the release of Apache Lucene 5.5.0

The release can be downloaded from https://lucene.apache.org/core/mirrors-core-latest-redir.html

Release highlights:

JoinUtil.createJoinQuery can now join on numeric doc values fields

BlendedInfixSuggester now has an exponential reciprocal scoring model, to more strongly favor suggestions with matches closer to the beginning

CustomAnalyzer has improved (compile time) type safety

DFISimilarity implements the divergence from independence scoring model

Fully wrap any other merge policy using MergePolicyWrapper

Sandbox geo point queries have graduated into the spatial module, and now use a more efficient binary term encoding for smaller index size, faster indexing, and decreased search-time heap usage

BooleanQuery performs some new query optimizations

TermsQuery constructors are more GC efficient

23 January 2016 - Apache Lucene 5.3.2 Available ¶

The Lucene PMC is pleased to announce the release of Apache Lucene 5.3.2

Apache Lucene is a high-performance, full-featured text search engine library written entirely in Java. It is a technology suitable for nearly any application that requires full-text search, especially cross-platform.

This release contains one bug fix since the 5.3.1 release. The release is available for immediate download at:

https://www.apache.org/dyn/closer.lua/lucene/core/5.3.2

See the CHANGES.txt file included with the release for a full list of changes and further details.

23 January 2016 - Apache Lucene 5.4.1 Available ¶

The Lucene PMC is pleased to announce the release of Apache Lucene 5.4.1

The release can be downloaded from https://lucene.apache.org/core/mirrors-core-latest-redir.html

This release contains an important fix for a corruption bug that was introduced in version 5.4.0. If you are on 5.4.0 and using BINARY, SORTED_NUMERIC or SORTED_SET doc values, upgrading to 5.4.1 is strongly recommended.

See the CHANGES.txt file included with the release for a full list of changes and further details.

14 December 2015 - Apache Lucene 5.4.0 Available ¶

The Lucene PMC is pleased to announce the release of Apache Lucene 5.4.0

The release can be downloaded from https://lucene.apache.org/core/mirrors-core-latest-redir.html

Highlights of this Lucene release include:

API Changes

Query.getBoost and Query.setBoost are deprecated in favour of the new BoostQuery

The Filter class is deprecated in favour of FILTER clauses in a BooleanQuery

DefaultSimilarity has been renamed to ClassicSimilarity to prepare for the move to BM25 in Lucene 6

New features

New Serbian token filter

New DecimalDigitFilter, to fold unicode digits to latin digits

New UnicodeWhitespaceTokenizer, that uses Unicode's whitespace definition and splits on NBSP

New GeoPointDistanceRangeQuery to search for geo-points within a ring

Query caching is now enabled by default in IndexSearcher, use IndexSearcher.setQueryCache(null) to disable

Optimizations

MatchAllDocsQuery got faster

Doc values now use less memory for multi-valued fields and less disk in case of sparse fields

Two-phase iterators got a match cost API so that the costly bits can be checked last

Bug fixes

PatternTokenizer no longer hangs onto heap sized to the maximum input string it's ever seen.

24 September 2015 - Apache Lucene 5.3.1 and Apache Solr 5.3.1 Available ¶

The Lucene PMC is pleased to announce the release of Apache Lucene 5.3.1

The release can be downloaded from https://lucene.apache.org/core/mirrors-core-latest-redir.html

Highlights of this Lucene release include:

Bug Fixes

Remove classloader hack in MorfologikFilter

UsageTrackingQueryCachingPolicy no longer caches trivial queries like MatchAllDocsQuery

Fixed BoostingQuery to rewrite wrapped queries

24 August 2015 - Apache Lucene™ 5.3.0 available ¶

The Lucene PMC is pleased to announce the release of Apache Lucene 5.3.0

Apache Lucene is a high-performance, full-featured text search engine library written entirely in Java. It is a technology suitable for nearly any application that requires full-text search, especially cross-platform.

The release is available for immediate download at: https://www.apache.org/dyn/closer.lua/lucene/java/5.3.0

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/mirrors-core-latest-redir.html

Lucene 5.3.0 Release Highlights:

API Changes

PhraseQuery and BooleanQuery are now immutable

New features

Added a new org.apache.lucene.search.join.CheckJoinIndex class that can be used to validate that an index has an appropriate structure to run join queries

Added a new BlendedTermQuery to blend statistics across several terms

New common suggest API that mirrors Lucene's Query/IndexSearcher APIs for Document based suggester.

IndexWriter can now be initialized from an already open near-real-time or non-NRT reader

Add experimental range tree doc values format and queries, based on a 1D version of the spatial BKD tree, for a faster and smaller alternative to postings-based numeric and binary term filtering. Range trees can also handle values larger than 64 bits.

Geo-related features and improvements

Added GeoPointField, GeoPointInBBoxQuery, GeoPointInPolygonQuery for simple "indexed lat/lon point in bbox/shape" searching

Added experimental BKD geospatial tree doc values format and queries, for fast "bbox/polygon contains lat/lon points"

Use doc values to post-filter GeoPointField hits that fall in boundary cells, resulting in smaller index, faster searches and less heap used for each query

Optimizations

Reduce RAM usage of FieldInfos, and speed up lookup by number, by using an array instead of TreeMap except in very sparse cases

Faster intersection of the terms dictionary with very finite automata, which can be generated eg. by simple regexp queries

Various bugfixes and optimizations since the 5.2.0 release.

See the CHANGES.txt file included with the release for a full list of changes and further details.

15 June 2015 - Apache Lucene™ 5.2.1 available ¶

The Lucene PMC is pleased to announce the release of Apache Lucene 5.2.1

Apache Lucene is a high-performance, full-featured text search engine library written entirely in Java. It is a technology suitable for nearly any application that requires full-text search, especially cross-platform.

This release contains various bug fixes and optimizations since the 5.2.0 release.

The release is available for immediate download at: https://www.apache.org/dyn/closer.lua/lucene/java/5.2.1

Lucene 5.2.1 includes 3 bug fixes:

Fix class loading deadlock relating to Codec initialization, default codec and SPI discovery.

NRT readers now reflect a new commit even if there is no change to the commit user data

Queries now get a dummy Similarity when scores are not needed in order to not load unnecessary information like norms

See the CHANGES.txt file included with the release for a full list of changes and further details.

7 June 2015 - Lucene Core 5.2.0 Available ¶

The Lucene PMC is pleased to announce the release of Apache Lucene 5.2.0

Apache Lucene is a high-performance, full-featured text search engine library written entirely in Java. It is a technology suitable for nearly any application that requires full-text search, especially cross-platform.

The release is available for immediate download at: https://www.apache.org/dyn/closer.lua/lucene/java/5.2.0

Lucene 5.2.0 release highlights:

Span queries now share document conjunction/intersection code with boolean queries, and use two-phased iterators for faster intersection by avoiding loading positions in certain cases.

Added two-phase support to SpanNotQuery, and SpanPositionCheckQuery and its subclasses: SpanPositionRangeQuery, SpanPayloadCheckQuery, SpanNearPayloadCheckQuery, SpanFirstQuery.

Added a new query time join to the join module that uses global ordinals, which is faster for subsequent joins between reopens.

New CompositeSpatialStrategy combines speed of RPT with accuracy of SDV. Includes optimized Intersect predicate to avoid many geometry checks. Uses TwoPhaseIterator.

New LimitTokenOffsetFilter that limits tokens to those before a configured maximum start offset.

New spatial PackedQuadPrefixTree, a generally more efficient choice than QuadPrefixTree, especially for high precision shapes. When used, you should typically disable RPT's pruneLeafyBranches option.

Expressions now support bindings keys that look like zero arg functions

Add SpanWithinQuery and SpanContainingQuery that return spans inside of / containing another spans.

New Spatial "Geo3d" API with partial Spatial4j integration. It is a set of shapes implemented using 3D planar geometry for calculating spatial relations on the surface of a sphere. Shapes include Point, BBox, Circle, Path (buffered line string), and Polygon.

Various bugfixes and optimizations since the 5.1.0 release.

See the CHANGES.txt file included with the release for a full list of changes and further details.

14 April 2015 - Lucene Core 5.1.0 Available ¶

The Lucene PMC is pleased to announce the release of Apache Lucene 5.1.0

Apache Lucene is a high-performance, full-featured text search engine library written entirely in Java. It is a technology suitable for nearly any application that requires full-text search, especially cross-platform.

The release is available for immediate download at: https://www.apache.org/dyn/closer.lua/lucene/java/5.1.0

Lucene 5.1.0 includes 9 new features, 10 bug fixes, and 24 optimizations / other changes from 18 unique contributors.

See the CHANGES.txt file included with the release for a full list of changes and further details.

5 March 2015 - Lucene Core 4.10.4 Available ¶

The Lucene PMC is pleased to announce the release of Apache Lucene 4.10.4

Apache Lucene is a high-performance, full-featured text search engine library written entirely in Java. It is a technology suitable for nearly any application that requires full-text search, especially cross-platform.

The release is available for immediate download at: https://www.apache.org/dyn/closer.lua/lucene/java/4.10.4

Lucene 4.10.4 includes 13 bug fixes.

See the CHANGES.txt file included with the release for a full list of changes and further details.

20 February 2015 - Lucene™ 5.0.0 core available ¶

The Lucene PMC is pleased to announce the release of Apache Lucene 5.0.

Apache Lucene is a high-performance, full-featured text search engine library written entirely in Java. It is a technology suitable for nearly any application that requires full-text search, especially cross-platform.

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/mirrors-core-latest-redir.html

Lucene 5.0 Release Highlights:

Stronger index safety

All file access now uses Java’s NIO.2 APIs which give Lucene stronger index safety in terms of better error handling and safer commits.

Every Lucene segment now stores a unique id per-segment and per-commit to aid in accurate replication of index files.

During merging, IndexWriter now always checks the incoming segments for corruption before merging. This can mean, on upgrading to 5.0.0, that merging may uncover long-standing latent corruption in an older 4.x index.

Reduced heap usage

Lucene now supports random-writable and advance-able sparse bitsets (RoaringDocIdSet and SparseFixedBitSet), so the heap required is in proportion to how many bits are set, not how many total documents exist in the index.

Heap usage during IndexWriter merging is also much lower with the new Lucene50Codec, since doc values and norms for the segments being merged are no longer fully loaded into heap for all fields; now they are loaded for the one field currently being merged, and then dropped.

The default norms format now uses sparse encoding when appropriate, so indices that enable norms for many sparse fields will see a large reduction in required heap at search time.

5.0 has a new API to print a tree structure showing a recursive breakdown of which parts are using how much heap.

Other features

FieldCache is gone (moved to a dedicated UninvertingReader in the misc module). This means when you intend to sort on a field, you should index that field using doc values, which is much faster and less heap consuming than FieldCache.

Tokenizers and Analyzers no longer require Reader on init.

NormsFormat now gets its own dedicated NormsConsumer/Producer

SortedSetSortField, used to sort on a multi-valued field, is promoted from sandbox to Lucene's core.

PostingsFormat now uses a "pull" API when writing postings, just like doc values. This is powerful because you can do things in your postings format that require making more than one pass through the postings such as iterating over all postings for each term to decide which compression format it should use.

New DateRangeField type enables Indexing and searching of date ranges, particularly multi-valued ones.

A new ExitableDirectoryReader extends FilterDirectoryReader and enables exiting requests that take too long to enumerate over terms.

Suggesters from multi-valued field can now be built as DocumentDictionary now enumerates each value separately in a multi-valued field.

ConcurrentMergeScheduler detects whether the index is on SSD or not and does a better job defaulting its settings. This only works on Linux for now; other OS's will continue to use the previous defaults (tuned for spinning disks).

Auto-IO-throttling has been added to ConcurrentMergeScheduler, to rate limit IO writes for each merge depending on incoming merge rate.

CustomAnalyzer has been added that allows to configure analyzers like you do in Solr's index schema. This class has a builder API to configure Tokenizers, TokenFilters, and CharFilters based on their SPI names and parameters as documented by the corresponding factories.

Memory index now supports payloads.

Added a filter cache with a usage tracking policy that caches filters based on frequency of use.

The default codec has an option to control BEST_SPEED or BEST_COMPRESSION for stored fields.

Stored fields are merged more efficiently, especially when upgrading from previous versions or using SortingMergePolicy

NOTE: Lucene 5 no longer supports the Lucene 3.x index format. Opening indexes will result in IndexFormatTooOldException. It is recommended to either reindex all your data, or upgrade the old indexes with the IndexUpgrader tool of latest Lucene 4 version (4.10.x). Those indexes can then be read (see next section) with Lucene 5.

To read more about the changes, also see: http://blog.mikemccandless.com/2014/11/apache-lucene-500-is-coming.html

Please read CHANGES.txt and MIGRATE.txt for a full list of new features and notes on upgrading.

29 December 2014 - Lucene Core 4.10.3 Available ¶

The Lucene PMC is pleased to announce the release of Apache Lucene 4.10.3

Apache Lucene is a high-performance, full-featured text search engine library written entirely in Java. It is a technology suitable for nearly any application that requires full-text search, especially cross-platform.

The release is available for immediate download at: https://lucene.apache.org/core/mirrors-core-latest-redir.html

Lucene 4.10.3 includes 12 bug fixes.

See the CHANGES.txt file included with the release for a full list of changes and further details, and Happy Holidays!

31 October 2014 - Lucene Core 4.10.2 Available ¶

The Lucene PMC is pleased to announce the release of Apache Lucene 4.10.2

Apache Lucene is a high-performance, full-featured text search engine library written entirely in Java. It is a technology suitable for nearly any application that requires full-text search, especially cross-platform.

The release is available for immediate download at: https://lucene.apache.org/core/mirrors-core-latest-redir.html

Lucene 4.10.2 includes 2 bug fixes.

See the CHANGES.txt file included with the release for a full list of changes and further details, and Happy Halloween!

29 September 2014 - Lucene Core 4.10.1 Available ¶

The Lucene PMC is pleased to announce the release of Apache Lucene 4.10.1

Apache Lucene is a high-performance, full-featured text search engine library written entirely in Java. It is a technology suitable for nearly any application that requires full-text search, especially cross-platform.

The release is available for immediate download at: https://lucene.apache.org/core/mirrors-core-latest-redir.html

Lucene 4.10.1 includes 7 bug fixes.

See the CHANGES.txt file included with the release for a full list of changes and further details.

22 September 2014 - Lucene Core 4.9.1 Available ¶

The Lucene PMC is pleased to announce the release of Apache Lucene 4.9.1

Apache Lucene is a high-performance, full-featured text search engine library written entirely in Java. It is a technology suitable for nearly any application that requires full-text search, especially cross-platform.

The release is available for immediate download at: https://lucene.apache.org/core/mirrors-core-latest-redir.html

Lucene 4.9.1 includes 7 bug fixes.

See the CHANGES.txt file included with the release for a full list of changes and further details.

3 September 2014 - Lucene Core 4.10.0 Available ¶

The Lucene PMC is pleased to announce the release of Apache Lucene 4.10.0

Apache Lucene is a high-performance, full-featured text search engine library written entirely in Java. It is a technology suitable for nearly any application that requires full-text search, especially cross-platform.

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/mirrors-core-latest-redir.html

See the CHANGES.txt file included with the release for a full list of details.

Lucene 4.10.0 Release Highlights:

New TermAutomatonQuery using an automaton for proximity queries. http://blog.mikemccandless.com/2014/08/a-new-proximity-query-for-lucene-using.html

New OrdsBlockTree terms dictionary supporting ord lookup.

Simplified matchVersion handling for Analyzers with new setVersion method, as well as Analyzer constructors not requiring Version.

Fixed possible corruption when opening a 3.x index with NRT reader.

Fixed edge case in StandardTokenizer that caused extremely slow parsing times with long text which partially matched grammar rules.

25 June 2014 - Lucene Core 4.9.0 Available ¶

The Lucene PMC is pleased to announce the release of Apache Lucene 4.9.0

Apache Lucene is a high-performance, full-featured text search engine library written entirely in Java. It is a technology suitable for nearly any application that requires full-text search, especially cross-platform.

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/mirrors-core-latest-redir.html

See the CHANGES.txt file included with the release for a full list of details.

Lucene 4.9.0 Release Highlights:

New Terms.getMin/Max methods to retrieve the lowest and highest terms per field.

New IDVersionPostingsFormat, optimized for ID lookups that associate a monotonically increasing version per ID.

Atomic update of a set of doc values fields.

Numerous optimizations for doc values search-time performance.

New (default) Lucene49NormsFormat to better compress certain cases such as very short fields.

New SORTED_NUMERIC docvalues type for efficient processing of multi-valued numeric fields.

Indexer passes previous token stream for easier reuse.

MoreLikeThis accepts multiple values per field.

All classes that estimate their RAM usage now implement a new Accountable interface.

Lucene files are now written by (File)OutputStream on all platforms, completely disallowing seeking with simplified IO APIs.

Improve the confusing error message when MMapDirectory cannot create a new map.

20 May 2014 - Lucene Core 4.8.1 Available ¶

The Lucene PMC is pleased to announce the release of Apache Lucene 4.8.1

Apache Lucene is a high-performance, full-featured text search engine library written entirely in Java. It is a technology suitable for nearly any application that requires full-text search, especially cross-platform.

The release is available for immediate download at: https://lucene.apache.org/core/mirrors-core-latest-redir.html

Lucene 4.8.1 includes 15 bug fixes.

See the CHANGES.txt file included with the release for a full list of changes and further details.

28 April 2014 - Apache Lucene 4.8.0 Available ¶

The Lucene PMC is pleased to announce the release of Apache Lucene 4.8.0

Apache Lucene is a high-performance, full-featured text search engine library written entirely in Java. It is a technology suitable for nearly any application that requires full-text search, especially cross-platform.

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/mirrors-core-latest-redir.html

See the CHANGES.txt file included with the release for a full list of details.

Lucene 4.8.0 Release Highlights:

Apache Lucene now requires Java 7 or greater (recommended is Oracle Java 7 or OpenJDK 7, minimum update 55; earlier versions have known JVM bugs affecting Lucene).

Apache Lucene is fully compatible with Java 8.

All index files now store end-to-end checksums, which are now validated during merging and reading. This ensures that corruptions caused by any bit-flipping hardware problems or bugs in the JVM can be detected earlier. For full detection be sure to enable all checksums during merging (it's disabled by default).

Lucene has a new Rescorer/QueryRescorer API to perform second-pass rescoring or reranking of search results using more expensive scoring functions after first-pass hit collection.

AnalyzingInfixSuggester now supports near-real-time autosuggest.

Simplified impact-sorted postings (using SortingMergePolicy and EarlyTerminatingCollector) to use Lucene's Sort class to express the sort order.

Bulk scoring and normal iterator-based scoring were separated, so some queries can do bulk scoring more effectively.

Switched to MurmurHash3 to hash terms during indexing.

IndexWriter now supports updating of binary doc value fields.

HunspellStemFilter now uses 10 to 100x less RAM. It also loads all known OpenOffice dictionaries without error.

Lucene now also fsyncs the directory metadata on commits, if the operating system and file system allow it (Linux, MacOSX are known to work).

Lucene now uses Java 7 file system functions under the hood, so index files can be deleted on Windows, even when readers are still open.

A serious bug in NativeFSLockFactory was fixed, which could allow multiple IndexWriters to acquire the same lock. The lock file is no longer deleted from the index directory even when the lock is not held.

Various bugfixes and optimizations since the 4.7.2 release.

15 April 2014 - Lucene Core 4.7.2 Available ¶

The Lucene PMC is pleased to announce the release of Apache Lucene 4.7.2

Apache Lucene is a high-performance, full-featured text search engine library written entirely in Java. It is a technology suitable for nearly any application that requires full-text search, especially cross-platform.

The release is available for immediate download at: https://lucene.apache.org/core/mirrors-core-latest-redir.html

Lucene 4.7.2 includes 2 bug fixes, including a possible index corruption with near-realtime search.

See the CHANGES.txt file included with the release for a full list of changes and further details.

2 April 2014 - Lucene Core 4.7.1 Available ¶

The Lucene PMC is pleased to announce the release of Apache Lucene 4.7.1

Apache Lucene is a high-performance, full-featured text search engine library written entirely in Java. It is a technology suitable for nearly any application that requires full-text search, especially cross-platform.

The release is available for immediate download at: https://lucene.apache.org/core/mirrors-core-latest-redir.html

Lucene 4.7.1 includes 14 bug fixes; one build improvement; and one change in runtime behavior: AutomatonQuery.equals is no longer implemented as "accepts same language".

See the CHANGES.txt file included with the release for a full list of changes and further details.

12 March 2014 - Apache Lucene 4.8 will require Java 7 ¶

The Apache Lucene committers decided with a large majority on the vote to require Java 7 for the next minor release of Apache Lucene (version 4.8)!

The next release will also contain some improvements for Java 7:

Better file handling (especially on Windows) in the directory implementations. Files can now be deleted on windows, although the index is still open - like it was always possible on Unix environments (delete on last close semantics).

Speed improvements in sorting comparators: Sorting now uses Java 7's own comparators for integer and long sorts, which are highly optimized by the Hotspot VM.

If you want to stay up-to-date with Lucene and Solr, you should upgrade your infrastructure to Java 7. Please be aware that you must use at least use Java 7u1. The recommended version at the moment is Java 7u25. Later versions like 7u40, 7u45,... have a bug causing index corrumption. Ideally use the Java 7u60 prerelease, which has fixed this bug. Once 7u60 is out, this will be the recommended version. In addition, there is no more Oracle/BEA JRockit available for Java 7, use the official Oracle Java 7. JRockit was never working correctly with Lucene/Solr (causing index corrumption), so this should not be an issue. Please also review our list of JVM bugs: http://wiki.apache.org/lucene-java/JavaBugs

EDIT (as of 15 April 2014): The recently released Java 7u55 fixes the above bug causing index corrumption. This version is now the recommended version for running Apache Lucene.

26 February 2014 - Lucene Core 4.7 Available ¶

The Lucene PMC is pleased to announce the release of Apache Lucene 4.7

Apache Lucene is a high-performance, full-featured text search engine library written entirely in Java. It is a technology suitable for nearly any application that requires full-text search, especially cross-platform.

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/mirrors-core-latest-redir.html

See the CHANGES.txt file included with the release for a full list of details.

Lucene 4.7 Release Highlights: