Class JoinFilterAnalysis
- java.lang.Object
-
- org.apache.druid.segment.join.filter.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 Summary
Constructors Constructor Description JoinFilterAnalysis(boolean retainAfterJoin, Filter originalFilter, Filter pushDownFilter)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description static JoinFilterAnalysis
createNoPushdownFilterAnalysis(Filter originalFilter)
Utility method for generating an analysis that represents: "Filter cannot be pushed down"Filter
getOriginalFilter()
Optional<Filter>
getPushDownFilter()
boolean
isCanPushDown()
boolean
isRetainAfterJoin()
-
-
-
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"
-
-