if (queueIterator != null) { if (queueIterator.hasNext()) { next = join(lhsTuple, queueIterator.next()); } else { boolean eq = nextLhsTuple != null && lhsKey.equals(nextLhsKey); if (rhsTuple != null) { if (lhsKey.equals(rhsKey)) { next = join(lhsTuple, rhsTuple); if (nextLhsTuple != null && lhsKey.equals(nextLhsKey)) { queue.offer(rhsTuple); } else if (lhsKey.compareTo(rhsKey) < 0) { if (type == JoinType.Full || type == JoinType.Left) { next = join(lhsTuple, null); next = join(null, rhsTuple); next = join(lhsTuple, null); advance(true); next = join(null, rhsTuple); advance(false);
if (queueIterator != null) { if (queueIterator.hasNext()) { next = join(lhsTuple, queueIterator.next()); } else { boolean eq = nextLhsTuple != null && lhsKey.equals(nextLhsKey); if (rhsTuple != null) { if (lhsKey.equals(rhsKey)) { next = join(lhsTuple, rhsTuple); if (nextLhsTuple != null && lhsKey.equals(nextLhsKey)) { queue.offer(rhsTuple); } else if (lhsKey.compareTo(rhsKey) < 0) { if (type == JoinType.Full || type == JoinType.Left) { next = join(lhsTuple, null); next = join(null, rhsTuple); next = join(lhsTuple, null); advance(true); next = join(null, rhsTuple); advance(false);
if (queueIterator != null) { if (queueIterator.hasNext()) { next = join(lhsTuple, queueIterator.next()); } else { boolean eq = nextLhsTuple != null && lhsKey.equals(nextLhsKey); if (rhsTuple != null) { if (lhsKey.equals(rhsKey)) { next = join(lhsTuple, rhsTuple); if (nextLhsTuple != null && lhsKey.equals(nextLhsKey)) { queue.offer(rhsTuple); } else if (lhsKey.compareTo(rhsKey) < 0) { if (type == JoinType.Full || type == JoinType.Left) { next = join(lhsTuple, null); next = join(null, rhsTuple); next = join(lhsTuple, null); advance(true); next = join(null, rhsTuple); advance(false);