Class IndexGraveyard
java.lang.Object
org.elasticsearch.cluster.metadata.IndexGraveyard
- All Implemented Interfaces:
ClusterState.FeatureAware,Diffable<MetaData.Custom>,MetaData.Custom,NamedDiffable<MetaData.Custom>,NamedWriteable,VersionedNamedWriteable,Writeable,ToXContent,ToXContentFragment
public final class IndexGraveyard extends java.lang.Object implements MetaData.Custom
A collection of tombstones for explicitly marking indices as deleted in the cluster state.
The cluster state contains a list of index tombstones for indices that have been
deleted in the cluster. Because cluster states are processed asynchronously by
nodes and a node could be removed from the cluster for a period of time, the
tombstones remain in the cluster state for a fixed period of time, after which
they are purged.
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static classIndexGraveyard.BuilderA class to build an IndexGraveyard.static classIndexGraveyard.IndexGraveyardDiffA class representing a diff of two IndexGraveyard objects.static classIndexGraveyard.TombstoneAn individual tombstone entry for representing a deleted index.Nested classes/interfaces inherited from interface org.elasticsearch.common.xcontent.ToXContent
ToXContent.DelegatingMapParams, ToXContent.MapParams, ToXContent.ParamsNested classes/interfaces inherited from interface org.elasticsearch.common.io.stream.Writeable
Writeable.Reader<V>, Writeable.Writer<V> -
Field Summary
Fields Modifier and Type Field Description static Setting<java.lang.Integer>SETTING_MAX_TOMBSTONESSetting for the maximum tombstones allowed in the cluster state; prevents the cluster state size from exploding too large, but it opens the very unlikely risk that if there are greater than MAX_TOMBSTONES index deletions while a node was offline, when it comes back online, it will have missed index deletions that it may need to process.static java.lang.StringTYPE -
Constructor Summary
Constructors Constructor Description IndexGraveyard(StreamInput in) -
Method Summary
Modifier and Type Method Description static IndexGraveyard.Builderbuilder()static IndexGraveyard.Builderbuilder(IndexGraveyard graveyard)booleancontainsIndex(Index index)Returns true if the graveyard contains a tombstone for the given index.java.util.EnumSet<MetaData.XContentContext>context()Diff<MetaData.Custom>diff(MetaData.Custom previous)Returns serializable object representing differences between this and previousStatebooleanequals(java.lang.Object obj)static IndexGraveyardfromXContent(XContentParser parser)VersiongetMinimalSupportedVersion()The minimal version of the recipient this object can be sent tojava.util.List<IndexGraveyard.Tombstone>getTombstones()Get the current unmodifiable index tombstone list.java.lang.StringgetWriteableName()Returns the name of the writeable objectinthashCode()static NamedDiff<MetaData.Custom>readDiffFrom(StreamInput in)java.lang.StringtoString()XContentBuildertoXContent(XContentBuilder builder, ToXContent.Params params)voidwriteTo(StreamOutput out)Write this into the StreamOutput.Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, waitMethods inherited from interface org.elasticsearch.cluster.ClusterState.FeatureAware
getRequiredFeature
-
Field Details
-
SETTING_MAX_TOMBSTONES
Setting for the maximum tombstones allowed in the cluster state; prevents the cluster state size from exploding too large, but it opens the very unlikely risk that if there are greater than MAX_TOMBSTONES index deletions while a node was offline, when it comes back online, it will have missed index deletions that it may need to process. -
TYPE
public static final java.lang.String TYPE- See Also:
- Constant Field Values
-
-
Constructor Details
-
IndexGraveyard
- Throws:
java.io.IOException
-
-
Method Details
-
getWriteableName
public java.lang.String getWriteableName()Description copied from interface:VersionedNamedWriteableReturns the name of the writeable object- Specified by:
getWriteableNamein interfaceNamedWriteable- Specified by:
getWriteableNamein interfaceVersionedNamedWriteable
-
getMinimalSupportedVersion
Description copied from interface:VersionedNamedWriteableThe minimal version of the recipient this object can be sent to- Specified by:
getMinimalSupportedVersionin interfaceVersionedNamedWriteable
-
context
- Specified by:
contextin interfaceMetaData.Custom
-
equals
public boolean equals(java.lang.Object obj)- Overrides:
equalsin classjava.lang.Object
-
hashCode
public int hashCode()- Overrides:
hashCodein classjava.lang.Object
-
getTombstones
Get the current unmodifiable index tombstone list. -
containsIndex
Returns true if the graveyard contains a tombstone for the given index. -
toXContent
public XContentBuilder toXContent(XContentBuilder builder, ToXContent.Params params) throws java.io.IOException- Specified by:
toXContentin interfaceToXContent- Throws:
java.io.IOException
-
fromXContent
- Throws:
java.io.IOException
-
toString
public java.lang.String toString()- Overrides:
toStringin classjava.lang.Object
-
writeTo
Description copied from interface:WriteableWrite this into the StreamOutput. -
diff
Description copied from interface:DiffableReturns serializable object representing differences between this and previousState- Specified by:
diffin interfaceDiffable<MetaData.Custom>
-
readDiffFrom
- Throws:
java.io.IOException
-
builder
-
builder
-