The following notes describe changes to Solr in recent releases that you should be aware of before upgrading.
These notes are meant to highlight the biggest changes that may impact the largest number of implementations. It is not a comprehensive list of all changes to Solr in any release.
When planning your Solr upgrade, consider the customizations you have made to your system and review the CHANGES.txt file found in your Solr package. That file includes all of the changes and updates that may effect your existing implementation.
Detailed steps for upgrading a Solr cluster can be found in the section Upgrading a Solr Cluster.
Upgrading from Solr 7.0
Users should be aware of the following major changes from v7.0:
-
The feature to automatically add replicas if a replica goes down, previously available only when storing indexes in HDFS, has been ported to the autoscaling framework. Due to this,
autoAddReplicasis now available to all users even if their indexes are on local disks.Existing users of this feature should not have to change anything. However, they should note these changes:
-
Behavior: Changing the
autoAddReplicasproperty from disabled (false) to enabled (true) using MODIFYCOLLECTION API no longer replaces down replicas for the collection immediately. Instead, replicas are only added if a node containing them went down whileautoAddReplicaswas enabled. The parametersautoReplicaFailoverBadNodeExpirationandautoReplicaFailoverWorkLoopDelayare no longer used. -
Deprecations: Enabling/disabling autoAddReplicas cluster-wide with the API will be deprecated; use suspend/resume trigger APIs with
name=".auto_add_replicas"instead.More information about the changes to this feature can be found in the section SolrCloud Automatically Adding Replicas.
-
-
Shard and cluster metric reporter configuration now require a class attribute.
-
If a reporter configures the
group="shard"attribute then please also configure theclass="org.apache.solr.metrics.reporters.solr.SolrShardReporter"attribute. -
If a reporter configures the
group="cluster"attribute then please also configure theclass="org.apache.solr.metrics.reporters.solr.SolrClusterReporter"attribute.See the section Shard and Cluster Reporters for more information.
-
-
All Stream Evaluators in
solrj.io.evalhave been refactored to have a simpler and more robust structure. This simplifies and condenses the code required to implement a new Evaluator and makes it much easier for evaluators to handle differing data types (primitives, objects, arrays, lists, and so forth). -
In the ReplicationHandler, the
master.commitReserveDurationsub-element is deprecated. Instead please configure a directcommitReserveDurationelement for use in all modes (master, slave, cloud). -
The
RunExecutableListenerwas removed for security reasons. If you want to listen to events caused by updates, commits, or optimize, write your own listener as native Java class as part of a Solr plugin. -
In the XML query parser (
defType=xmlparseror{!xmlparser … }) the resolving of external entities is now disallowed by default.
Upgrading from Any 6.x Release
The upgrade from Solr 6.x to Solr 7 introduces several major changes that you should be aware of before upgrading. Please do a thorough review of the section Major Changes in Solr 7 before starting your upgrade.
Upgrading from Older Versions of Solr
Users upgrading from versions of Solr prior to 6.x are strongly encouraged to consult CHANGES.txt for the details of all changes since the version they are upgrading from.
A summary of the significant changes between Solr 5.x and Solr 6.0 can be found in the Major Changes from Solr 5 to Solr 6 section.
We welcome feedback on Solr documentation. However, we cannot provide application support via comments. If you need help, please send a message to the Solr User mailing list.