Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: Solr 10: no Apache HttpClient

...

They are listed here separately on this page: Deprecations

Solr

...

Autumn 2020

...

Jira
serverASF JIRA
columnskey,summary,type,created,updated,due,assignee,reporter,priority,status,resolution
serverId5aa69414-a9e9-3523-82ec-879b028fb15b
keySOLR-14615

...

Solr 8.8

End of 2020? Last version before 9.0?

10+ Roadmap

TBD: Ongoing discussion on Overseer vs Distributed State Updates.  Efficient state updates.

Apache Curator; usage TBD.

OpenAPI: complete coverage.

Apache HttpClient no longer included with Solr; not a dependency of SolrJ either (will be an optional choice for some time maybe)

No longer in 10:

  • Apache HttpClient
  • Custom V2 API annotations/framework – use JAX-RS instead. 

Solr 9x

ItemDescriptionContributorsThemeJira
Alternate SolrJ APIs without using NamedList/SimpleOrderedMap/MapGet rid of concrete classes such as NamedList,SimpleOrderedMap, Map, etc and build our public APIs with interfacesNoble PaulClean-API
New Cluster APIStandard set of APIs which consists of only interfaces. We should ensure that They are used wherever possible in server/client code. We should expose these interfaces to our plugins. They should be well -documented and we must always strive to maintain backward compatibility on these interfaces between versionsNoble PaulClean-APISOLR-14680
New Remote Call APIRemote Calls should have simple constructs and they must be public interfaces. This should be used in all inter-node/client-server communicationsNoble PaulClean-APISOLR-14712
Multi-threaded search (SOLR-13350)

Multi threaded search across multiple segments at once, using CollectorManagers

Jira
serverASF JIRA
columnskey,summary,type,created,updated,due,assignee,reporter,priority,status,resolution
serverId5aa69414-a9e9-3523-82ec-879b028fb15b
keySOLR-13350

Ishan Chattopadhyaya, Atri SharmaOptimization
SIP-9

Advanced Query parser and supporting lucene filters

Jira
serverASF JIRA
columnskey,summary,type,created,updated,due,assignee,reporter,priority,status,resolution
serverId5aa69414-a9e9-3523-82ec-879b028fb15b
keySOLR-14597

Mike Nibeck (LOC contributor), Gus HeckFeature

Establish Solr TLP

The git repo is split, gradle build adapted, release process separated etc. See Solr TLP needed changes for all related tasks.

The 9.0 release will be the first release after the TLP split.

Lucene will first release v9.0.0 without Solr, and then Solr can independently release Solr 9.0 with Lucene 9.0 when Solr is ready for it.

Solr 9.0

HTTP 1 → HTTP 2 Switch the remaining HTTP 1 usage within Solr to HTTP 2.  Apache HttpClient should no longer be used on the server.Smiley

Modularize SolrJSolrJ should be lighter-weight (smaller) for more users; fewer dependencies.  Add modules for some dependencies and functionality.Smiley, Jan, Houston, others

Use JAX-RSJAX-RS based V2 API definitions; use more and more.  Jason

Solr 9.0

Early 2021. First release as TLP. The theme of this release is to use Lucene 9.0 and to introduce some major frameworks.

...

Andrzej, Ilan, Noble
ItemDescriptionContributorsThemeJira
First party packages & Slim Solr distributionSolr should have first party packages, and a slim Solr tarball that doesn't have the first party packagesIshan, Noble, Jan, et. al.Lean Solr Core

Jira
serverASF JIRA
columnskey,summary,type,created,updated,due,assignee,reporter,priority,status,resolution
serverId5aa69414-a9e9-3523-82ec-879b028fb15b
keySOLR-14688

V2 API to be the defaultRef guide docs should use V2, where necessary we build V2 APIs, switch SolrJ to use V2 APIs, etc.
Usability
Autoscaling / Replica assignment V2

A new pluggable framework replaces current autoscaling


