Enum RemoteLogSegmentState
java.lang.Object
java.lang.Enum<RemoteLogSegmentState>
org.apache.kafka.server.log.remote.storage.RemoteLogSegmentState
- All Implemented Interfaces:
Serializable
,Comparable<RemoteLogSegmentState>
,Constable
@Evolving public enum RemoteLogSegmentState extends Enum<RemoteLogSegmentState>
This enum indicates the state of the remote log segment. This will be based on the action executed on this
segment by the remote log service implementation.
It goes through the below state transitions. Self transition is treated as valid. This allows updating with the same state in case of retries and failover.
+---------------------+ +----------------------+ |COPY_SEGMENT_STARTED |----------> |COPY_SEGMENT_FINISHED | +-------------------+-+ +--+-------------------+ | | | | v v +--+-----------------+-+ |DELETE_SEGMENT_STARTED| +-----------+----------+ | | v +-----------+-----------+ |DELETE_SEGMENT_FINISHED| +-----------------------+
-
Nested Class Summary
Nested classes/interfaces inherited from class java.lang.Enum
Enum.EnumDesc<E extends Enum<E>>
-
Enum Constant Summary
Enum Constants Enum Constant Description COPY_SEGMENT_FINISHED
This state indicates that the segment copying to remote storage is finished.COPY_SEGMENT_STARTED
This state indicates that the segment copying to remote storage is started but not yet finished.DELETE_SEGMENT_FINISHED
This state indicates that the segment is deleted successfully.DELETE_SEGMENT_STARTED
This state indicates that the segment deletion is started but not yet finished. -
Method Summary
Modifier and Type Method Description static RemoteLogSegmentState
forId(byte id)
byte
id()
static boolean
isValidTransition(RemoteLogSegmentState srcState, RemoteLogSegmentState targetState)
static RemoteLogSegmentState
valueOf(String name)
Returns the enum constant of this type with the specified name.static RemoteLogSegmentState[]
values()
Returns an array containing the constants of this enum type, in the order they are declared.
-
Enum Constant Details
-
COPY_SEGMENT_STARTED
This state indicates that the segment copying to remote storage is started but not yet finished. -
COPY_SEGMENT_FINISHED
This state indicates that the segment copying to remote storage is finished. -
DELETE_SEGMENT_STARTED
This state indicates that the segment deletion is started but not yet finished. -
DELETE_SEGMENT_FINISHED
This state indicates that the segment is deleted successfully.
-
-
Method Details
-
values
Returns an array containing the constants of this enum type, in the order they are declared.- Returns:
- an array containing the constants of this enum type, in the order they are declared
-
valueOf
Returns the enum constant of this type with the specified name. The string must match exactly an identifier used to declare an enum constant in this type. (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 type has no constant with the specified nameNullPointerException
- if the argument is null
-
id
public byte id() -
forId
-
isValidTransition
public static boolean isValidTransition(RemoteLogSegmentState srcState, RemoteLogSegmentState targetState)
-