Enum HashJoinState

java.lang.Object
java.lang.Enum<HashJoinState>
org.apache.drill.exec.physical.impl.join.HashJoinState
All Implemented Interfaces:
Serializable, Comparable<HashJoinState>

public enum HashJoinState extends Enum<HashJoinState>
  • Enum Constant Details

    • INITIALIZING

      public static final HashJoinState INITIALIZING
    • BUILD_SIDE_PARTITIONING

      public static final HashJoinState BUILD_SIDE_PARTITIONING
      In this state, the build side of the join operation is partitioned. Each partition is kept in memory. If we are able to fit all the partitions in memory and we have completely consumed the build side then we move to the POST_BUILD_CALCULATIONS. If we run out of memory and we still have not consumed all of the build side, we start evicting partitions from memory to free memory. Then resume processing the build side. We repeat this process until the entire build side is consumed. After the build side is consumed we proceed to the POST_BUILD_CALCULATIONS state.
    • POST_BUILD_CALCULATIONS

      public static final HashJoinState POST_BUILD_CALCULATIONS
      In this state, the probe side is consumed. If data in the probe side matches a build side partition kept in memory, it is joined and sent out. If data in the probe side does not match a build side partition, then it is spilled to disk. After all the probe side data is consumed processing moves on to the POST_BUILD_CALCULATIONS state if build side partitions are small enough to fit into memory. If build side partitions can't fit into memory processing moves to the POST_BUILD_CALCULATIONS state.
  • Method Details

    • values

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

      public static HashJoinState valueOf(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:
      IllegalArgumentException - if this enum type has no constant with the specified name
      NullPointerException - if the argument is null