push value range and set index get operations into BitmapIndex (#12315)
authorClint Wylie <cwylie@apache.org>
Wed, 9 Mar 2022 21:30:58 +0000 (13:30 -0800)
committerGitHub <noreply@github.com>
Wed, 9 Mar 2022 21:30:58 +0000 (13:30 -0800)
commit9cfb23935ffc3eace79b526dd84d912d129a9b1c
tree2dcc68191a8598cef40d252aba0ad4cde4803d16
parent9f6a930462c77a96beb793b5809d878534998742
push value range and set index get operations into BitmapIndex (#12315)

* push value range and set index get operations into BitmapIndex

* fix bug

* oops, fix better

* better like, fix test, javadocs

* fix checkstyle

* simplify and fixes

* cache

* fix tests

* move indexOf into GenericIndexed

* oops

* fix tests
38 files changed:
benchmarks/src/test/java/org/apache/druid/benchmark/ExpressionVectorSelectorBenchmark.java
benchmarks/src/test/java/org/apache/druid/benchmark/MockBitmapIndexSelector.java
processing/src/main/java/org/apache/druid/query/dimension/PredicateFilteredDimensionSelector.java
processing/src/main/java/org/apache/druid/query/filter/BitmapIndexSelector.java
processing/src/main/java/org/apache/druid/query/filter/InDimFilter.java
processing/src/main/java/org/apache/druid/query/filter/LikeDimFilter.java
processing/src/main/java/org/apache/druid/query/metadata/SegmentAnalyzer.java
processing/src/main/java/org/apache/druid/segment/ColumnInspector.java
processing/src/main/java/org/apache/druid/segment/ColumnSelector.java
processing/src/main/java/org/apache/druid/segment/ColumnSelectorBitmapIndexSelector.java
processing/src/main/java/org/apache/druid/segment/QueryableIndexColumnSelectorFactory.java
processing/src/main/java/org/apache/druid/segment/QueryableIndexIndexableAdapter.java
processing/src/main/java/org/apache/druid/segment/QueryableIndexStorageAdapter.java
processing/src/main/java/org/apache/druid/segment/VirtualColumns.java
processing/src/main/java/org/apache/druid/segment/column/BitmapIndex.java
processing/src/main/java/org/apache/druid/segment/data/GenericIndexed.java
processing/src/main/java/org/apache/druid/segment/data/Indexed.java
processing/src/main/java/org/apache/druid/segment/filter/BoundFilter.java
processing/src/main/java/org/apache/druid/segment/filter/ExpressionFilter.java
processing/src/main/java/org/apache/druid/segment/filter/Filters.java
processing/src/main/java/org/apache/druid/segment/filter/LikeFilter.java
processing/src/main/java/org/apache/druid/segment/serde/StringBitmapIndexColumnPartSupplier.java
processing/src/main/java/org/apache/druid/segment/vector/QueryableIndexVectorColumnSelectorFactory.java
processing/src/main/java/org/apache/druid/segment/virtual/ExpressionPlan.java
processing/src/main/java/org/apache/druid/segment/virtual/ExpressionSelectors.java
processing/src/main/java/org/apache/druid/segment/virtual/ListFilteredVirtualColumn.java
processing/src/test/java/org/apache/druid/segment/ColumnSelectorBitmapIndexSelectorTest.java
processing/src/test/java/org/apache/druid/segment/IndexMergerNullHandlingTest.java
processing/src/test/java/org/apache/druid/segment/filter/BaseFilterTest.java
processing/src/test/java/org/apache/druid/segment/filter/BoundFilterTest.java
processing/src/test/java/org/apache/druid/segment/filter/ExtractionDimFilterTest.java
processing/src/test/java/org/apache/druid/segment/filter/FiltersTest.java
processing/src/test/java/org/apache/druid/segment/filter/SelectorFilterTest.java
processing/src/test/java/org/apache/druid/segment/join/BaseHashJoinSegmentStorageAdapterTest.java
processing/src/test/java/org/apache/druid/segment/virtual/ExpressionPlannerTest.java
processing/src/test/java/org/apache/druid/segment/virtual/ExpressionSelectorsTest.java
processing/src/test/java/org/apache/druid/segment/virtual/ExpressionVectorSelectorsTest.java
processing/src/test/java/org/apache/druid/segment/virtual/ListFilteredVirtualColumnSelectorTest.java