From 329fe26e2958cdf816dc12fcd85202929bc7f822 Mon Sep 17 00:00:00 2001 From: Lukas Eder Date: Wed, 24 Apr 2024 10:31:14 +0200 Subject: [PATCH] [jOOQ/jOOQ#16585] Work around HSQLDB bug where wrong LocalTime value is fetched when using bind values of type LocalTime[] --- jOOQ/src/main/java/org/jooq/impl/DefaultBinding.java | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/jOOQ/src/main/java/org/jooq/impl/DefaultBinding.java b/jOOQ/src/main/java/org/jooq/impl/DefaultBinding.java index 518f0609b8..ccc1ac0416 100644 --- a/jOOQ/src/main/java/org/jooq/impl/DefaultBinding.java +++ b/jOOQ/src/main/java/org/jooq/impl/DefaultBinding.java @@ -1418,6 +1418,13 @@ public class DefaultBinding implements Binding { t = byte[][].class; } + // [#16585] Another HSQLDB bug regarding LocalTime: + // See also: https://sourceforge.net/p/hsqldb/bugs/1702/ + else if (t == LocalTime[].class) { + a = (Object[]) Convert.convertArray(a, Time[].class); + t = Time[].class; + } + ctx.statement().setArray(ctx.index(), new MockArray(ctx.family(), a, t)); break; }