Search in sources :

Example 1 with BaseLongVectorValueSelector

use of org.apache.druid.segment.vector.BaseLongVectorValueSelector in project druid by druid-io.

the class CardinalityVectorAggregatorTest method testAggregateLong.

@Test
public void testAggregateLong() {
    final long[] values = { 1, 2, 2, 3, 3, 3, 0 };
    final boolean[] nulls = NullHandling.replaceWithDefault() ? null : new boolean[] { false, false, false, false, false, false, true };
    final CardinalityVectorAggregator aggregator = new CardinalityVectorAggregator(Collections.singletonList(new LongCardinalityVectorProcessor(new BaseLongVectorValueSelector(new NoFilterVectorOffset(values.length, 0, values.length)) {

        @Override
        public long[] getLongVector() {
            return values;
        }

        @Nullable
        @Override
        public boolean[] getNullVector() {
            return nulls;
        }
    })));
    testAggregate(aggregator, values.length, NullHandling.replaceWithDefault() ? 4 : 3);
}
Also used : LongCardinalityVectorProcessor(org.apache.druid.query.aggregation.cardinality.vector.LongCardinalityVectorProcessor) BaseLongVectorValueSelector(org.apache.druid.segment.vector.BaseLongVectorValueSelector) NoFilterVectorOffset(org.apache.druid.segment.vector.NoFilterVectorOffset) Nullable(javax.annotation.Nullable) InitializedNullHandlingTest(org.apache.druid.testing.InitializedNullHandlingTest) Test(org.junit.Test)

Aggregations

Nullable (javax.annotation.Nullable)1 LongCardinalityVectorProcessor (org.apache.druid.query.aggregation.cardinality.vector.LongCardinalityVectorProcessor)1 BaseLongVectorValueSelector (org.apache.druid.segment.vector.BaseLongVectorValueSelector)1 NoFilterVectorOffset (org.apache.druid.segment.vector.NoFilterVectorOffset)1 InitializedNullHandlingTest (org.apache.druid.testing.InitializedNullHandlingTest)1 Test (org.junit.Test)1