@Test public void testBasicInfo() { GTInfo info = UnitTestSupport.basicInfo(); GTInfo.serializer.serialize(info, buffer); buffer.flip(); GTInfo sInfo = GTInfo.serializer.deserialize(buffer); this.compareTwoGTInfo(info, sInfo); }
@Override public void write(ByteBuffer byteBuffer) throws BufferOverflowException { GTScanRequest.serializer.serialize(GTScanRequest.this, byteBuffer); } });
public static CoprocessorProjector deserialize(byte[] bytes) { return serializer.deserialize(ByteBuffer.wrap(bytes)); }
public static byte[] serialize(CoprocessorProjector o) { ByteBuffer buf = ByteBuffer.allocate(BytesSerializer.SERIALIZE_BUFFER_SIZE); serializer.serialize(o, buf); byte[] result = new byte[buf.position()]; System.arraycopy(buf.array(), 0, result, 0, buf.position()); return result; }
public static CoprocessorRowType deserialize(byte[] bytes) { return serializer.deserialize(ByteBuffer.wrap(bytes)); }
@Test public void testAdvancedInfo() { GTInfo info = UnitTestSupport.advancedInfo(); GTInfo.serializer.serialize(info, buffer); buffer.flip(); GTInfo sInfo = GTInfo.serializer.deserialize(buffer); this.compareTwoGTInfo(info, sInfo); }
public static byte[] serialize(CoprocessorRowType o) { ByteBuffer buf = ByteBuffer.allocate(BytesSerializer.SERIALIZE_BUFFER_SIZE); serializer.serialize(o, buf); byte[] result = new byte[buf.position()]; System.arraycopy(buf.array(), 0, result, 0, buf.position()); return result; }
private List<RawScan> deserializeRawScans(ByteBuffer in) { int rawScanCount = BytesUtil.readVInt(in); List<RawScan> ret = Lists.newArrayList(); for (int i = 0; i < rawScanCount; i++) { RawScan temp = RawScan.serializer.deserialize(in); ret.add(temp); } return ret; }
public static GTScanRequest useDeserializedGTScanRequest(GTScanRequest origin) { ByteBuffer buffer = ByteBuffer.allocate(BytesSerializer.SERIALIZE_BUFFER_SIZE); GTScanRequest.serializer.serialize(origin, buffer); buffer.flip(); GTScanRequest sGTScanRequest = GTScanRequest.serializer.deserialize(buffer); Assert.assertArrayEquals(origin.getAggrMetricsFuncs(), sGTScanRequest.getAggrMetricsFuncs()); Assert.assertEquals(origin.getAggCacheMemThreshold(), sGTScanRequest.getAggCacheMemThreshold(), 0.01); return sGTScanRequest; }
public static ByteString serializeGTScanReq(GTScanRequest scanRequest) { ByteString scanRequestByteString; int scanRequestBufferSize = BytesSerializer.SERIALIZE_BUFFER_SIZE; while (true) { try { ByteBuffer buffer = ByteBuffer.allocate(scanRequestBufferSize); GTScanRequest.serializer.serialize(scanRequest, buffer); buffer.flip(); scanRequestByteString = HBaseZeroCopyByteString.wrap(buffer.array(), buffer.position(), buffer.limit()); break; } catch (BufferOverflowException boe) { logger.info("Buffer size {} cannot hold the scan request, resizing to 4 times", scanRequestBufferSize); scanRequestBufferSize *= 4; } } return scanRequestByteString; }
String codeSystemType = BytesUtil.readAsciiString(in); if (CubeCodeSystem.class.getCanonicalName().equals(codeSystemType)) { codeSystem = TrimmedCubeCodeSystem.serializer.deserialize(in); } else { try { Class clazz = Class.forName(codeSystemType); BytesSerializer<IGTCodeSystem> serializer = (BytesSerializer<IGTCodeSystem>) clazz.getField("serializer").get(null); codeSystem = serializer.deserialize(in); } catch (Exception e) { throw new RuntimeException("Failed to deserialize IGTCodeSystem " + codeSystemType, e); DataType[] newColTypes = new DataType[colTypesSize]; for (int i = 0; i < colTypesSize; ++i) { newColTypes[i] = DataType.serializer.deserialize(in); ImmutableBitSet newColPreferIndex = ImmutableBitSet.serializer.deserialize(in); ImmutableBitSet newPrimaryKey = ImmutableBitSet.serializer.deserialize(in); newColBlocks[i] = ImmutableBitSet.serializer.deserialize(in);
@Test public void testImmutableBitSet() { ImmutableBitSet x = new ImmutableBitSet(10, 100); ImmutableBitSet.serializer.serialize(x, buffer); buffer.flip(); ImmutableBitSet sx = ImmutableBitSet.serializer.deserialize(buffer); for (int i = 0; i < 10; i++) { Assert.assertFalse(sx.get(i)); } for (int i = 10; i < 100; i++) { Assert.assertTrue(sx.get(i)); } }
public static ByteString serializeRawScans(List<RawScan> rawScans) { ByteString rawScanByteString; int rawScanBufferSize = BytesSerializer.SERIALIZE_BUFFER_SIZE; while (true) { try { ByteBuffer rawScanBuffer = ByteBuffer.allocate(rawScanBufferSize); BytesUtil.writeVInt(rawScans.size(), rawScanBuffer); for (RawScan rs : rawScans) { RawScan.serializer.serialize(rs, rawScanBuffer); } rawScanBuffer.flip(); rawScanByteString = HBaseZeroCopyByteString.wrap(rawScanBuffer.array(), rawScanBuffer.position(), rawScanBuffer.limit()); break; } catch (BufferOverflowException boe) { logger.info("Buffer size {} cannot hold the raw scans, resizing to 4 times", rawScanBufferSize); rawScanBufferSize *= 4; } } return rawScanByteString; }
final int serialLevel = KylinConfig.getInstanceFromEnv().getGTScanRequestSerializationLevel(); GTInfo sInfo = GTInfo.serializer.deserialize(in); ImmutableBitSet sColumns = ImmutableBitSet.serializer.deserialize(in); TupleFilter sGTFilter = GTUtil.deserializeGTFilter(BytesUtil.readByteArray(in), sInfo); ImmutableBitSet sAggGroupBy = ImmutableBitSet.serializer.deserialize(in); ImmutableBitSet sAggrMetrics = ImmutableBitSet.serializer.deserialize(in); String[] sAggrMetricFuncs = BytesUtil.readAsciiStringArray(in); boolean sAllowPreAggr = (BytesUtil.readVInt(in) == 1); String storageBehavior = BytesUtil.readUTFString(in); ImmutableBitSet aDynCols = ImmutableBitSet.serializer.deserialize(in); sTupleExpressionMap.put(sC, sTupleExpr); ImmutableBitSet aRuntimeAggrMetrics = ImmutableBitSet.serializer.deserialize(in);
@Test public void testGTInfo() { CubeInstance cube = CubeManager.getInstance(KylinConfig.getInstanceFromEnv()).getCube("test_kylin_cube_with_slr_ready"); CubeSegment segment = cube.getFirstSegment(); Cuboid baseCuboid = Cuboid.getBaseCuboid(cube.getDescriptor()); GTInfo info = CubeGridTable.newGTInfo(baseCuboid, new CubeDimEncMap(segment)); GTInfo.serializer.serialize(info, buffer); buffer.flip(); GTInfo sInfo = GTInfo.serializer.deserialize(buffer); this.compareTwoGTInfo(info, sInfo); }
BytesUtil.writeAsciiString(CubeCodeSystem.class.getCanonicalName(), out); TrimmedCubeCodeSystem trimmed = ((CubeCodeSystem) value.codeSystem).trimForCoprocessor(); TrimmedCubeCodeSystem.serializer.serialize(trimmed, out); } else if (value.codeSystem != null) { BytesUtil.writeAsciiString(value.codeSystem.getClass().getCanonicalName(), out); throw new RuntimeException("failed to get serializer for " + value.codeSystem.getClass(), e); serializer.serialize(value.codeSystem, out); } else { throw new IllegalStateException("code system cannot be null"); BytesUtil.writeVInt(value.colTypes.length, out); for (DataType dataType : value.colTypes) { DataType.serializer.serialize(dataType, out); ImmutableBitSet.serializer.serialize(value.colPreferIndex, out); ImmutableBitSet.serializer.serialize(value.primaryKey, out); BytesUtil.writeVInt(value.colBlocks.length, out); for (ImmutableBitSet x : value.colBlocks) { ImmutableBitSet.serializer.serialize(x, out);
.deserialize(ByteBuffer.wrap(HBaseZeroCopyByteString.zeroCopyGetBytes(request.getGtScanRequest()))); final long deadline = scanReq.getStartTime() + scanReq.getTimeout(); checkDeadline(deadline);
final int serialLevel = KylinConfig.getInstanceFromEnv().getGTScanRequestSerializationLevel(); GTInfo.serializer.serialize(value.info, out); ImmutableBitSet.serializer.serialize(value.columns, out); BytesUtil.writeByteArray(GTUtil.serializeGTFilter(value.filterPushDown, value.info), out); ImmutableBitSet.serializer.serialize(value.aggrGroupBy, out); ImmutableBitSet.serializer.serialize(value.aggrMetrics, out); BytesUtil.writeAsciiStringArray(value.aggrMetricsFuncs, out); BytesUtil.writeVInt(value.allowStorageAggregation ? 1 : 0, out); ImmutableBitSet.serializer.serialize(value.dynamicCols, out); GTUtil.wrap(value.info.codeSystem.getComparator())), out); ImmutableBitSet.serializer.serialize(value.rtAggrMetrics, out);
public static TableRecordInfoDigest deserialize(ByteBuffer buffer) { return serializer.deserialize(buffer); }
try { ByteBuffer out = ByteBuffer.allocate(scanRequestBufferSize); GTInfo.serializer.serialize(scanRequest.getInfo(), out); BytesUtil.writeVInt(scanRequest.getGTScanRanges().size(), out); for (GTScanRange range : scanRequest.getGTScanRanges()) { ImmutableBitSet.serializer.serialize(scanRequest.getColumns(), out); BytesUtil.writeByteArray( GTUtil.serializeGTFilter(scanRequest.getFilterPushDown(), scanRequest.getInfo()), out); ImmutableBitSet.serializer.serialize(scanRequest.getAggrGroupBy(), out); ImmutableBitSet.serializer.serialize(scanRequest.getAggrMetrics(), out); BytesUtil.writeAsciiStringArray(scanRequest.getAggrMetricsFuncs(), out); BytesUtil.writeVInt(scanRequest.isAllowStorageAggregation() ? 1 : 0, out);