public class AllocationId extends Object implements ToXContent
Relocation is a special case, where the origin shard is relocating with a relocationId and same id, and the target shard (only materialized in RoutingNodes) is initializing with the id set to the origin shard relocationId. Once relocation is done, the new allocation id is set to the relocationId. This is similar behavior to how ShardRouting#currentNodeId is used.
ToXContent.DelegatingMapParams, ToXContent.MapParams, ToXContent.Params
EMPTY_PARAMS
Modifier and Type | Method and Description |
---|---|
static AllocationId |
cancelRelocation(AllocationId allocationId)
Creates a new allocation id representing a cancelled relocation.
|
boolean |
equals(Object o) |
static AllocationId |
finishRelocation(AllocationId allocationId)
Creates a new allocation id finalizing a relocation.
|
String |
getId()
The allocation id uniquely identifying an allocation, note, if it is relocation
the
getRelocationId() need to be taken into account as well. |
String |
getRelocationId()
The transient relocation id holding the unique id that is used for relocation.
|
int |
hashCode() |
static AllocationId |
newInitializing()
Creates a new allocation id for initializing allocation.
|
static AllocationId |
newRelocation(AllocationId allocationId)
Creates a new allocation id for a shard that moves to be relocated, populating
the transient holder for relocationId.
|
static AllocationId |
newTargetRelocation(AllocationId allocationId)
Creates a new allocation id for the target initializing shard that is the result
of a relocation.
|
String |
toString() |
XContentBuilder |
toXContent(XContentBuilder builder,
ToXContent.Params params) |
void |
writeTo(StreamOutput out) |
public void writeTo(StreamOutput out) throws IOException
IOException
public static AllocationId newInitializing()
public static AllocationId newTargetRelocation(AllocationId allocationId)
public static AllocationId newRelocation(AllocationId allocationId)
public static AllocationId cancelRelocation(AllocationId allocationId)
Note that this is expected to be called on the allocation id of the *source* shard
public static AllocationId finishRelocation(AllocationId allocationId)
Note that this is expected to be called on the allocation id of the *target* shard and thus it only needs to clear the relocating id.
public String getId()
getRelocationId()
need to be taken into account as well.public String getRelocationId()
public XContentBuilder toXContent(XContentBuilder builder, ToXContent.Params params) throws IOException
toXContent
in interface ToXContent
IOException
Copyright © 2009–2017. All rights reserved.