code: private Stream<ExtensionalDataNode> selectRedundantNodesForConstraint(RelationDefinition sourceRelation,
                                                                 ForeignKeyConstraint constraint,
                                                                 IntermediateQuery query,
                                                                 InnerJoinNode joinNode,
                                                                 ImmutableMultimap<RelationDefinition, ExtensionalDataNode> dataNodeMap) {
          /**
           * "Target" data nodes === "referenced" data nodes
           */
          ImmutableCollection<ExtensionalDataNode> targetDataNodes = dataNodeMap.get(constraint.getReferencedRelation());
  
          /**
           * No optimization possible
           */
          if (targetDataNodes.isEmpty()) {
              return Stream.empty();
          }
  
          return dataNodeMap.get(sourceRelation).stream()
                  .flatMap(s -> targetDataNodes.stream()
                          .filter(t -> areMatching(s,t,constraint)))
                  .distinct()
                  .filter(t -> areNonFKColumnsUnused(t, query, constraint));
      }
docs: TODO: explain