Class SearchShardIterator

java.lang.Object
org.elasticsearch.action.search.SearchShardIterator
All Implemented Interfaces:
Comparable<SearchShardIterator>, Countable

public final class SearchShardIterator extends Object implements Comparable<SearchShardIterator>, Countable
Extension of PlainShardIterator used in the search api, which also holds the OriginalIndices of the search request (useful especially with cross-cluster search, as each cluster has its own set of original indices) as well as the cluster alias.
See Also:
OriginalIndices
  • Constructor Details

    • SearchShardIterator

      public SearchShardIterator(@Nullable String clusterAlias, ShardId shardId, List<ShardRouting> shards, OriginalIndices originalIndices)
      Creates a PlainShardIterator instance that iterates over a subset of the given shards this the a given shardId.
      Parameters:
      clusterAlias - the alias of the cluster where the shard is located
      shardId - shard id of the group
      shards - shards to iterate
      originalIndices - the indices that the search request originally related to (before any rewriting happened)
    • SearchShardIterator

      public SearchShardIterator(@Nullable String clusterAlias, ShardId shardId, List<String> targetNodeIds, OriginalIndices originalIndices, ShardSearchContextId searchContextId, org.elasticsearch.core.TimeValue searchContextKeepAlive)
  • Method Details

    • getOriginalIndices

      public OriginalIndices getOriginalIndices()
      Returns the original indices associated with this shard iterator, specifically with the cluster that this shard belongs to.
    • getClusterAlias

      @Nullable public String getClusterAlias()
      Returns the alias of the cluster where the shard is located.
    • size

      public int size()
      Specified by:
      size in interface Countable
    • equals

      public boolean equals(Object o)
      Overrides:
      equals in class Object
    • hashCode

      public int hashCode()
      Overrides:
      hashCode in class Object
    • compareTo

      public int compareTo(SearchShardIterator o)
      Specified by:
      compareTo in interface Comparable<SearchShardIterator>