public abstract class Executor extends Object implements Callable, JCQueue.Consumer
Modifier | Constructor and Description |
---|---|
protected |
Executor(WorkerState workerData,
List<Long> executorId,
Map<String,String> credentials,
String type) |
protected final WorkerState workerData
protected final WorkerTopologyContext workerTopologyContext
protected final String componentId
protected final AtomicBoolean openOrPrepareWasCalled
protected final String stormId
protected final HashMap sharedExecutorData
protected final CountDownLatch workerReady
protected final AtomicBoolean stormActive
protected final AtomicReference<Map<String,DebugOptions>> stormComponentDebug
protected final Runnable suicideFn
protected final IStormClusterState stormClusterState
protected final Map<Integer,Map<Integer,Map<String,IMetric>>> intervalToTaskToMetricToRegistry
protected final Map<String,Map<String,LoadAwareCustomStreamGrouping>> streamToComponentToGrouper
protected final List<LoadAwareCustomStreamGrouping> groupers
protected final ReportErrorAndDie reportErrorDie
protected final BooleanSupplier sampler
protected final String type
protected final IReportError reportError
protected final Random rand
protected final JCQueue receiveQueue
protected final Boolean isDebug
protected final Boolean hasEventLoggers
protected final boolean ackingEnabled
protected final org.apache.storm.shade.org.jctools.queues.MpscChunkedArrayQueue<AddressedTuple> pendingEmits
protected ExecutorTransfer executorTransfer
protected int idToTaskBase
protected String hostname
public static Executor mkExecutor(WorkerState workerState, List<Long> executorId, Map<String,String> credentials)
public Queue<AddressedTuple> getPendingEmits()
public ExecutorShutdown execute() throws Exception
separated from mkExecutor in order to replace executor transfer in executor data for testing.
Exception
public abstract void tupleActionFn(int taskId, TupleImpl tuple) throws Exception
Exception
public void accept(Object event)
accept
in interface org.apache.storm.shade.org.jctools.queues.MessagePassingQueue.Consumer<Object>
accept
in interface JCQueue.Consumer
public void setNeedToRefreshCreds()
protected void updateExecCredsIfRequired()
public void flush()
flush
in interface JCQueue.Consumer
protected void setupMetrics()
protected void setupTicks(boolean isSpout)
public void reflectNewLoadMapping(LoadMapping loadMapping)
public boolean publishFlushTuple()
public String getComponentId()
public AtomicBoolean getOpenOrPrepareWasCalled()
public String getStormId()
public abstract CommonStats getStats()
public String getType()
public Boolean getIsDebug()
public ExecutorTransfer getExecutorTransfer()
public IReportError getReportError()
public WorkerTopologyContext getWorkerTopologyContext()
public boolean samplerCheck()
public AtomicReference<Map<String,DebugOptions>> getStormComponentDebug()
public JCQueue getReceiveQueue()
public IStormClusterState getStormClusterState()
public WorkerState getWorkerData()
public Map<String,Map<String,LoadAwareCustomStreamGrouping>> getStreamToComponentToGrouper()
public HashMap getSharedExecutorData()
public Map<Integer,Map<Integer,Map<String,IMetric>>> getIntervalToTaskToMetricToRegistry()
public void setLocalExecutorTransfer(ExecutorTransfer executorTransfer)
public void incrementReportedErrorCount()
Copyright © 2022 The Apache Software Foundation. All rights reserved.