diff --git a/client-v2/src/main/java/com/clickhouse/client/api/data_formats/RowBinaryFormatSerializer.java b/client-v2/src/main/java/com/clickhouse/client/api/data_formats/RowBinaryFormatSerializer.java index 53ff372ae..9dc045053 100644 --- a/client-v2/src/main/java/com/clickhouse/client/api/data_formats/RowBinaryFormatSerializer.java +++ b/client-v2/src/main/java/com/clickhouse/client/api/data_formats/RowBinaryFormatSerializer.java @@ -12,6 +12,8 @@ import java.math.BigInteger; import java.net.Inet4Address; import java.net.Inet6Address; +import java.time.Instant; +import java.time.OffsetDateTime; import java.time.ZoneId; import java.time.ZonedDateTime; @@ -145,6 +147,22 @@ public void writeDateTime64(ZonedDateTime value, int scale, ZoneId targetTz) thr SerializerUtils.writeDateTime64(out, value, scale, targetTz); } + public void writeDateTime32(OffsetDateTime value) throws IOException { + SerializerUtils.writeDateTime32(out, value, null); + } + + public void writeDateTime64(OffsetDateTime value, int scale) throws IOException { + SerializerUtils.writeDateTime64(out, value, scale, null); + } + + public void writeDateTime32(Instant value) throws IOException { + SerializerUtils.writeDateTime32(out, value, null); + } + + public void writeDateTime64(Instant value, int scale) throws IOException { + SerializerUtils.writeDateTime64(out, value, scale, null); + } + public void writeEnum8(byte value) throws IOException { BinaryStreamUtils.writeEnum8(out, value); } diff --git a/client-v2/src/test/java/com/clickhouse/client/insert/InsertTests.java b/client-v2/src/test/java/com/clickhouse/client/insert/InsertTests.java index c67272a7c..0137cf9af 100644 --- a/client-v2/src/test/java/com/clickhouse/client/insert/InsertTests.java +++ b/client-v2/src/test/java/com/clickhouse/client/insert/InsertTests.java @@ -458,12 +458,12 @@ public void testWriter() throws Exception { if (row[4] == null) { formatWriter.writeDefault(); } else { - formatWriter.writeString((String) row[4]); + formatWriter.writeDateTime((ZonedDateTime) row[4], null); } if (row[5] == null) { formatWriter.writeDefault(); } else { - formatWriter.writeInt8((byte) row[5]); + formatWriter.writeInt8(((Integer) row[5]).byteValue()); } } }, ClickHouseFormat.RowBinaryWithDefaults, new InsertSettings()).get()) {