Enum Class ActiveKeyCountInvalidationReason

java.lang.Object
java.lang.Enum<ActiveKeyCountInvalidationReason>
com.linkedin.davinci.kafka.consumer.ActiveKeyCountInvalidationReason
All Implemented Interfaces:
Serializable, Comparable<ActiveKeyCountInvalidationReason>, Constable

public enum ActiveKeyCountInvalidationReason extends Enum<ActiveKeyCountInvalidationReason>
Reasons for invalidating a partition's active-key-count tracking. Each value carries a message template (some with a %d placeholder for runtime detail like the offending signal value or header length) that becomes the prefix of the operator-visible ERROR log emitted by StoreIngestionTask.invalidateActiveKeyCount(com.linkedin.davinci.kafka.consumer.PartitionConsumptionState, com.linkedin.davinci.kafka.consumer.ActiveKeyCountInvalidationReason).
  • Enum Constant Details

    • FOLLOWER_DECREMENT_UNDERFLOW

      public static final ActiveKeyCountInvalidationReason FOLLOWER_DECREMENT_UNDERFLOW
      Follower received kcs=-1 but its count was already zero (count drifted).
    • LEADER_PROPAGATED_INVALIDATION

      public static final ActiveKeyCountInvalidationReason LEADER_PROPAGATED_INVALIDATION
      Follower received kcs=0 (leader-propagated invalidation signal).
    • CORRUPT_KCS_SIGNAL_VALUE

      public static final ActiveKeyCountInvalidationReason CORRUPT_KCS_SIGNAL_VALUE
      Follower received a single-byte kcs value outside the {-1, 0, +1} contract.
    • CORRUPT_MULTI_BYTE_KCS_SIGNAL

      public static final ActiveKeyCountInvalidationReason CORRUPT_MULTI_BYTE_KCS_SIGNAL
      Follower received a multi-byte kcs header (corrupt or future producer).
    • LEADER_DCR_UNDERFLOW

      public static final ActiveKeyCountInvalidationReason LEADER_DCR_UNDERFLOW
      Leader detected an underflow during DCR (count was zero but a delete was processed).
    • KEY_EXISTS_FAILURE

      public static final ActiveKeyCountInvalidationReason KEY_EXISTS_FAILURE
      Leader's StorageEngine.keyExists(int, byte[]) call (a RocksDB value-column-family lookup used to determine whether a key currently has a live value) threw. The transient I/O failure must not stop ingestion or leave the active count in a wrong state — invalidate so we stop publishing a stale value.
  • Method Details

    • values

      public static ActiveKeyCountInvalidationReason[] 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 ActiveKeyCountInvalidationReason 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