Andrzej, Ilan, NobleLean Solr Core
Jira
serverASF JIRA
columnskey,summary,type,created,updated,due,assignee,reporter,priority,status,resolution
serverId5aa69414-a9e9-3523-82ec-879b028fb15b
keySOLR-14749

Jira
serverASF JIRA
columnskey,summary,type,created,updated,due,assignee,reporter,priority,status,resolution
serverId5aa69414-a9e9-3523-82ec-879b028fb15b
keySOLR-14613

Lean Solr Core

SOLR-14749

SOLR-14613

HDFS moved away from Solr-CoreBuild a first party package out of HDFS supportIstvan Farkas, GezapetiLean Solr Core
Remove Ant support



Tech-debt

Jira
serverASF JIRA
columnskey,summary,type,created,updated,due,assignee,reporter,priority,status,resolution
serverId5aa69414-a9e9-3523-82ec-879b028fb15b
keyLUCENE-9433

Tech-debt

LUCENE-9433

Index Lifecycle ManagementAutomatically move indices between hot, warm and cold phasesAtri SharmaFeature
POJOs instead of loosely typed objectsStart using POJOs/interfaces wherever possible in public APIs where ever possibleNoble Paul

Remove Filter.java from SolrFilter.java is a legacy relic from earlier Lucene days.  Solr uses Filter in a variety of places where it can use other constructs or in some cases we need to make new constructs.  In some cases like TwoPhaseIterator, this is an optimization.David SmileyTech-debt

Jira
serverASF JIRA
columnskey,summary,type,created,updated,due,assignee,reporter,priority,status,resolution
serverId5aa69414-a9e9-3523-82ec-879b028fb15b
keySOLR-12336

Solr 8.9

...

Soon after 9.0. The main theme of this release is to solidify all the new frameworks.

This release may still depend on Lucene 9.0 if we wish.

...

Last version before 9.0?

ItemDescriptionContributorsThemeJira
Alternate SolrJ APIs without using NamedList/SimpleOrderedMap/MapGet rid of concrete classes such as NamedList,SimpleOrderedMap, Map, etc and build our public APIs with interfacesNoble PaulClean-API

Jira
serverASF JIRA
columnskey,summary,type,created,updated,due,assignee,reporter,priority,status,resolution
serverId5aa69414-a9e9-3523-82ec-879b028fb15b
keySOLR-14730

New Cluster APIStandard set of APIs which consists of only interfaces. We should ensure that They are used wherever possible in server/client code. We should expose these interfaces to our plugins. They should be well -documented and we must always strive to maintain backward compatibility on these interfaces between versionsNoble PaulClean-API

Jira
serverASF JIRA
columnskey,summary,type,created,updated,due,assignee,reporter,priority,status,resolution
serverId5aa69414-a9e9-3523-82ec-879b028fb15b
keySOLR-14680

New Remote Call APIRemote Calls should have simple constructs and they must be public interfaces. This should be used in all inter-node/client-server communicationsNoble PaulClean-API

Jira
serverASF JIRA
columnskey,summary,type,created,updated,due,assignee,reporter,priority,status,resolution
serverId5aa69414-a9e9-3523-82ec-879b028fb15b
keySOLR-14712

Multi-threaded search (SOLR-13350)

Multi threaded search across multiple segments at once, using CollectorManagers


Ishan Chattopadhyaya, Atri SharmaOptimization

Jira
serverASF JIRA
columnskey,summary,type,created,updated,due,assignee,reporter,priority,status,resolution
serverId5aa69414-a9e9-3523-82ec-879b028fb15b
keySOLR-13350

SIP-9

Advanced Query parser and supporting lucene filters


Mike Nibeck (LOC contributor), Gus HeckFeature

Jira
serverASF JIRA
columnskey,summary,type,created,updated,due,assignee,reporter,priority,status,resolution
serverId5aa69414-a9e9-3523-82ec-879b028fb15b
keySOLR-14597

...