# Deprecated API

## Contents

- Deprecated Packages
- Deprecated Interfaces
- Deprecated Classes
- Deprecated Enums
- Deprecated Exceptions
- Deprecated Fields
- Deprecated Methods
- Deprecated Constructors

Deprecated Packages
Package and Description
org.apache.solr.client.solrj.cloud.autoscaling to be removed in Solr 9.0 (see SOLR-14656)

Deprecated Interfaces
Interface and Description
org.apache.solr.common.params.AutoScalingParams to be removed in Solr 9.0 (see SOLR-14656)
org.apache.solr.client.solrj.cloud.autoscaling.Variable to be removed in Solr 9.0 (see SOLR-14656)

Deprecated Classes
Class and Description
org.apache.solr.client.solrj.cloud.autoscaling.AutoScalingConfig to be removed in Solr 9.0 (see SOLR-14656)
org.apache.solr.client.solrj.cloud.autoscaling.Cell to be removed in Solr 9.0 (see SOLR-14656)
org.apache.solr.client.solrj.cloud.autoscaling.Clause to be removed in Solr 9.0 (see SOLR-14656)
org.apache.solr.client.solrj.impl.CloudSolrClient.RouteResponse since Solr 8.0
org.apache.solr.client.solrj.cloud.autoscaling.Condition to be removed in Solr 9.0 (see SOLR-14656)
org.apache.solr.client.solrj.cloud.autoscaling.CoresVariable to be removed in Solr 9.0 (see SOLR-14656)
org.apache.solr.client.solrj.cloud.autoscaling.DelegatingCloudManager to be removed in Solr 9.0 (see SOLR-14656)
org.apache.solr.client.solrj.cloud.autoscaling.DelegatingClusterStateProvider to be removed in Solr 9.0 (see SOLR-14656)
org.apache.solr.client.solrj.cloud.autoscaling.DelegatingDistribStateManager to be removed in Solr 9.0 (see SOLR-14656)
org.apache.solr.client.solrj.cloud.autoscaling.DelegatingNodeStateProvider to be removed in Solr 9.0 (see SOLR-14656)
org.apache.solr.client.solrj.cloud.autoscaling.FreeDiskVariable to be removed in Solr 9.0 (see SOLR-14656)
org.apache.solr.client.solrj.impl.LBHttpSolrClient.Req use `LBSolrClient.Req` instead
org.apache.solr.client.solrj.impl.LBHttpSolrClient.Rsp use `LBSolrClient.Rsp` instead
org.apache.solr.client.solrj.cloud.autoscaling.MoveReplicaSuggester to be removed in Solr 9.0 (see SOLR-14656)
org.apache.solr.client.solrj.cloud.autoscaling.NodeVariable to be removed in Solr 9.0 (see SOLR-14656)
org.apache.solr.client.solrj.cloud.autoscaling.NoneSuggester to be removed in Solr 9.0 (see SOLR-14656)
org.apache.solr.client.solrj.cloud.autoscaling.Policy to be removed in Solr 9.0 (see SOLR-14656)
org.apache.solr.client.solrj.cloud.autoscaling.PolicyHelper to be removed in Solr 9.0 (see SOLR-14656)
org.apache.solr.client.solrj.cloud.autoscaling.Preference to be removed in Solr 9.0 (see SOLR-14656)
org.apache.solr.client.solrj.cloud.autoscaling.ReplicaInfo to be removed in Solr 9.0 (see SOLR-14656)
org.apache.solr.client.solrj.cloud.autoscaling.Row to be removed in Solr 9.0 (see SOLR-14656)
org.apache.solr.client.solrj.cloud.autoscaling.SealedClause to be removed in Solr 9.0 (see SOLR-14656)
org.apache.solr.common.util.SolrjNamedThreadFactory use `SolrNamedThreadFactory` instead.
org.apache.solr.client.solrj.cloud.autoscaling.Suggester to be removed in Solr 9.0 (see SOLR-14656)
org.apache.solr.client.solrj.cloud.autoscaling.Suggestion to be removed in Solr 9.0 (see SOLR-14656)
org.apache.solr.client.solrj.cloud.autoscaling.UnsupportedSuggester to be removed in Solr 9.0 (see SOLR-14656)
org.apache.solr.client.solrj.cloud.autoscaling.VariableBase to be removed in Solr 9.0 (see SOLR-14656)
org.apache.solr.client.solrj.cloud.autoscaling.VersionedData to be removed in Solr 9.0 (see SOLR-14656)
org.apache.solr.client.solrj.cloud.autoscaling.Violation to be removed in Solr 9.0 (see SOLR-14656)
org.apache.solr.client.solrj.cloud.autoscaling.WithCollectionVariable to be removed in Solr 9.0 (see SOLR-14656)

