use of org.apache.cassandra.fql.FullQueryLogger.VALUES in project cassandra by apache.
the class FullQueryLoggerTest method assertRoundTripBatch.
private void assertRoundTripBatch(@Nullable String keyspace) {
try (ChronicleQueue queue = SingleChronicleQueueBuilder.single(tempDir.toFile()).rollCycle(RollCycles.TEST_SECONDLY).build()) {
ExcerptTailer tailer = queue.createTailer();
assertTrue(tailer.readDocument(wire -> {
assertEquals(0, wire.read(VERSION).int16());
assertEquals(BATCH, wire.read(TYPE).text());
assertEquals(1L, wire.read(QUERY_START_TIME).int64());
ProtocolVersion protocolVersion = ProtocolVersion.decode(wire.read(PROTOCOL_VERSION).int32(), true);
assertEquals(ProtocolVersion.CURRENT, protocolVersion);
QueryOptions queryOptions = QueryOptions.codec.decode(Unpooled.wrappedBuffer(wire.read(QUERY_OPTIONS).bytes()), protocolVersion);
compareQueryOptions(QueryOptions.DEFAULT, queryOptions);
assertEquals(Long.MIN_VALUE, wire.read(GENERATED_TIMESTAMP).int64());
assertEquals(Integer.MIN_VALUE, wire.read(GENERATED_NOW_IN_SECONDS).int32());
assertEquals(keyspace, wire.read(FullQueryLogger.KEYSPACE).text());
assertEquals("UNLOGGED", wire.read(BATCH_TYPE).text());
ValueIn in = wire.read(QUERIES);
assertEquals(2, in.int32());
assertEquals("foo1", in.text());
assertEquals("foo2", in.text());
in = wire.read(VALUES);
assertEquals(2, in.int32());
assertEquals(2, in.int32());
assertTrue(Arrays.equals(new byte[1], in.bytes()));
assertTrue(Arrays.equals(new byte[2], in.bytes()));
assertEquals(0, in.int32());
}));
}
}
Aggregations