public class DefaultBlacklistStrategy extends Object implements IBlacklistStrategy
| Modifier and Type | Field and Description |
|---|---|
static int |
DEFAULT_BLACKLIST_SCHEDULER_RESUME_TIME |
static int |
DEFAULT_BLACKLIST_SCHEDULER_TOLERANCE_COUNT |
| Constructor and Description |
|---|
DefaultBlacklistStrategy() |
| Modifier and Type | Method and Description |
|---|---|
protected Map<String,Set<String>> |
createHostToSupervisorMap(List<String> blacklistedNodeIds,
Cluster cluster) |
Set<String> |
getBlacklist(List<Map<String,Set<Integer>>> supervisorsWithFailures,
List<Map<String,Integer>> sendAssignmentFailureCount,
Cluster cluster,
Topologies topologies)
Get blacklist by blacklist strategy.
|
void |
prepare(Map<String,Object> conf) |
protected Set<String> |
releaseBlacklistWhenNeeded(Cluster cluster,
List<String> blacklistedNodeIds)
Decide when/if to release blacklisted hosts.
|
void |
resumeFromBlacklist()
resume supervisors form blacklist.
|
public static final int DEFAULT_BLACKLIST_SCHEDULER_RESUME_TIME
public static final int DEFAULT_BLACKLIST_SCHEDULER_TOLERANCE_COUNT
public void prepare(Map<String,Object> conf)
prepare in interface IBlacklistStrategypublic Set<String> getBlacklist(List<Map<String,Set<Integer>>> supervisorsWithFailures, List<Map<String,Integer>> sendAssignmentFailureCount, Cluster cluster, Topologies topologies)
IBlacklistStrategygetBlacklist in interface IBlacklistStrategysupervisorsWithFailures - bad supervisors buffered in sliding windowsendAssignmentFailureCount - supervisors with failed assignment calls in sliding windowcluster - the cluster these topologies are running in. `cluster` contains everything user
need to develop a new scheduling logic. e.g. supervisors information, available slots, current
assignments for all the topologies etc. User can set the new assignment for topologies using
cluster.setAssignmentById()`topologies - all the topologies in the cluster, some of them need schedule. Topologies object here
only contain static information about topologies. Information like assignments, slots are all in
the `cluster` object.public void resumeFromBlacklist()
IBlacklistStrategyresumeFromBlacklist in interface IBlacklistStrategyprotected Set<String> releaseBlacklistWhenNeeded(Cluster cluster, List<String> blacklistedNodeIds)
cluster - the current state of the cluster.blacklistedNodeIds - the current set of blacklisted node ids sorted by earliestCopyright © 2023 The Apache Software Foundation. All rights reserved.