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

Compare with Current View Page History

« Previous Version 23 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

Since this is a major-version release with breaking changes, please consult the "Solr Upgrade Notes" when planning an upgrade:

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

Solr 9.0.0 Release Highlights:

  • Minimum Java version supported: Java 11

  • Powered by Lucene 9.0

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
  • Jetty Request log is now enabled by default
  • 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. This change is backward incompatible. If you need the pre-9.0 default behavior, you need to explicitly set blockUnknown:false in security.json.
  • 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. Administrators that need to run Solr with Hadoop will need to disable this feature by setting SOLR_SECURITY_MANAGER_ENABLED=false in the environment or in one of the Solr init scripts. 
  • Solr embedded zookeeper only binds to localhost by default. This embedded zookeeper should not be used in production. If you rely upon the previous behavior, then you can change the clientPortAddress in solr/server/solr/zoo.cfg
  • 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

  • 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
  • Solr Docker image documentation is now a part of the reference guide
  • Official image upgraded to use JDK17 (by Eclipse Temurin) and ability to create functionally identical local image

Others

  • Admin UI support for SQL Querying
  • HDFS code is now an independent module
  • 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

Deprecations and Removal

  • 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.
  • SolrJ class CloudSolrClient, as it existed, has been renamed as CloudLegacySolrClient and deprecated. CloudSolrClient is re-introduced with HTTP2 support, including a new Builder. See Upgrade Notes



  • No labels