Package com.linkedin.venice.pushmonitor
Enum ExecutionStatus
- java.lang.Object
-
- java.lang.Enum<ExecutionStatus>
-
- com.linkedin.venice.pushmonitor.ExecutionStatus
-
- All Implemented Interfaces:
VeniceEnumValue
,java.io.Serializable
,java.lang.Comparable<ExecutionStatus>
public enum ExecutionStatus extends java.lang.Enum<ExecutionStatus> implements VeniceEnumValue
Status of executing off-line push. The status will be used by both Job and Task. Adding new status will break the Controller to Storage Node communication. This is used as part of StoreStatusMessage. When adding states, backward compat needs to be fixed, after things are in production at least. Whenever a new status is introduced, we should follow the correct deployment order: The consumers of the execution status should be deployed with the latest code before anyone reports the new status; the consumers include controllers, routers, servers at this moment; in future, there could also be Samza users that depend on ExecutionStatus. TODO: Break this up in JobExecutionStatus and TaskExecutionStatus. It's pretty confusing to mix them ): ...
-
-
Enum Constant Summary
Enum Constants Enum Constant Description ARCHIVED
Deprecated.CATCH_UP_BASE_TOPIC_OFFSET_LAG
COMPLETED
For task, data is read and put into storage engine.DATA_RECOVERY_COMPLETED
DROPPED
Deprecated.DVC_INGESTION_ERROR_DISK_FULL
DaVinci client fails ingestion due to disk reaching the threshold in the hostDVC_INGESTION_ERROR_MEMORY_LIMIT_REACHED
DaVinci client fails ingestion due to reaching the configured memory limit in the hostDVC_INGESTION_ERROR_OTHER
Other uncategorized DaVinci Client errorsDVC_INGESTION_ERROR_TOO_MANY_DEAD_INSTANCES
There are too many dead DaVinci instances leading to failed push jobEND_OF_INCREMENTAL_PUSH_RECEIVED
An incremental push job/task is completedEND_OF_PUSH_RECEIVED
Tasks belonging to a Hybrid Store emits this instead ofCOMPLETED
when it consumes a EOP messageERROR
Job/task met error when processing the data.NEW
Legacy status.NOT_CREATED
Job doesn't yet existNOT_STARTED
Job/Task is created but ingestion haven't started yetPROGRESS
Task is processing data.START_OF_BUFFER_REPLAY_RECEIVED
Deprecated.START_OF_INCREMENTAL_PUSH_RECEIVED
An incremental push job/task is startedSTARTED
Job/Task is started and start consuming data from KafkaTOPIC_SWITCH_RECEIVED
Tasks belonging to a Hybrid Store emits this instead when it consumes a TS messageUNKNOWN
Job status is unknown when checking, and it could be caused by network issueWARNING
Deprecated.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description ExecutionStatus
getRootStatus()
int
getValue()
static boolean
isDeterminedStatus(ExecutionStatus status)
Some of the statuses are like watermark.boolean
isDVCIngestionError()
boolean
isError()
static boolean
isError(ExecutionStatus status)
static boolean
isError(java.lang.String errorString)
static boolean
isIncrementalPushStatus(int statusVal)
static boolean
isIncrementalPushStatus(ExecutionStatus status)
boolean
isJobStatus()
boolean
isTaskStatus()
boolean
isTerminal()
boolean
isUsedByDaVinciClientOnly()
static ExecutionStatus
valueOf(int value)
Returns the enum constant of this type with the specified name.static ExecutionStatus
valueOf(java.lang.String name)
Returns the enum constant of this type with the specified name.static ExecutionStatus[]
values()
Returns an array containing the constants of this enum type, in the order they are declared.
-
-
-
Enum Constant Detail
-
NOT_CREATED
public static final ExecutionStatus NOT_CREATED
Job doesn't yet exist
-
NEW
public static final ExecutionStatus NEW
Legacy status. Now only used as the initial value for anExecutionStatus
in VeniceParentHelixAdmin, but should never actually be returned to the push job, under normal circumstances...
-
STARTED
public static final ExecutionStatus STARTED
Job/Task is started and start consuming data from Kafka
-
PROGRESS
public static final ExecutionStatus PROGRESS
Task is processing data.
-
END_OF_PUSH_RECEIVED
public static final ExecutionStatus END_OF_PUSH_RECEIVED
Tasks belonging to a Hybrid Store emits this instead ofCOMPLETED
when it consumes a EOP message
-
START_OF_BUFFER_REPLAY_RECEIVED
@Deprecated public static final ExecutionStatus START_OF_BUFFER_REPLAY_RECEIVED
Deprecated.Tasks belonging to a Hybrid Store emits this instead when it consumes a SOBR message
-
TOPIC_SWITCH_RECEIVED
public static final ExecutionStatus TOPIC_SWITCH_RECEIVED
Tasks belonging to a Hybrid Store emits this instead when it consumes a TS message
-
START_OF_INCREMENTAL_PUSH_RECEIVED
public static final ExecutionStatus START_OF_INCREMENTAL_PUSH_RECEIVED
An incremental push job/task is started
-
END_OF_INCREMENTAL_PUSH_RECEIVED
public static final ExecutionStatus END_OF_INCREMENTAL_PUSH_RECEIVED
An incremental push job/task is completed
-
DROPPED
@Deprecated public static final ExecutionStatus DROPPED
Deprecated.
-
COMPLETED
public static final ExecutionStatus COMPLETED
For task, data is read and put into storage engine. For Job, all of tasks are completed.
-
WARNING
@Deprecated public static final ExecutionStatus WARNING
Deprecated.a non-fatal error task meets when processing the data. Often happens after EOP is received.
-
ERROR
public static final ExecutionStatus ERROR
Job/task met error when processing the data.
-
CATCH_UP_BASE_TOPIC_OFFSET_LAG
public static final ExecutionStatus CATCH_UP_BASE_TOPIC_OFFSET_LAG
-
ARCHIVED
@Deprecated public static final ExecutionStatus ARCHIVED
Deprecated.Job is terminated and be removed from repository. Should be archived to historic data storage. Only be used for Job TODO: remove ARCHIVED as it's not been used anymore
-
UNKNOWN
public static final ExecutionStatus UNKNOWN
Job status is unknown when checking, and it could be caused by network issue
-
NOT_STARTED
public static final ExecutionStatus NOT_STARTED
Job/Task is created but ingestion haven't started yet
-
DATA_RECOVERY_COMPLETED
public static final ExecutionStatus DATA_RECOVERY_COMPLETED
-
DVC_INGESTION_ERROR_DISK_FULL
public static final ExecutionStatus DVC_INGESTION_ERROR_DISK_FULL
DaVinci client fails ingestion due to disk reaching the threshold in the host
-
DVC_INGESTION_ERROR_MEMORY_LIMIT_REACHED
public static final ExecutionStatus DVC_INGESTION_ERROR_MEMORY_LIMIT_REACHED
DaVinci client fails ingestion due to reaching the configured memory limit in the host
-
DVC_INGESTION_ERROR_TOO_MANY_DEAD_INSTANCES
public static final ExecutionStatus DVC_INGESTION_ERROR_TOO_MANY_DEAD_INSTANCES
There are too many dead DaVinci instances leading to failed push job
-
DVC_INGESTION_ERROR_OTHER
public static final ExecutionStatus DVC_INGESTION_ERROR_OTHER
Other uncategorized DaVinci Client errors
-
-
Method Detail
-
values
public static ExecutionStatus[] values()
Returns an array containing the constants of this enum type, in the order they are declared. This method may be used to iterate over the constants as follows:for (ExecutionStatus c : ExecutionStatus.values()) System.out.println(c);
- Returns:
- an array containing the constants of this enum type, in the order they are declared
-
valueOf
public static ExecutionStatus valueOf(java.lang.String name)
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:
java.lang.IllegalArgumentException
- if this enum type has no constant with the specified namejava.lang.NullPointerException
- if the argument is null
-
isDeterminedStatus
public static boolean isDeterminedStatus(ExecutionStatus status)
Some of the statuses are like watermark. These statuses are used inPushMonitor
andVeniceVersionFinder
to determine whether a job is finished and whether a host is ready to serve read requests.
-
isJobStatus
public boolean isJobStatus()
-
isTaskStatus
public boolean isTaskStatus()
-
isUsedByDaVinciClientOnly
public boolean isUsedByDaVinciClientOnly()
-
isTerminal
public boolean isTerminal()
-
isIncrementalPushStatus
public static boolean isIncrementalPushStatus(ExecutionStatus status)
-
isIncrementalPushStatus
public static boolean isIncrementalPushStatus(int statusVal)
-
getValue
public int getValue()
- Specified by:
getValue
in interfaceVeniceEnumValue
-
valueOf
public static ExecutionStatus valueOf(int value)
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:
value
- the name of the enum constant to be returned.- Returns:
- the enum constant with the specified name
- Throws:
java.lang.IllegalArgumentException
- if this enum type has no constant with the specified namejava.lang.NullPointerException
- if the argument is null
-
getRootStatus
public ExecutionStatus getRootStatus()
-
isDVCIngestionError
public boolean isDVCIngestionError()
-
isError
public boolean isError()
-
isError
public static boolean isError(java.lang.String errorString)
-
isError
public static boolean isError(ExecutionStatus status)
-
-