You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 35 Next »

The Solr PMC is pleased to announce the release of Apache Solr 9.0

Solr is the popular, blazing fast, open source search platform from the Apache Solr project. Its major features include powerful full-text search, hit highlighting, faceted search and analytics, rich document parsing, geospatial search, extensive REST APIs as well as parallel SQL. Solr is enterprise grade, secure and highly scalable, providing fault tolerant distributed search and indexing, and powers the search and navigation features of many of the world's largest internet sites.

The release is available for immediate download at:

https://solr.apache.org/downloads.html

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

https://solr.apache.org/docs/9_0_0/changes/Changes.html

This is a major-version release with breaking changes. The highlights below is not the full list. Please consult the "Solr Upgrade Notes" when planning an upgrade:

https://solr.apache.org/guide/solr/9_0/upgrade-notes/solr-upgrade-notes.html <--- FIX LINK

Solr 9.0.0 Release Highlights:

  • Minimum Java version supported: Java 11

  • Powered by Lucene 9.0, bringing in new analyzers and better space efficiency of postings

Querying

  • Dense Vector "Neural" Search through DenseVectorField fieldType and Knn Query Parser  ← Explain

Security

  • Certificate Authentication Plugin: Supports loading the certificate subject via a user principal into the AuthorizationContext and enables end-to-end use of client certificates for Authentication and Authorization
  • Improved security when using PKI Authentication plugin
  • Upgrade to ZK 3.7 allows for TLS communication between Solr and Zookeeper
  • All request handlers support security permissions for access
  • Ability to disable admin UI through a system property
  • The property blockUnknown in the BasicAuthPlugin and the JWTAuthPlugin now defaults to true instead of false.
  • The allow-list defining allowed URLs for the shards parameter is not in the shardHandler configuration anymore. It is defined by the allowUrls top-level property of the solr.xml file. For more information, see Format of solr.allowUrls documentation
  • Solr now runs with the Java security manager enabled by default. Hadoop users may need to disable this
  • Solr embedded zookeeper only binds to localhost by default. See Upgrade Notes for how to obtain old behavior.
  • Dependency updates - A lot of dependency updates make Solr overall much more secure.

Stability and Scalability

  • Rate limiting provides a way to throttle update and search requests based on usage metrics.
  • Task management interface allows declaring tasks as cancellable and trackable.
  • Ability to specify node roles in Solr. This release supports 'Overseer' and 'Data' roles out of the box.
  • New API for pluggable replica assignment implementations that replaces the auto-scaling framework.
  • An option to enable distributed processing of cluster state updates and Collection and Config API call processing without relying on the Overseer.

Build and Docker

  • Solr is now built and released independently from Lucene (separate Apache projects)
  • Build system switched to Gradle, no longer uses Ant + Ivy
  • Docker image creation is now a part of the Apache Solr Github repo
  • Docker image documentation is now a part of the reference guide
  • Official Docker image upgraded to use JDK17 (by Eclipse Temurin) and ability to create functionally identical local image

Other

  • Admin UI support for SQL Querying
  • Contrib modules are now just "modules". You can easily enable module(s) through environment variable SOLR_MODULES
  • Features lifted out as separate modules are: HDFS, Hadoop-Auth, Scripting and JWT-Auth
  • The "dist" folder in the release is gone. Module jars are now inside respective module's lib/ folder
  • Metrics handler only depends on SolrJ instead of core and has its own log4j2.xml now so it doesn’t share Solr’s logging config
  • SolrJ class CloudSolrClient now supports HTTP2. It has a new Builder. See CloudLegacySolrClient (deprecated) for the 8.x version of this class
  • Jetty Request log is now enabled by default, i.e. logging every request

Deprecations and Removals

  • The Data Import Handler (DIH) is an independent project now; it is no longer a part of Solr.
  • No more support for clusterstate.json and MIGRATESTATE API has been removed. If your collections use clusterstate.json, please refer to the Upgrade Notes
  • Auto scaling framework has been removed. Please refer to replica placement plugins for alternate options
  • LegacyBM25SimilarityFactory has been removed
  • VelocityResponseWriter is an independent project now; it is no longer a part of Solr. This encompasses all previously included /browse and wt=velocity examples.
  • Legacy SolrCache implementations (LRUCache, LFUCache, FastLRUCache) have been removed. Users have to modify their existing configurations to not mention the class in order to get the default.
  • Cross Data Center Replication has been removed in this release.
  • SolrJ clients like HttpSolrClient and LBHttpSolrClient that lacked HTTP2 support have been deprecated. The old CloudSolrClient has been renamed as CloudLegacySolrClient and deprecated.



  • No labels