In theory the
DATE Cassandra data type should be mapping directly to the LocalDate class of the Java driver and shouldn't cause any problem the way it's done in the code sample you provided. However, I think I know why you are facing this issue. I have noticed in the
presto codebase that you are for some reasons
enforcing the driver to communicate to Cassandra with the Native Protocol version V3, and the protocol V3 doesn't have a Date type in
its specification. So Cassandra is not able to correctly indicate the driver the data type of the column, and specifies that it is a "Custom" type, and by default the driver maps Custom types to a ByteBuffer since it doesn't have enough information to deserialize the column.