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 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.Params
-
Nested 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<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 StringTYPE-
Fields inherited from interface org.elasticsearch.common.xcontent.ToXContent
EMPTY_PARAMS
-
-
Constructor Summary
Constructors Constructor Description IndexGraveyard(StreamInput in)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods 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.EnumSet<MetaData.XContentContext>context()Diff<MetaData.Custom>diff(MetaData.Custom previous)Returns serializable object representing differences between this and previousStatebooleanequals(Object obj)static IndexGraveyardfromXContent(XContentParser parser)VersiongetMinimalSupportedVersion()The minimal version of the recipient this object can be sent toList<IndexGraveyard.Tombstone>getTombstones()Get the current unmodifiable index tombstone list.StringgetWriteableName()Returns the name of the writeable objectinthashCode()static NamedDiff<MetaData.Custom>readDiffFrom(StreamInput in)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, wait
-
Methods inherited from interface org.elasticsearch.cluster.ClusterState.FeatureAware
getRequiredFeature
-
Methods inherited from interface org.elasticsearch.common.xcontent.ToXContentFragment
isFragment
-
-
-
-
Field Detail
-
SETTING_MAX_TOMBSTONES
public static final Setting<Integer> 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 String TYPE
- See Also:
- Constant Field Values
-
-
Constructor Detail
-
IndexGraveyard
public IndexGraveyard(StreamInput in) throws IOException
- Throws:
IOException
-
-
Method Detail
-
getWriteableName
public String getWriteableName()
Description copied from interface:VersionedNamedWriteableReturns the name of the writeable object- Specified by:
getWriteableNamein interfaceNamedWriteable- Specified by:
getWriteableNamein interfaceVersionedNamedWriteable
-
getMinimalSupportedVersion
public Version getMinimalSupportedVersion()
Description copied from interface:VersionedNamedWriteableThe minimal version of the recipient this object can be sent to- Specified by:
getMinimalSupportedVersionin interfaceVersionedNamedWriteable
-
context
public EnumSet<MetaData.XContentContext> context()
- Specified by:
contextin interfaceMetaData.Custom
-
getTombstones
public List<IndexGraveyard.Tombstone> getTombstones()
Get the current unmodifiable index tombstone list.
-
containsIndex
public boolean containsIndex(Index index)
Returns true if the graveyard contains a tombstone for the given index.
-
toXContent
public XContentBuilder toXContent(XContentBuilder builder, ToXContent.Params params) throws IOException
- Specified by:
toXContentin interfaceToXContent- Throws:
IOException
-
fromXContent
public static IndexGraveyard fromXContent(XContentParser parser) throws IOException
- Throws:
IOException
-
writeTo
public void writeTo(StreamOutput out) throws IOException
Description copied from interface:WriteableWrite this into the StreamOutput.- Specified by:
writeToin interfaceWriteable- Throws:
IOException
-
diff
public Diff<MetaData.Custom> diff(MetaData.Custom previous)
Description copied from interface:DiffableReturns serializable object representing differences between this and previousState- Specified by:
diffin interfaceDiffable<MetaData.Custom>
-
readDiffFrom
public static NamedDiff<MetaData.Custom> readDiffFrom(StreamInput in) throws IOException
- Throws:
IOException
-
builder
public static IndexGraveyard.Builder builder()
-
builder
public static IndexGraveyard.Builder builder(IndexGraveyard graveyard)
-
-