LogicalNode left = joinNode.getRightChild();
LogicalNode right = joinNode.getLeftChild();
// here we should stop selection pushdown on the null supplying side(s) of an outer join
// get the two operands of the join operation as well as the join type
JoinType joinType = joinNode.getJoinType();
EvalNode joinQual = joinNode.getJoinQual();
if (joinQual != null && isOuterJoin(joinType)) {
// if both are fields
if (joinQual.getLeftExpr().getType() == EvalType.FIELD && joinQual.getRightExpr().getType() == EvalType.FIELD) {