Class JoinFilterAnalysis


  • public class JoinFilterAnalysis
    extends Object
    Holds information about: - whether a filter can be pushed down - if it needs to be retained after the join, - a reference to the original filter - a potentially rewritten filter to be pushed down to the base table - a list of virtual columns that need to be created on the base table to support the pushed down filter
    • Constructor Detail

      • JoinFilterAnalysis

        public JoinFilterAnalysis​(boolean retainAfterJoin,
                                  Filter originalFilter,
                                  @Nullable
                                  Filter pushDownFilter)
    • Method Detail

      • isCanPushDown

        public boolean isCanPushDown()
      • isRetainAfterJoin

        public boolean isRetainAfterJoin()
      • getOriginalFilter

        public Filter getOriginalFilter()
      • createNoPushdownFilterAnalysis

        public static JoinFilterAnalysis createNoPushdownFilterAnalysis​(Filter originalFilter)
        Utility method for generating an analysis that represents: "Filter cannot be pushed down"
        Parameters:
        originalFilter - The original filter which cannot be pushed down
        Returns:
        analysis that represents: "Filter cannot be pushed down"