CloudSolrServers

io.ino.solrs.CloudSolrServers
See theCloudSolrServers companion object
class CloudSolrServers[F[_]](zkHost: String, zkClientTimeout: Duration, zkConnectTimeout: Duration, clusterStateUpdateInterval: Duration, defaultCollection: Option[String], warmupQueries: Option[WarmupQueries])(implicit futureFactory: FutureFactory[F]) extends SolrServers, AsyncSolrClientAware[F], ServerStateChangeObservable

Provides servers based on information from from ZooKeeper. Uses the ZkStateReader to read the ZK cluster state, which is also used by solrj's CloudSolrServer. While ZkStateReader uses ZK Watches to get cluster state changes from ZK, we're regularly updating our internal state by reading the cluster state from ZkStateReader.

Value parameters

clusterStateUpdateInterval

Used for pulling the ClusterState from ZkStateReader

defaultCollection

Optional default collection to use when the request does not specify the "collection" param.

zkClientTimeout

The zk session timeout (passed to ZkStateReader)

zkConnectTimeout

The zk connection timeout (passed to ZkStateReader), also used for ZkStateReader initialization attempt interval. Note that we're NOT stopping connection retries after connect timeout!

zkHost

The zkHost string, in $host:$port format, multiple hosts are specified comma separated

Attributes

Companion
object
Graph
Supertypes
trait SolrServers
class Object
trait Matchable
class Any
Show all

Members list

Value members

Concrete methods

override def all: IndexedSeq[SolrServer]

The currently known solr servers.

The currently known solr servers.

Attributes

Definition Classes
override def matching(r: SolrRequest[_]): Try[IndexedSeq[SolrServer]]

An infinite iterator over known solr servers. When the last item is reached, it should start from the first one again. When the known solr servers change, the iterator must reflect this.

An infinite iterator over known solr servers. When the last item is reached, it should start from the first one again. When the known solr servers change, the iterator must reflect this.

Attributes

Definition Classes
override def register(listener: StateChangeObserver): Unit

Attributes

Definition Classes
override def setAsyncSolrClient(client: AsyncSolrClient[F]): Unit

On creation of AsyncSolrClient this method is invoked with the created instance if the concrete component is "supported", right now this are SolrServers and LoadBalancer. Subclasses can override this method to get access to the solr client.

On creation of AsyncSolrClient this method is invoked with the created instance if the concrete component is "supported", right now this are SolrServers and LoadBalancer. Subclasses can override this method to get access to the solr client.

Attributes

Definition Classes
def shutdown(): Unit