public abstract class ReduceStreamingReceiver extends SourceReceiver
Modifier and Type | Field and Description |
---|---|
protected ReduceFunction |
reduceFunction |
barriers, destination, isSyncSent, messages, operation, sendPendingMax, sourcesOfTarget, syncReceived, syncState, targetStates, workerId
Constructor and Description |
---|
ReduceStreamingReceiver(int dst,
ReduceFunction function) |
ReduceStreamingReceiver(ReduceFunction function) |
Modifier and Type | Method and Description |
---|---|
protected boolean |
aggregate(int target,
boolean sync,
boolean allValuesFound)
Aggregate values from sources for a target, assumes every source has a value
|
abstract boolean |
handleMessage(int source,
java.lang.Object message,
int flags,
int dest) |
void |
init(Config cfg,
DataFlowOperation op,
java.util.Map<java.lang.Integer,java.util.List<java.lang.Integer>> expectedIds)
Initialize the message receiver with tasks from which messages are expected
For each sub edge in graph, for each path, gives the expected task ids
|
protected boolean |
isAllEmpty(int target)
Check weather all the other information is flushed
|
protected boolean |
isFilledToSend(int target,
boolean sync)
Return true if we are filled to send
|
protected void |
onSyncEvent(int target,
byte[] value)
This method is called when there is a sync event on the operation
|
protected boolean |
sendSyncForward(int target)
Handle the sync
|
protected boolean |
sendToTarget(int target,
boolean sync)
Send the values to a target
|
allQueuesEmpty, allSyncsPresent, clean, isComplete, onFinish, onMessage, progress
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
close, onMessage
protected ReduceFunction reduceFunction
public ReduceStreamingReceiver(ReduceFunction function)
public ReduceStreamingReceiver(int dst, ReduceFunction function)
public void init(Config cfg, DataFlowOperation op, java.util.Map<java.lang.Integer,java.util.List<java.lang.Integer>> expectedIds)
MessageReceiver
target -> source tasks
init
in interface MessageReceiver
init
in class SourceReceiver
expectedIds
- expected task idsprotected boolean sendToTarget(int target, boolean sync)
SourceReceiver
sendToTarget
in class SourceReceiver
target
- the targetprotected boolean aggregate(int target, boolean sync, boolean allValuesFound)
SourceReceiver
aggregate
in class SourceReceiver
target
- targetsync
- true if all the syncs are presentprotected void onSyncEvent(int target, byte[] value)
SourceReceiver
onSyncEvent
in class SourceReceiver
target
- the target to which the sync event belongvalue
- the byte value, can be nullprotected boolean isAllEmpty(int target)
SourceReceiver
isAllEmpty
in class SourceReceiver
target
- targetprotected boolean sendSyncForward(int target)
SourceReceiver
sendSyncForward
in class SourceReceiver
target
- targetprotected boolean isFilledToSend(int target, boolean sync)
SourceReceiver
isFilledToSend
in class SourceReceiver
public abstract boolean handleMessage(int source, java.lang.Object message, int flags, int dest)