Class DynamicPartitionsSpec

java.lang.Object
org.apache.druid.indexer.partitions.DynamicPartitionsSpec
All Implemented Interfaces:
PartitionsSpec

public class DynamicPartitionsSpec extends Object implements PartitionsSpec
Dynamically determine partitions in the middle of indexing.
  • Field Details

    • DEFAULT_MAX_TOTAL_ROWS

      public static final long DEFAULT_MAX_TOTAL_ROWS
      Default maxTotalRows for most task types except compaction task.
      See Also:
    • DEFAULT_COMPACTION_MAX_TOTAL_ROWS

      public static final long DEFAULT_COMPACTION_MAX_TOTAL_ROWS
      See Also:
  • Constructor Details

    • DynamicPartitionsSpec

      public DynamicPartitionsSpec(@Nullable Integer maxRowsPerSegment, @Nullable Long maxTotalRows)
  • Method Details

    • getType

      public SecondaryPartitionType getType()
      Specified by:
      getType in interface PartitionsSpec
    • getMaxRowsPerSegment

      public Integer getMaxRowsPerSegment()
      Description copied from interface: PartitionsSpec
      Returns the max number of rows per segment. Implementations can have different default values which it could be even null. Callers should use the right value depending on the context if this returns null.
      Specified by:
      getMaxRowsPerSegment in interface PartitionsSpec
    • getMaxTotalRows

      @Nullable public Long getMaxTotalRows()
    • getMaxTotalRowsOr

      public long getMaxTotalRowsOr(long defaultMaxTotalRows)
      Get the given maxTotalRows or the default. The default can be different depending on the caller.
    • needsDeterminePartitions

      public boolean needsDeterminePartitions(boolean useForHadoopTask)
      Description copied from interface: PartitionsSpec
      Returns true if this partitionsSpec needs to determine the number of partitions to start data ingestion. It should usually return true if perfect rollup is enforced but number of partitions is not specified.
      Specified by:
      needsDeterminePartitions in interface PartitionsSpec
    • getForceGuaranteedRollupIncompatiblityReason

      public String getForceGuaranteedRollupIncompatiblityReason()
      Specified by:
      getForceGuaranteedRollupIncompatiblityReason in interface PartitionsSpec
      Returns:
      Message describing why this partitionSpec is incompatible with forceGuaranteedRollup=true. Empty string if the partitionSpec is compatible.
    • equals

      public boolean equals(Object o)
      Overrides:
      equals in class Object
    • hashCode

      public int hashCode()
      Overrides:
      hashCode in class Object
    • toString

      public String toString()
      Overrides:
      toString in class Object