This is an automated email from the ASF dual-hosted git repository. kxiao pushed a commit to branch branch-2.0 in repository https://gitbox.apache.org/repos/asf/doris.git
commit e6febc12d71df6312d030460e4b4703b98bc38fa Author: minghong <[email protected]> AuthorDate: Mon Oct 9 11:09:07 2023 +0800 min max rf type (#25129) extend min-max rf to support 3 types: n<A m>A n<A<m, in which m/n are constants and A is column. this pr only contains thrift definition. --- gensrc/thrift/PlanNodes.thrift | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/gensrc/thrift/PlanNodes.thrift b/gensrc/thrift/PlanNodes.thrift index 9d75c7fc168..e32092994ef 100644 --- a/gensrc/thrift/PlanNodes.thrift +++ b/gensrc/thrift/PlanNodes.thrift @@ -1058,6 +1058,18 @@ enum TRuntimeFilterType { BITMAP = 16 } +// generate min-max runtime filter for non-equal condition or equal condition. +enum TMinMaxRuntimeFilterType { + // only min is valid, RF generated according to condition: n < col_A + MIN = 1 + // only max is valid, RF generated according to condition: m > col_A + MAX = 2 + // both min/max are valid, + // support hash join condition: col_A = col_B + // support other join condition: n < col_A and col_A < m + MIN_MAX = 4 +} + // Specification of a runtime filter. struct TRuntimeFilterDesc { // Filter unique id (within a query) @@ -1098,8 +1110,13 @@ struct TRuntimeFilterDesc { 11: optional bool bitmap_filter_not_in 12: optional bool opt_remote_rf; + + // for min/max rf + 13: optional TMinMaxRuntimeFilterType min_max_type; } + + struct TDataGenScanNode { 1: optional Types.TTupleId tuple_id 2: optional TDataGenFunctionName func_name --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
