Add javadocs for enableFilterPushDown. (#9423)

This commit is contained in:
Gian Merlino 2020-02-26 22:07:33 -08:00 committed by GitHub
parent ae617bf5dd
commit ef3d24e886
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 17 additions and 13 deletions

View File

@ -43,10 +43,11 @@ public class HashJoinSegment extends AbstractSegment
private final boolean enableFilterPushDown; private final boolean enableFilterPushDown;
/** /**
* @param baseSegment The left-hand side base segment * @param baseSegment The left-hand side base segment
* @param clauses The right-hand side clauses. The caller is responsible for ensuring that there are no * @param clauses The right-hand side clauses. The caller is responsible for ensuring that there are no
* duplicate prefixes or prefixes that shadow each other across the clauses * duplicate prefixes or prefixes that shadow each other across the clauses
* @param enableFilterPushDown Whether to enable filter push down optimizations to the base segment * @param enableFilterPushDown Whether to enable filter push down optimizations to the base segment. In production
* this should generally be {@code QueryContexts.getEnableJoinFilterPushDown(query)}.
*/ */
public HashJoinSegment( public HashJoinSegment(
Segment baseSegment, Segment baseSegment,

View File

@ -58,9 +58,9 @@ public class HashJoinSegmentStorageAdapter implements StorageAdapter
private final boolean enableFilterPushDown; private final boolean enableFilterPushDown;
/** /**
* @param baseAdapter A StorageAdapter for the left-hand side base segment * @param baseAdapter A StorageAdapter for the left-hand side base segment
* @param clauses The right-hand side clauses. The caller is responsible for ensuring that there are no * @param clauses The right-hand side clauses. The caller is responsible for ensuring that there are no
* duplicate prefixes or prefixes that shadow each other across the clauses * duplicate prefixes or prefixes that shadow each other across the clauses
* @param enableFilterPushDown Whether to enable filter push down optimizations to the base segment * @param enableFilterPushDown Whether to enable filter push down optimizations to the base segment
*/ */
HashJoinSegmentStorageAdapter( HashJoinSegmentStorageAdapter(
@ -305,9 +305,10 @@ public class HashJoinSegmentStorageAdapter implements StorageAdapter
* will add each VirtualColumn in the provided virtualColumns to either preJoinVirtualColumns or * will add each VirtualColumn in the provided virtualColumns to either preJoinVirtualColumns or
* postJoinVirtualColumns based on whether the virtual column is pre-join or post-join. * postJoinVirtualColumns based on whether the virtual column is pre-join or post-join.
* *
* @param virtualColumns List of virtual columns from the query * @param virtualColumns List of virtual columns from the query
* @param preJoinVirtualColumns If provided, virtual columns determined to be pre-join will be added to this list * @param preJoinVirtualColumns If provided, virtual columns determined to be pre-join will be added to this list
* @param postJoinVirtualColumns If provided, virtual columns determined to be post-join will be added to this list * @param postJoinVirtualColumns If provided, virtual columns determined to be post-join will be added to this list
*
* @return The set of base column names, including any pre-join virtual columns. * @return The set of base column names, including any pre-join virtual columns.
*/ */
public Set<String> determineBaseColumnsWithPreAndPostJoinVirtualColumns( public Set<String> determineBaseColumnsWithPreAndPostJoinVirtualColumns(

View File

@ -71,10 +71,12 @@ public class Joinables
* Creates a Function that maps base segments to {@link HashJoinSegment} if needed (i.e. if the number of join * Creates a Function that maps base segments to {@link HashJoinSegment} if needed (i.e. if the number of join
* clauses is > 0). If mapping is not needed, this method will return {@link Function#identity()}. * clauses is > 0). If mapping is not needed, this method will return {@link Function#identity()}.
* *
* @param clauses pre-joinable clauses * @param clauses pre-joinable clauses
* @param joinableFactory factory for joinables * @param joinableFactory factory for joinables
* @param cpuTimeAccumulator an accumulator that we will add CPU nanos to; this is part of the function to encourage * @param cpuTimeAccumulator an accumulator that we will add CPU nanos to; this is part of the function to encourage
* callers to remember to track metrics on CPU time required for creation of Joinables * callers to remember to track metrics on CPU time required for creation of Joinables
* @param enableFilterPushDown whether to enable filter push down optimizations to the base segment. In production
* this should generally be {@code QueryContexts.getEnableJoinFilterPushDown(query)}.
*/ */
public static Function<Segment, Segment> createSegmentMapFn( public static Function<Segment, Segment> createSegmentMapFn(
final List<PreJoinableClause> clauses, final List<PreJoinableClause> clauses,