Interface Receiver

All Superinterfaces:
FragmentLeaf, GraphValue<PhysicalOperator>, Iterable<PhysicalOperator>, PhysicalOperator
All Known Implementing Classes:
AbstractReceiver, MergingReceiverPOP, UnorderedReceiver

public interface Receiver extends FragmentLeaf
A receiver is one half of an exchange operator. The receiver is responsible for taking in one or more streams from corresponding Senders. Receivers are a special type of Physical Operator that are typically only expressed within the execution plan.
  • Method Details

    • getProvidingEndpoints

      List<MinorFragmentEndpoint> getProvidingEndpoints()
      A receiver is expecting streams from one or more providing endpoints.
      Returns:
      List of sender MinorFragmentEndpoints each containing sender fragment MinorFragmentId and endpoint where it is running.
    • supportsOutOfOrderExchange

      boolean supportsOutOfOrderExchange()
      Whether or not this receive supports out of order exchange. This provides a hint for the scheduling node on whether the receiver can start work if only a subset of all sending endpoints are currently providing data. A random receiver would supports this form of operation. A NWAY receiver would not.
      Returns:
      True if this receiver supports working on a streaming/out of order input.
    • getOppositeMajorFragmentId

      int getOppositeMajorFragmentId()
    • isSpooling

      boolean isSpooling()