@Override public BlockBuilder createBlockBuilder(BlockBuilderStatus blockBuilderStatus, int expectedEntries) { return createBlockBuilder(blockBuilderStatus, expectedEntries, Byte.BYTES); }
@Override public Block[] getSequenceBlocks(int start, int length) { BlockBuilder blockBuilder = BOOLEAN.createBlockBuilder(null, length); for (int i = start; i < start + length; i++) { // true, false, true, false... BOOLEAN.writeBoolean(blockBuilder, i % 2 == 0); } return new Block[] {blockBuilder.build()}; }
@Override public Block[] getSequenceBlocks(int start, int length) { BlockBuilder blockBuilder = BOOLEAN.createBlockBuilder(null, length); for (int i = start; i < start + length; i++) { // false, true, false, true... BOOLEAN.writeBoolean(blockBuilder, i % 2 != 0); } return new Block[] {blockBuilder.build()}; }
@Override public Block[] getSequenceBlocks(int start, int length) { BlockBuilder blockBuilder = BOOLEAN.createBlockBuilder(null, length); for (int i = start; i < start + length; i++) { BOOLEAN.writeBoolean(blockBuilder, i % 2 == 0); } return new Block[] {blockBuilder.build()}; }
@Override public Block[] getSequenceBlocks(int start, int length) { BlockBuilder blockBuilder = BOOLEAN.createBlockBuilder(null, length); for (int i = start; i < start + length; i++) { // false, true, false, true... BOOLEAN.writeBoolean(blockBuilder, i % 2 != 0); } return new Block[] {blockBuilder.build()}; }
@Override public Block[] getSequenceBlocks(int start, int length) { BlockBuilder blockBuilder = BOOLEAN.createBlockBuilder(null, length); for (int i = start; i < start + length; i++) { // true, false, true, false... BOOLEAN.writeBoolean(blockBuilder, i % 2 == 0); } return new Block[] {blockBuilder.build()}; }
@Override public Block[] getSequenceBlocks(int start, int length) { BlockBuilder blockBuilder = BOOLEAN.createBlockBuilder(null, length); for (int i = start; i < start + length; i++) { BOOLEAN.writeBoolean(blockBuilder, i % 2 == 0); } return new Block[] {blockBuilder.build()}; }
public static Block createBooleansBlock(Iterable<Boolean> values) { BlockBuilder builder = BOOLEAN.createBlockBuilder(null, 100); for (Boolean value : values) { if (value == null) { builder.appendNull(); } else { BOOLEAN.writeBoolean(builder, value); } } return builder.build(); }
public static Block createBooleansBlock(Iterable<Boolean> values) { BlockBuilder builder = BOOLEAN.createBlockBuilder(null, 100); for (Boolean value : values) { if (value == null) { builder.appendNull(); } else { BOOLEAN.writeBoolean(builder, value); } } return builder.build(); }
public Work<Block> markDistinctRows(Page page) { return new TransformWork<>( groupByHash.getGroupIds(page), ids -> { BlockBuilder blockBuilder = BOOLEAN.createBlockBuilder(null, ids.getPositionCount()); for (int i = 0; i < ids.getPositionCount(); i++) { if (ids.getGroupId(i) == nextDistinctId) { BOOLEAN.writeBoolean(blockBuilder, true); nextDistinctId++; } else { BOOLEAN.writeBoolean(blockBuilder, false); } } return blockBuilder.build(); }); }
public Work<Block> markDistinctRows(Page page) { return new TransformWork<>( groupByHash.getGroupIds(page), ids -> { BlockBuilder blockBuilder = BOOLEAN.createBlockBuilder(null, ids.getPositionCount()); for (int i = 0; i < ids.getPositionCount(); i++) { if (ids.getGroupId(i) == nextDistinctId) { BOOLEAN.writeBoolean(blockBuilder, true); nextDistinctId++; } else { BOOLEAN.writeBoolean(blockBuilder, false); } } return blockBuilder.build(); }); }
private static Page[] maskPages(boolean maskValue, Page... pages) { Page[] maskedPages = new Page[pages.length]; for (int i = 0; i < pages.length; i++) { Page page = pages[i]; BlockBuilder blockBuilder = BOOLEAN.createBlockBuilder(null, page.getPositionCount()); for (int j = 0; j < page.getPositionCount(); j++) { BOOLEAN.writeBoolean(blockBuilder, maskValue); } maskedPages[i] = page.appendColumn(blockBuilder.build()); } return maskedPages; }
private static Page[] maskPages(boolean maskValue, Page... pages) { Page[] maskedPages = new Page[pages.length]; for (int i = 0; i < pages.length; i++) { Page page = pages[i]; BlockBuilder blockBuilder = BOOLEAN.createBlockBuilder(null, page.getPositionCount()); for (int j = 0; j < page.getPositionCount(); j++) { BOOLEAN.writeBoolean(blockBuilder, maskValue); } maskedPages[i] = page.appendColumn(blockBuilder.build()); } return maskedPages; }
@Test public void testPrimitiveBooleanSerialization() { AccumulatorStateFactory<BooleanState> factory = StateCompiler.generateStateFactory(BooleanState.class); AccumulatorStateSerializer<BooleanState> serializer = StateCompiler.generateStateSerializer(BooleanState.class); BooleanState state = factory.createSingleState(); BooleanState deserializedState = factory.createSingleState(); state.setBoolean(true); BlockBuilder builder = BOOLEAN.createBlockBuilder(null, 1); serializer.serialize(state, builder); Block block = builder.build(); serializer.deserialize(block, 0, deserializedState); assertEquals(deserializedState.isBoolean(), state.isBoolean()); }
@Test public void testPrimitiveBooleanSerialization() { AccumulatorStateFactory<BooleanState> factory = StateCompiler.generateStateFactory(BooleanState.class); AccumulatorStateSerializer<BooleanState> serializer = StateCompiler.generateStateSerializer(BooleanState.class); BooleanState state = factory.createSingleState(); BooleanState deserializedState = factory.createSingleState(); state.setBoolean(true); BlockBuilder builder = BOOLEAN.createBlockBuilder(null, 1); serializer.serialize(state, builder); Block block = builder.build(); serializer.deserialize(block, 0, deserializedState); assertEquals(deserializedState.isBoolean(), state.isBoolean()); }
public static Block createTestBlock() { BlockBuilder blockBuilder = BOOLEAN.createBlockBuilder(null, 15); BOOLEAN.writeBoolean(blockBuilder, true); BOOLEAN.writeBoolean(blockBuilder, true); BOOLEAN.writeBoolean(blockBuilder, true); BOOLEAN.writeBoolean(blockBuilder, false); BOOLEAN.writeBoolean(blockBuilder, false); BOOLEAN.writeBoolean(blockBuilder, false); BOOLEAN.writeBoolean(blockBuilder, false); BOOLEAN.writeBoolean(blockBuilder, false); BOOLEAN.writeBoolean(blockBuilder, true); BOOLEAN.writeBoolean(blockBuilder, true); BOOLEAN.writeBoolean(blockBuilder, false); return blockBuilder.build(); }
public static Block createTestBlock() { BlockBuilder blockBuilder = BOOLEAN.createBlockBuilder(null, 15); BOOLEAN.writeBoolean(blockBuilder, true); BOOLEAN.writeBoolean(blockBuilder, true); BOOLEAN.writeBoolean(blockBuilder, true); BOOLEAN.writeBoolean(blockBuilder, false); BOOLEAN.writeBoolean(blockBuilder, false); BOOLEAN.writeBoolean(blockBuilder, false); BOOLEAN.writeBoolean(blockBuilder, false); BOOLEAN.writeBoolean(blockBuilder, false); BOOLEAN.writeBoolean(blockBuilder, true); BOOLEAN.writeBoolean(blockBuilder, true); BOOLEAN.writeBoolean(blockBuilder, false); return blockBuilder.build(); }