public class DefaultSpeculator extends AbstractService implements Speculator
Speculator.EventTypeService.STATE| Constructor and Description |
|---|
DefaultSpeculator(Configuration conf,
AppContext context) |
DefaultSpeculator(Configuration conf,
AppContext context,
Clock clock) |
DefaultSpeculator(Configuration conf,
AppContext context,
TaskRuntimeEstimator estimator,
Clock clock) |
| Modifier and Type | Method and Description |
|---|---|
protected void |
addSpeculativeAttempt(TaskId taskID) |
boolean |
eventQueueEmpty() |
void |
handle(SpeculatorEvent event) |
void |
handleAttempt(TaskAttemptStatusUpdateEvent.TaskAttemptStatus status) |
void |
scanForSpeculations() |
protected void |
serviceStart()
Actions called during the INITED to STARTED transition.
|
protected void |
serviceStop()
Actions called during the transition to the STOPPED state.
|
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(Configuration conf, AppContext context)
public DefaultSpeculator(Configuration conf, AppContext context, Clock clock)
public DefaultSpeculator(Configuration conf, AppContext context, TaskRuntimeEstimator estimator, Clock clock)
protected void serviceStart()
throws Exception
AbstractServiceAbstractService.start() prevents re-entrancy.serviceStart in class AbstractServiceException - if needed -these will be caught,
wrapped, and trigger a service stopprotected void serviceStop()
throws Exception
AbstractServiceAbstractService.stop() prevents re-entrancy.
Implementations MUST write this to be robust against failures, including
checks for null references -and for the first failure to not stop other
attempts to shut down parts of the service.serviceStop in class AbstractServiceException - if needed -these will be caught and logged.public 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(TaskId taskID)
public void handle(SpeculatorEvent event)
handle in interface EventHandler<SpeculatorEvent>Copyright © 2013 Apache Software Foundation. All rights reserved.