Class MetadataCleanupDuty
- java.lang.Object
-
- org.apache.druid.server.coordinator.duty.MetadataCleanupDuty
-
- All Implemented Interfaces:
CoordinatorDuty
- Direct Known Subclasses:
KillAuditLog,KillCompactionConfig,KillDatasourceMetadata,KillRules,KillSupervisors,KillSupervisorsCustomDuty
public abstract class MetadataCleanupDuty extends Object implements CoordinatorDuty
Performs cleanup of stale metadata entries created before a configured retain duration.In every invocation of
run(org.apache.druid.server.coordinator.DruidCoordinatorRuntimeParams), the duty checks if thecleanupPeriodhas elapsed since thelastCleanupTime. If it has, then the methodcleanupEntriesCreatedBefore(DateTime)is invoked. Otherwise, the duty completes immediately without making any changes.
-
-
Constructor Summary
Constructors Modifier Constructor Description protectedMetadataCleanupDuty(String entryType, String propertyPrefix, boolean cleanupEnabled, org.joda.time.Duration cleanupPeriod, org.joda.time.Duration retainDuration, CoordinatorStat cleanupCountStat, DruidCoordinatorConfig coordinatorConfig)
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description protected abstract intcleanupEntriesCreatedBefore(org.joda.time.DateTime minCreatedTime)Cleans up metadata entries created before theminCreatedTime.DruidCoordinatorRuntimeParamsrun(DruidCoordinatorRuntimeParams params)Implementations of this method run various activities performed by the coordinator.
-
-
-
Constructor Detail
-
MetadataCleanupDuty
protected MetadataCleanupDuty(String entryType, String propertyPrefix, boolean cleanupEnabled, org.joda.time.Duration cleanupPeriod, org.joda.time.Duration retainDuration, CoordinatorStat cleanupCountStat, DruidCoordinatorConfig coordinatorConfig)
-
-
Method Detail
-
run
@Nullable public DruidCoordinatorRuntimeParams run(DruidCoordinatorRuntimeParams params)
Description copied from interface:CoordinatorDutyImplementations of this method run various activities performed by the coordinator. Input params can be used and modified. The returned DruidCoordinatorRuntimeParams is passed to the next duty.- Specified by:
runin interfaceCoordinatorDuty- Returns:
- same as input or a modified value to be used by next duty. Null return
values will prevent subsequent CoordinatorDuty objects (see the order in the lists passed into the constructor of
DruidCoordinator.DutiesRunnable) from running until the next cycle.
-
cleanupEntriesCreatedBefore
protected abstract int cleanupEntriesCreatedBefore(org.joda.time.DateTime minCreatedTime)
Cleans up metadata entries created before theminCreatedTime.This method is not invoked if the
cleanupPeriodhas not elapsed since thelastCleanupTime.- Returns:
- Number of deleted metadata entries
-
-