// Materializing the filtering table does nothing, since it will be treated as a set
filteringSource = ((MaterializeSampleNode) filteringSource).getSource();
}
if (source instanceof MaterializeSampleNode) {
node = new SemiJoinNode(node.getId(), ((MaterializeSampleNode) source).getSource(), filteringSource, node.getSourceJoinSymbol(), node.getFilteringSourceJoinSymbol(), node.getSemiJoinOutput());
return new MaterializeSampleNode(source.getId(), node, ((MaterializeSampleNode) source).getSampleWeightSymbol());
}
else {
return new SemiJoinNode(node.getId(), source, filteringSource, node.getSourceJoinSymbol(), node.getFilteringSourceJoinSymbol(), node.getSemiJoinOutput());
}
}