}
@Override
public Void visitTableScan(TableScanNode node, Integer indent)
{
TupleDomain partitionsDomainSummary = node.getPartitionsDomainSummary();
print(indent, "- TableScan[%s, original constraint=%s] => [%s]", node.getTable(), node.getOriginalConstraint(), formatOutputs(node.getOutputSymbols()));
for (Map.Entry<Symbol, ColumnHandle> entry : node.getAssignments().entrySet()) {
boolean isOutputSymbol = node.getOutputSymbols().contains(entry.getKey());
boolean isInOriginalConstraint = DependencyExtractor.extractUnique(node.getOriginalConstraint()).contains(entry.getKey());
boolean isInDomainSummary = !partitionsDomainSummary.isNone() && partitionsDomainSummary.getDomains().keySet().contains(entry.getValue());
if (isOutputSymbol || isInOriginalConstraint || isInDomainSummary) {
print(indent + 2, "%s := %s", entry.getKey(), entry.getValue());
if (isInDomainSummary) {
print(indent + 3, ":: %s", simplifyDomain(partitionsDomainSummary.getDomains().get(entry.getValue())));
}
else if (partitionsDomainSummary.isNone()) {
print(indent + 3, ":: NONE");
}
}
}
return null;