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 Summary
Fields Modifier and Type Field Description static long
DEFAULT_MAX_TOTAL_ROWS
Default maxTotalRows for most task types except compaction task.-
Fields inherited from interface org.apache.druid.indexer.partitions.PartitionsSpec
DEFAULT_MAX_ROWS_PER_SEGMENT, HISTORICAL_NULL, MAX_ROWS_PER_SEGMENT
-
-
Constructor Summary
Constructors Constructor Description DynamicPartitionsSpec(Integer maxRowsPerSegment, Long maxTotalRows)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description boolean
equals(Object o)
String
getForceGuaranteedRollupIncompatiblityReason()
Integer
getMaxRowsPerSegment()
Returns the max number of rows per segment.Long
getMaxTotalRows()
long
getMaxTotalRowsOr(long defaultMaxTotalRows)
Get the given maxTotalRows or the default.SecondaryPartitionType
getType()
int
hashCode()
boolean
needsDeterminePartitions(boolean useForHadoopTask)
Returns true if this partitionsSpec needs to determine the number of partitions to start data ingestion.String
toString()
-
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface org.apache.druid.indexer.partitions.PartitionsSpec
isForceGuaranteedRollupCompatible, isForceGuaranteedRollupCompatibleType
-
-
-
-
Field Detail
-
DEFAULT_MAX_TOTAL_ROWS
public static final long DEFAULT_MAX_TOTAL_ROWS
Default maxTotalRows for most task types except compaction task.- See Also:
- Constant Field Values
-
-
Method Detail
-
getType
public SecondaryPartitionType getType()
- Specified by:
getType
in interfacePartitionsSpec
-
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 interfacePartitionsSpec
-
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 interfacePartitionsSpec
-
getForceGuaranteedRollupIncompatiblityReason
public String getForceGuaranteedRollupIncompatiblityReason()
- Specified by:
getForceGuaranteedRollupIncompatiblityReason
in interfacePartitionsSpec
- Returns:
- Message describing why this partitionSpec is incompatible with forceGuaranteedRollup=true. Empty string if the partitionSpec is compatible.
-
-