clintropolis commented on code in PR #12627:
URL: https://github.com/apache/druid/pull/12627#discussion_r894993361


##########
processing/src/main/java/org/apache/druid/segment/virtual/ListFilteredVirtualColumn.java:
##########
@@ -357,6 +357,30 @@ public ImmutableBitmap next()
     }
   }
 
+  private static class ListFilteredNullValueIndex extends 
BaseListFilteredColumnIndex implements NullValueIndex

Review Comment:
   Good ask :+1: 
   
   the null index implementation I did originally wasn't actually right, 
because `ListFilteredVirtualColumn` has a lot of null value indexes (every 
value that does not match the filter is coerced to null). This area wasn't very 
well covered with tests and found some bugs with `ListFilteredVirtualColumn`, 
including a change that I previous I guess confused myself into thinking was 
the correct thing to do, but turns out isn't actually, at least with the way 
null matching currently works: 
https://github.com/apache/druid/pull/12315/files#diff-51091df51e6b1ec7f614404533c6322763b159b680ec31dd573cafb777c63f49R101,
 so I have effectively gone back to the old behavior.
   
   I ended up changing `LexicographicalRangeIndex` to no longer match nulls so 
that the `ListFilteredVirtualColumn` implementation could actually be correct 
with the current behavior of the bound filter, which is something I wanted to 
do anyway eventually, but didn't really have a choice after digging in (well I 
guess I could've removed it and not had a range index, but who wants that).



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

Reply via email to