Deprecated Enums
Enum and Description
org.apache.solr.client.solrj.cloud.autoscaling.ComputedType to be removed in Solr 9.0 (see SOLR-14656)
org.apache.solr.client.solrj.cloud.autoscaling.Operand to be removed in Solr 9.0 (see SOLR-14656)
org.apache.solr.client.solrj.cloud.autoscaling.TriggerEventProcessorStage to be removed in Solr 9.0 (see SOLR-14656)
org.apache.solr.client.solrj.cloud.autoscaling.TriggerEventType to be removed in Solr 9.0 (see SOLR-14656)

Deprecated Exceptions
Exceptions and Description
org.apache.solr.client.solrj.cloud.autoscaling.AlreadyExistsException to be removed in Solr 9.0 (see SOLR-14656)
org.apache.solr.client.solrj.cloud.autoscaling.BadVersionException to be removed in Solr 9.0 (see SOLR-14656)
org.apache.solr.client.solrj.impl.CloudSolrClient.RouteException since Solr 8.0
org.apache.solr.client.solrj.impl.HttpSolrClient.RemoteExecutionException since 8.0, catch `BaseHttpSolrClient.RemoteExecutionException` instead
org.apache.solr.client.solrj.impl.HttpSolrClient.RemoteSolrException since 8.0, catch `BaseHttpSolrClient.RemoteSolrException` instead
org.apache.solr.client.solrj.cloud.autoscaling.NotEmptyException to be removed in Solr 9.0 (see SOLR-14656)

Deprecated Fields
Field and Description
org.apache.solr.common.params.AutoScalingParams.ACTION_THROTTLE_PERIOD_SECONDS
org.apache.solr.common.cloud.ZkStateReader.COLLECTION_DEF use `CollectionAdminParams.DEFAULTS` instead.
org.apache.solr.common.params.FacetParams.FACET_DISTRIB
org.apache.solr.client.solrj.io.Tuple.fieldLabels use `Tuple.getFieldLabels()` instead of this public field.
org.apache.solr.client.solrj.io.Tuple.fieldNames use `Tuple.getFieldNames()` instead of this public field.
org.apache.solr.client.solrj.io.Tuple.fields use `Tuple.getFields()` instead of this public field.
org.apache.solr.common.params.CollectionParams.FROM_NODE use `CollectionParams.SOURCE_NODE` instead
org.apache.solr.client.solrj.request.UpdateRequest.MIN_REPFACT Solr now always includes in the response the `UpdateRequest.REPFACT`, this parameter doesn't need to be explicitly set
org.apache.solr.common.params.CommonParams.PREFER_LOCAL_SHARDS Use `ShardParams.SHARDS_PREFERENCE`
org.apache.solr.common.cloud.DocCollection.RULE to be removed in Solr 9.0 (see SOLR-14930)
org.apache.solr.common.cloud.DocCollection.SNITCH to be removed in Solr 9.0 (see SOLR-14930)

