java.io.Closeable, java.lang.AutoCloseable, Speculator, org.apache.hadoop.service.Service, org.apache.hadoop.yarn.event.EventHandler<SpeculatorEvent>public class DefaultSpeculator extends org.apache.hadoop.service.AbstractService implements Speculator
org.apache.hadoop.service.Service.STATESpeculator.EventType| Constructor | Description |
|---|---|
DefaultSpeculator(org.apache.hadoop.conf.Configuration conf,
AppContext context) |
|
DefaultSpeculator(org.apache.hadoop.conf.Configuration conf,
AppContext context,
TaskRuntimeEstimator estimator,
org.apache.hadoop.yarn.util.Clock clock) |
|
DefaultSpeculator(org.apache.hadoop.conf.Configuration conf,
AppContext context,
org.apache.hadoop.yarn.util.Clock clock) |
| Modifier and Type | Method | Description |
|---|---|---|
protected void |
addSpeculativeAttempt(org.apache.hadoop.mapreduce.v2.api.records.TaskId taskID) |
|
boolean |
eventQueueEmpty() |
|
int |
getMinimumAllowedSpeculativeTasks() |
|
double |
getProportionRunningTasksSpeculatable() |
|
double |
getProportionTotalTasksSpeculatable() |
|
long |
getSoonestRetryAfterNoSpeculate() |
|
long |
getSoonestRetryAfterSpeculate() |
|
void |
handle(SpeculatorEvent event) |
|
void |
handleAttempt(TaskAttemptStatusUpdateEvent.TaskAttemptStatus status) |
|
void |
scanForSpeculations() |
|
protected void |
serviceStart() |
|
protected void |
serviceStop() |
|
protected void |
statusUpdate(TaskAttemptStatusUpdateEvent.TaskAttemptStatus reportedStatus,
long timestamp) |
Absorbs one TaskAttemptStatus
|
close, getBlockers, getConfig, getFailureCause, getFailureState, getLifecycleHistory, getName, getServiceState, getStartTime, init, isInState, noteFailure, putBlocker, registerGlobalListener, registerServiceListener, removeBlocker, serviceInit, setConfig, start, stop, toString, unregisterGlobalListener, unregisterServiceListener, waitForServiceToStoppublic DefaultSpeculator(org.apache.hadoop.conf.Configuration conf,
AppContext context)
public DefaultSpeculator(org.apache.hadoop.conf.Configuration conf,
AppContext context,
org.apache.hadoop.yarn.util.Clock clock)
public DefaultSpeculator(org.apache.hadoop.conf.Configuration conf,
AppContext context,
TaskRuntimeEstimator estimator,
org.apache.hadoop.yarn.util.Clock clock)
protected void serviceStart()
throws java.lang.Exception
serviceStart in class org.apache.hadoop.service.AbstractServicejava.lang.Exceptionprotected void serviceStop()
throws java.lang.Exception
serviceStop in class org.apache.hadoop.service.AbstractServicejava.lang.Exceptionpublic void handleAttempt(TaskAttemptStatusUpdateEvent.TaskAttemptStatus status)
handleAttempt in interface Speculatorpublic boolean eventQueueEmpty()
public void scanForSpeculations()
protected void statusUpdate(TaskAttemptStatusUpdateEvent.TaskAttemptStatus reportedStatus, long timestamp)
reportedStatus - the status report that we got from a task attempt
that we want to fold into the speculation data for this jobtimestamp - the time this status corresponds to. This matters
because statuses contain progress.protected void addSpeculativeAttempt(org.apache.hadoop.mapreduce.v2.api.records.TaskId taskID)
public void handle(SpeculatorEvent event)
handle in interface org.apache.hadoop.yarn.event.EventHandler<SpeculatorEvent>@VisibleForTesting public long getSoonestRetryAfterNoSpeculate()
@VisibleForTesting public long getSoonestRetryAfterSpeculate()
@VisibleForTesting public double getProportionRunningTasksSpeculatable()
@VisibleForTesting public double getProportionTotalTasksSpeculatable()
@VisibleForTesting public int getMinimumAllowedSpeculativeTasks()
Copyright © 2008–2025 Apache Software Foundation. All rights reserved.