Class IndexRouting
java.lang.Object
org.elasticsearch.cluster.routing.IndexRouting
Generates the shard id for
(id, routing) pairs.-
Method Summary
Modifier and TypeMethodDescriptionabstract voidcollectSearchShards(String routing, IntConsumer consumer) Collect all of the shard ids that *may* contain documents with the providedrouting.abstract intdeleteShard(String id, String routing) Called when deleting a document to generate the shard id that should contain a document with the provided_idand (optional)_routing.static IndexRoutingfromIndexMetadata(IndexMetadata indexMetadata) Build the routing fromIndexMetadata.abstract intCalled when getting a document to generate the shard id that should contain a document with the provided_idand (optional)_routing.protected final inthashToShardId(int hash) Convert a hash generated from an(id, routing) pair into a shard id.abstract intindexShard(String id, String routing, org.elasticsearch.xcontent.XContentType sourceType, BytesReference source) Called when indexing a document to generate the shard id that should contain a document with the provided parameters.abstract intupdateShard(String id, String routing) Called when updating a document to generate the shard id that should contain a document with the provided_idand (optional)_routing.
-
Method Details
-
fromIndexMetadata
Build the routing fromIndexMetadata. -
indexShard
public abstract int indexShard(String id, @Nullable String routing, org.elasticsearch.xcontent.XContentType sourceType, BytesReference source) Called when indexing a document to generate the shard id that should contain a document with the provided parameters. -
updateShard
Called when updating a document to generate the shard id that should contain a document with the provided_idand (optional)_routing. -
deleteShard
Called when deleting a document to generate the shard id that should contain a document with the provided_idand (optional)_routing. -
getShard
Called when getting a document to generate the shard id that should contain a document with the provided_idand (optional)_routing. -
collectSearchShards
Collect all of the shard ids that *may* contain documents with the providedrouting. Indices with arouting_partitionwill collect more than one shard. Indices without a partition will collect the same shard id as would be returned bygetShard(java.lang.String, java.lang.String).Note: This is called for any search-like requests that have a routing specified but only if they have a routing specified. If they do not have a routing they just use all shards in the index.
-
hashToShardId
protected final int hashToShardId(int hash) Convert a hash generated from an(id, routing) pair into a shard id.
-