Class/Object

io.ino.solrs

CloudSolrServers

Related Docs: object CloudSolrServers | package solrs

Permalink

class CloudSolrServers[F[_]] extends SolrServers with AsyncSolrClientAware[F] with 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.

Linear Supertypes
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. CloudSolrServers
  2. ServerStateChangeObservable
  3. AsyncSolrClientAware
  4. SolrServers
  5. AnyRef
  6. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Instance Constructors

  1. new CloudSolrServers(zkHost: String, zkClientTimeout: Duration = 15 seconds, zkConnectTimeout: Duration = 10 seconds, clusterStateUpdateInterval: Duration = 1 second, defaultCollection: Option[String] = None, warmupQueries: Option[WarmupQueries] = None)(implicit futureFactory: FutureFactory[F])

    Permalink

    zkHost

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

    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!

    clusterStateUpdateInterval

    Used for pulling the ClusterState from ZkStateReader

    defaultCollection

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

Value Members

  1. final def !=(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  2. final def ##(): Int

    Permalink
    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  4. def all: IndexedSeq[SolrServer]

    Permalink

    The currently known solr servers.

    The currently known solr servers.

    Definition Classes
    CloudSolrServersSolrServers
    Annotations
    @volatile()
  5. final def asInstanceOf[T0]: T0

    Permalink
    Definition Classes
    Any
  6. def clone(): AnyRef

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  7. final def eq(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  8. def equals(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  9. def finalize(): Unit

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  10. def findLeader(servers: Iterable[SolrServer]): Option[ShardReplica]

    Permalink

    Determines the shard replica which is the shard leader.

    Determines the shard replica which is the shard leader.

    Attributes
    protected[io.ino.solrs]
    Definition Classes
    CloudSolrServersSolrServers
  11. final def getClass(): Class[_]

    Permalink
    Definition Classes
    AnyRef → Any
  12. def hashCode(): Int

    Permalink
    Definition Classes
    AnyRef → Any
  13. final def isInstanceOf[T0]: Boolean

    Permalink
    Definition Classes
    Any
  14. def matching(r: SolrRequest[_]): Try[IndexedSeq[SolrServer]]

    Permalink

    An infinite iterator over known solr servers.

    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.

    Definition Classes
    CloudSolrServersSolrServers
  15. final def ne(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  16. final def notify(): Unit

    Permalink
    Definition Classes
    AnyRef
  17. final def notifyAll(): Unit

    Permalink
    Definition Classes
    AnyRef
  18. def register(listener: StateChangeObserver): Unit

    Permalink
  19. def setAsyncSolrClient(client: AsyncSolrClient[F]): Unit

    Permalink

    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.

    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.

    Definition Classes
    CloudSolrServersAsyncSolrClientAware
  20. def shutdown(): Unit

    Permalink
  21. final def synchronized[T0](arg0: ⇒ T0): T0

    Permalink
    Definition Classes
    AnyRef
  22. def toString(): String

    Permalink
    Definition Classes
    AnyRef → Any
  23. final def wait(): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  24. final def wait(arg0: Long, arg1: Int): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  25. final def wait(arg0: Long): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  26. def warmupNewServer(collection: String, s: SolrServer, queries: Seq[SolrQuery], count: Int): Future[Seq[Try[QueryResponse]]]

    Permalink
    Attributes
    protected
  27. def warmupNewServers(newCollectionToServers: Map[String, IndexedSeq[SolrServer]], warmup: WarmupQueries): Future[Iterable[Try[QueryResponse]]]

    Permalink
    Attributes
    protected

Inherited from AsyncSolrClientAware[F]

Inherited from SolrServers

Inherited from AnyRef

Inherited from Any

Ungrouped