Enum Class RemotePartitionDeleteState

java.lang.Object
java.lang.Enum<RemotePartitionDeleteState>
org.apache.kafka.server.log.remote.storage.RemotePartitionDeleteState
All Implemented Interfaces:
Serializable, Comparable<RemotePartitionDeleteState>, Constable

@Evolving public enum RemotePartitionDeleteState extends Enum<RemotePartitionDeleteState>
This enum indicates the deletion state of the remote topic partition. This will be based on the action executed on this partition by the remote log service implementation. State transitions are mentioned below. Self transition is treated as valid. This allows updating with the same state in case of retries and failover.

 +-------------------------+
 |DELETE_PARTITION_MARKED  |
 +-----------+-------------+
             |
             |
 +-----------v--------------+
 |DELETE_PARTITION_STARTED  |
 +-----------+--------------+
             |
             |
 +-----------v--------------+
 |DELETE_PARTITION_FINISHED |
 +--------------------------+
 

  • Enum Constant Details

    • DELETE_PARTITION_MARKED

      public static final RemotePartitionDeleteState DELETE_PARTITION_MARKED
      This is used when a topic/partition is marked for delete by the controller. That means, all its remote log segments are eligible for deletion so that remote partition removers can start deleting them.
    • DELETE_PARTITION_STARTED

      public static final RemotePartitionDeleteState DELETE_PARTITION_STARTED
      This state indicates that the partition deletion is started but not yet finished.
    • DELETE_PARTITION_FINISHED

      public static final RemotePartitionDeleteState DELETE_PARTITION_FINISHED
      This state indicates that the partition is deleted successfully.
  • Method Details

    • values

      public static RemotePartitionDeleteState[] values()
      Returns an array containing the constants of this enum class, in the order they are declared.
      Returns:
      an array containing the constants of this enum class, in the order they are declared
    • valueOf

      public static RemotePartitionDeleteState valueOf(String name)
      Returns the enum constant of this class with the specified name. The string must match exactly an identifier used to declare an enum constant in this class. (Extraneous whitespace characters are not permitted.)
      Parameters:
      name - the name of the enum constant to be returned.
      Returns:
      the enum constant with the specified name
      Throws:
      IllegalArgumentException - if this enum class has no constant with the specified name
      NullPointerException - if the argument is null
    • id

      public byte id()
    • forId

      public static RemotePartitionDeleteState forId(byte id)
    • isValidTransition

      public static boolean isValidTransition(RemotePartitionDeleteState srcState, RemotePartitionDeleteState targetState)