@Immutable public class MergeJoinComponent extends JoinComponent
equi-joins
, child-node joins
, and same-node joins
.
Note that it is required that the left and right processing components (where this component gets its results) must already be properly sorted and have had duplicates removed.
JoinComponent.Joinable, JoinComponent.TupleMerger, JoinComponent.ValueSelector
ProcessingComponent.DynamicOperation
LOCATION_COMPARATOR
Constructor and Description |
---|
MergeJoinComponent(QueryContext context,
ProcessingComponent left,
ProcessingComponent right,
ChildNodeJoinCondition condition,
JoinType joinType) |
MergeJoinComponent(QueryContext context,
ProcessingComponent left,
ProcessingComponent right,
EquiJoinCondition condition,
JoinType joinType) |
MergeJoinComponent(QueryContext context,
ProcessingComponent left,
ProcessingComponent right,
SameNodeJoinCondition condition,
JoinType joinType) |
Modifier and Type | Method and Description |
---|---|
List<Object[]> |
execute()
Execute this stage of processing and return the resulting tuples that each conform to the
columns . |
protected boolean |
isSameTuple(QueryResults.Columns columns,
Object[] tuple1,
Object[] tuple2) |
arrayAwareComparator, comparatorFor, createMerger, getJoinCondition, getJoinType, joinableFor, left, leftColunns, right, rightColumns, valueSelectorFor
close, createDynamicOperation, createSortComparator, emptyTuples, getColumns, getContext, getLocationIndexes, problems
public MergeJoinComponent(QueryContext context, ProcessingComponent left, ProcessingComponent right, EquiJoinCondition condition, JoinType joinType)
public MergeJoinComponent(QueryContext context, ProcessingComponent left, ProcessingComponent right, ChildNodeJoinCondition condition, JoinType joinType)
public MergeJoinComponent(QueryContext context, ProcessingComponent left, ProcessingComponent right, SameNodeJoinCondition condition, JoinType joinType)
public List<Object[]> execute()
ProcessingComponent
columns
.execute
in class ProcessingComponent
columns
; never nullprotected final boolean isSameTuple(QueryResults.Columns columns, Object[] tuple1, Object[] tuple2)
Copyright © 2008-2014 JBoss, a division of Red Hat. All Rights Reserved.