gianm opened a new pull request #11169:
URL: https://github.com/apache/druid/pull/11169


   Normally, InDimFilters that come from JSON have HashSets for "values".
   However, programmatically-generated filters (like the ones from #11068)
   may use other set types. Some set types, like TreeSets with natural
   ordering, will throw NPE on "contains(null)", which causes the
   InDimFilter's ValueMatcher to throw NPE if it encounters a null value.
   
   This patch adds code to detect if the values set can support
   contains(null), and if not, wrap that in a null-checking lambda.
   
   Also included:
   
   - Remove unneeded NullHandling.needsEmptyToNull method.
   - Update IndexedTableJoinable to generate a TreeSet that does not
     require lambda-wrapping. (This particular TreeSet is how I noticed
     the bug in the first place.)


-- 
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.

For queries about this service, please contact Infrastructure at:
[email protected]



---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to