Deprecated Methods
Method and Description
org.apache.solr.client.solrj.impl.CloudSolrClient.condenseResponse(NamedList, int) since Solr 8.0
org.apache.solr.client.solrj.SolrResponse.deserialize(byte[])
org.apache.solr.client.solrj.response.json.BucketBasedJsonFacet.getAfter() this method can trigger ClassCastException's if the returned value is a long. In the future it will return a 'long' instead to avoid this problem. Until then, use `BucketBasedJsonFacet.getAfterCount()` instead.
org.apache.solr.common.params.SolrParams.getAll(Map<String, Object>, Collection<String>)
org.apache.solr.common.params.SolrParams.getAll(Map<String, Object>, String...)
org.apache.solr.client.solrj.response.json.BucketBasedJsonFacet.getBefore() this method can trigger ClassCastException's if the returned value is a long. In the future it will return a 'long' instead to avoid this problem. Until then, use `BucketBasedJsonFacet.getBeforeCount()` instead.
org.apache.solr.client.solrj.response.json.BucketBasedJsonFacet.getBetween() this method can trigger ClassCastException's if the returned value is a long. In the future it will return a 'long' instead to avoid this problem. Until then, use `BucketBasedJsonFacet.getBetweenCount()` instead.
org.apache.solr.common.SolrInputDocument.getChildDocumentCount()
org.apache.solr.common.SolrDocument.getChildDocumentCount()
org.apache.solr.common.SolrDocumentBase.getChildDocumentCount()
org.apache.solr.client.solrj.SolrRequest.getContentStreams() Please use `SolrRequest.getContentWriter(String)` instead.
org.apache.solr.client.solrj.request.RequestWriter.getContentStreams(SolrRequest) Use `RequestWriter.getContentWriter(SolrRequest)`.
org.apache.solr.client.solrj.impl.BaseCloudSolrClient.getIdField()
org.apache.solr.client.solrj.io.Tuple.getMap() use `Tuple.getFields()` instead.
org.apache.solr.client.solrj.response.json.BucketBasedJsonFacet.getNumBuckets() this method can trigger ClassCastException's if the returned value is a long. In the future it will return a 'long' instead to avoid this problem. Until then, use `BucketBasedJsonFacet.getNumBucketsCount()` instead.
org.apache.solr.client.solrj.request.UpdateRequest.getRoutes(DocRouter, DocCollection, Map<String, List<String>>, ModifiableSolrParams, String) since 8.0, uses `UpdateRequest.getRoutesToCollection(DocRouter, DocCollection, Map, ModifiableSolrParams, String)` instead
org.apache.solr.client.solrj.response.json.NestableJsonFacet.getStatFacetNames() this method returns only stats names with numeric value, instead use `NestableJsonFacet.getStatNames()`
org.apache.solr.client.solrj.response.json.NestableJsonFacet.getStatFacetValue(String) this method works only for numeric value stats, instead use `NestableJsonFacet.getStatValue(String)`
org.apache.solr.common.cloud.ClusterState.getZkClusterStateVersion() true cluster state spans many ZK nodes, stop depending on the version number of the shared node! will be removed in 8.0
org.apache.solr.common.cloud.rule.SnitchContext.invokeRemote(String, ModifiableSolrParams, String, RemoteCallback)
org.apache.solr.client.solrj.impl.LBHttpSolrClient.request(LBHttpSolrClient.Req) use `LBSolrClient.request(LBSolrClient.Req)` instead
org.apache.solr.client.solrj.SolrResponse.serializable(SolrResponse)
org.apache.solr.client.solrj.impl.HttpSolrClient.setConnectionTimeout(int) since 7.0 Use `HttpSolrClient.Builder` methods instead.
org.apache.solr.client.solrj.impl.CloudSolrClient.setConnectionTimeout(int) since 7.0 Use `CloudSolrClient.Builder` methods instead.
org.apache.solr.client.solrj.impl.LBHttpSolrClient.setConnectionTimeout(int) since 7.0 Use `LBHttpSolrClient.Builder` methods instead.
org.apache.solr.client.solrj.impl.ConcurrentUpdateSolrClient.setConnectionTimeout(int) since 7.0 Use `ConcurrentUpdateSolrClient.Builder` methods instead.
org.apache.solr.client.solrj.impl.BaseCloudSolrClient.setIdField(String)
org.apache.solr.client.solrj.impl.CloudSolrClient.setParallelUpdates(boolean) since 7.2 Use `CloudSolrClient.Builder` methods instead.
org.apache.solr.client.solrj.impl.HttpSolrClient.setSoTimeout(int)
org.apache.solr.client.solrj.impl.CloudSolrClient.setSoTimeout(int) since 7.0 Use `CloudSolrClient.Builder` methods instead.
org.apache.solr.client.solrj.impl.LBHttpSolrClient.setSoTimeout(int) since 7.0 Use `LBHttpSolrClient.Builder` methods instead.
org.apache.solr.client.solrj.impl.ConcurrentUpdateSolrClient.setSoTimeout(int) since 7.0 Use `ConcurrentUpdateSolrClient.Builder` methods instead.
org.apache.solr.common.params.SolrParams.toFilteredSolrParams(List<String>)
org.apache.solr.common.params.SolrParams.toMap(NamedList)
org.apache.solr.common.params.SolrParams.toMultiMap(NamedList)
org.apache.solr.common.params.SolrParams.toSolrParams(NamedList) Use `NamedList.toSolrParams()`.
org.apache.solr.client.solrj.impl.CloudSolrClient.Builder.withClusterStateProvider(ClusterStateProvider) since this is an expert feature we don't want to expose this to regular users. To use this feature extend CloudSolrClient.Builder and pass your custom ClusterStateProvider
org.apache.solr.client.solrj.impl.CloudSolrClient.Builder.withSolrUrl(Collection<String>) use Solr URL constructors instead
org.apache.solr.client.solrj.impl.CloudSolrClient.Builder.withSolrUrl(String) use Solr-URL constructor instead
org.apache.solr.client.solrj.impl.CloudSolrClient.Builder.withZkChroot(String) use Zk-host constructor instead
org.apache.solr.client.solrj.impl.CloudSolrClient.Builder.withZkHost(Collection<String>) use Zk-host constructor instead
org.apache.solr.client.solrj.impl.CloudSolrClient.Builder.withZkHost(String) use Zk-host constructor instead

