Search in sources :

Example 1 with Outbox

use of org.apache.ignite.internal.sql.engine.exec.rel.Outbox in project ignite-3 by apache.

the class LogicalRelImplementor method visit.

/**
 * {@inheritDoc}
 */
@Override
public Node<RowT> visit(IgniteSender rel) {
    IgniteDistribution distribution = rel.distribution();
    Destination<RowT> dest = distribution.destination(ctx, affSrvc, ctx.target());
    // Outbox fragment ID is used as exchange ID as well.
    Outbox<RowT> outbox = new Outbox<>(ctx, rel.getRowType(), exchangeSvc, mailboxRegistry, rel.exchangeId(), rel.targetFragmentId(), dest);
    Node<RowT> input = visit(rel.getInput());
    outbox.register(input);
    mailboxRegistry.register(outbox);
    return outbox;
}
Also used : Outbox(org.apache.ignite.internal.sql.engine.exec.rel.Outbox) IgniteDistribution(org.apache.ignite.internal.sql.engine.trait.IgniteDistribution)

Aggregations

Outbox (org.apache.ignite.internal.sql.engine.exec.rel.Outbox)1 IgniteDistribution (org.apache.ignite.internal.sql.engine.trait.IgniteDistribution)1