// but we have to filter who belongs to my branch in NameJoinHashVisitor.
// We don't want to hash on something which will be used to join with same
// later component in the hierarchy.
private void addJoinHash(Component component, List<Expression> joinCondition) {
final TupleSchema tupleSchema = _compCost.get(component.getName()).getSchema();
final NameJoinHashVisitor joinOn = new NameJoinHashVisitor(tupleSchema, component);
for (final Expression exp : joinCondition)
exp.accept(joinOn);
final List<ValueExpression> hashExpressions = joinOn.getExpressions();
addHash(component, hashExpressions);
}