Deprecated Constructors
Constructor and Description
org.apache.solr.client.solrj.impl.CloudSolrClient.Builder() use other constructors instead. This constructor will be changing visibility in an upcoming release.
org.apache.solr.client.solrj.impl.ConcurrentUpdateSolrClient(String, HttpClient, int, int, ExecutorService, boolean) use `ConcurrentUpdateSolrClient.ConcurrentUpdateSolrClient(Builder)` instead, as it is a more extension/subclassing-friendly alternative
org.apache.solr.client.solrj.impl.DelegationTokenHttpSolrClient(String, HttpClient, ResponseParser, boolean, ModifiableSolrParams) use `DelegationTokenHttpSolrClient.DelegationTokenHttpSolrClient(HttpSolrClient.Builder)` instead, as it is a more extension/subclassing-friendly alternative
org.apache.solr.client.solrj.impl.HttpSolrClient(String, HttpClient, ResponseParser, boolean) use `HttpSolrClient.HttpSolrClient(Builder)` instead, as it is a more extension/subclassing-friendly alternative
org.apache.solr.client.solrj.impl.HttpSolrClient(String, HttpClient, ResponseParser, boolean, ModifiableSolrParams) use `HttpSolrClient.HttpSolrClient(Builder)` instead, as it is a more extension/subclassing-friendly alternative
org.apache.solr.client.solrj.impl.LBHttpSolrClient(HttpClient, ResponseParser, String...) use `LBHttpSolrClient.LBHttpSolrClient(Builder)` instead, as it is a more extension/subclassing-friendly alternative
org.apache.solr.client.solrj.impl.LBHttpSolrClient(HttpSolrClient.Builder, HttpClient, String...) use `LBHttpSolrClient.LBHttpSolrClient(Builder)` instead, as it is a more extension/subclassing-friendly alternative