public abstract class DropRule extends Object implements Rule
| Constructor and Description |
|---|
DropRule() |
| Modifier and Type | Method and Description |
|---|---|
CoordinatorStats |
run(DruidCoordinator coordinator,
DruidCoordinatorRuntimeParams params,
DataSegment segment)
DruidCoordinatorRuntimeParams.getUsedSegments() must not be called in Rule's code, because the used
segments are not specified for the DruidCoordinatorRuntimeParams passed into Rule's code. |
public CoordinatorStats run(DruidCoordinator coordinator, DruidCoordinatorRuntimeParams params, DataSegment segment)
RuleDruidCoordinatorRuntimeParams.getUsedSegments() must not be called in Rule's code, because the used
segments are not specified for the DruidCoordinatorRuntimeParams passed into Rule's code. This is because
DruidCoordinatorRuntimeParams entangles two slightly different (nonexistent yet) abstractions:
"DruidCoordinatorHelperParams" and "RuleParams" which contain params that only DruidCoordinatorHelpers and Rules need, respectively.
For example, ReplicationThrottler needs to belong only to "RuleParams",
but not "DruidCoordinatorHelperParams". The opposite for the collection of used segments.
See https://github.com/apache/druid/issues/7228Copyright © 2011–2020 The Apache Software Foundation. All rights reserved.