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]