presto-main/src/main/java/io/prestosql/sql/planner/DistributedExecutionPlanner.java/Visitor/visitScanAndFilter
class Visitor:        private Map<PlanNodeId, SplitSource> visitScanAndFilter(TableScanNode node, Optional<FilterNode> filter)
        {
            List<DynamicFilters.Descriptor> dynamicFilters = filter
                    .map(FilterNode::getPredicate)
                    .map(expression -> extractDynamicFilters(metadata, expression))
                    .map(DynamicFilters.ExtractResult::getDynamicConjuncts)
                    .orElse(ImmutableList.of());

            // TODO: Execution must be plugged in here
            if (!dynamicFilters.isEmpty()) {
                log.debug("Dynamic filters: %s", dynamicFilters);
            }

            // get dataSource for table
            SplitSource splitSource = splitManager.getSplits(
                    session,
                    node.getTable(),
                    stageExecutionDescriptor.isScanGroupedExecution(node.getId()) ? GROUPED_SCHEDULING : UNGROUPED_SCHEDULING);

            splitSources.add(splitSource);

            return ImmutableMap.of(node.getId(), splitSource);
        }