This is an automated email from the ASF dual-hosted git repository. ntimofeev pushed a commit to branch STABLE-4.2 in repository https://gitbox.apache.org/repos/asf/cayenne.git
commit 5378d71cb7e285e660709f8da47ecc272062096c Author: Jurgen <5031427+ju...@users.noreply.github.com> AuthorDate: Mon Apr 15 15:33:17 2024 +0200 Added fix for Derby and Firebird (cherry picked from commit 19f8a5e976721d35201f290f69ad6e66d09ee519) --- .../main/java/org/apache/cayenne/dba/derby/sqltree/DerbyValueNode.java | 2 +- .../java/org/apache/cayenne/dba/firebird/FirebirdSQLTreeProcessor.java | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/cayenne-server/src/main/java/org/apache/cayenne/dba/derby/sqltree/DerbyValueNode.java b/cayenne-server/src/main/java/org/apache/cayenne/dba/derby/sqltree/DerbyValueNode.java index 44b5ead05..d9c67abf6 100644 --- a/cayenne-server/src/main/java/org/apache/cayenne/dba/derby/sqltree/DerbyValueNode.java +++ b/cayenne-server/src/main/java/org/apache/cayenne/dba/derby/sqltree/DerbyValueNode.java @@ -37,7 +37,7 @@ public class DerbyValueNode extends ValueNode { protected void appendStringValue(QuotingAppendable buffer, CharSequence value) { if(getAttribute() == null || (getAttribute() != null && getAttribute().getType() == Types.CLOB)) { - buffer.append(" CAST(? AS VARCHAR(").append(value.length()).append("))"); + buffer.append(" CAST(? AS VARCHAR(").append(Math.max(1,value.length())).append("))"); } else { buffer.append(" ?"); } diff --git a/cayenne-server/src/main/java/org/apache/cayenne/dba/firebird/FirebirdSQLTreeProcessor.java b/cayenne-server/src/main/java/org/apache/cayenne/dba/firebird/FirebirdSQLTreeProcessor.java index 17e471533..a5e646c85 100644 --- a/cayenne-server/src/main/java/org/apache/cayenne/dba/firebird/FirebirdSQLTreeProcessor.java +++ b/cayenne-server/src/main/java/org/apache/cayenne/dba/firebird/FirebirdSQLTreeProcessor.java @@ -54,7 +54,7 @@ public class FirebirdSQLTreeProcessor extends BaseSQLTreeProcessor { protected void appendStringValue(QuotingAppendable buffer, CharSequence value) { buffer.append("CAST("); super.appendStringValue(buffer, value); - buffer.append(" AS VARCHAR(").append(value.length()).append("))"); + buffer.append(" AS VARCHAR(").append(Math.max(1,value.length())).append("))"); } }); }