gianm opened a new pull request, #15611:
URL: https://github.com/apache/druid/pull/15611
1) Add a "mayIncludeUnknown" parameter to DimFilter#optimize. This is
important
because otherwise the reverse-lookup optimization is done improperly when
the "in" filter appears under a "not", and the lookup extractionFn may
return
null for some possible values of the filtered column. The
"includeUnknown" test
cases in InDimFilterTest illustrate the difference in behavior.
2) Enhance InDimFilter#optimizeLookup to handle "mayIncludeUnknown", and to
be able
to do a reverse lookup in a wider variety of cases.
3) Make "unapply" protected in LookupExtractor, and move callers to
"unapplyAll".
The main reason is that MapLookupExtractor, a common implementation,
lacks a
reverse mapping and therefore does a scan of the map for each call to
"unapply".
For performance sake these calls need to be batched.
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]