From d2b1f99264d1a7bd27bd805dc02e00265d535df3 Mon Sep 17 00:00:00 2001 From: Lukas Eder Date: Tue, 8 Mar 2022 16:08:39 +0100 Subject: [PATCH] [jOOQ/jOOQ#13170] NPE in INSERT .. ON DUPLICATE KEY emulation when defaulted PRIMARY KEY value isn't supplied in Oracle --- jOOQ/src/main/java/org/jooq/impl/RowImpl1.java | 2 +- jOOQ/src/main/java/org/jooq/impl/RowImpl10.java | 2 +- jOOQ/src/main/java/org/jooq/impl/RowImpl11.java | 2 +- jOOQ/src/main/java/org/jooq/impl/RowImpl12.java | 2 +- jOOQ/src/main/java/org/jooq/impl/RowImpl13.java | 2 +- jOOQ/src/main/java/org/jooq/impl/RowImpl14.java | 2 +- jOOQ/src/main/java/org/jooq/impl/RowImpl15.java | 2 +- jOOQ/src/main/java/org/jooq/impl/RowImpl16.java | 2 +- jOOQ/src/main/java/org/jooq/impl/RowImpl17.java | 2 +- jOOQ/src/main/java/org/jooq/impl/RowImpl18.java | 2 +- jOOQ/src/main/java/org/jooq/impl/RowImpl19.java | 2 +- jOOQ/src/main/java/org/jooq/impl/RowImpl2.java | 2 +- jOOQ/src/main/java/org/jooq/impl/RowImpl20.java | 2 +- jOOQ/src/main/java/org/jooq/impl/RowImpl21.java | 2 +- jOOQ/src/main/java/org/jooq/impl/RowImpl22.java | 2 +- jOOQ/src/main/java/org/jooq/impl/RowImpl3.java | 2 +- jOOQ/src/main/java/org/jooq/impl/RowImpl4.java | 2 +- jOOQ/src/main/java/org/jooq/impl/RowImpl5.java | 2 +- jOOQ/src/main/java/org/jooq/impl/RowImpl6.java | 2 +- jOOQ/src/main/java/org/jooq/impl/RowImpl7.java | 2 +- jOOQ/src/main/java/org/jooq/impl/RowImpl8.java | 2 +- jOOQ/src/main/java/org/jooq/impl/RowImpl9.java | 2 +- jOOQ/src/main/java/org/jooq/impl/RowImplN.java | 2 +- 23 files changed, 23 insertions(+), 23 deletions(-) diff --git a/jOOQ/src/main/java/org/jooq/impl/RowImpl1.java b/jOOQ/src/main/java/org/jooq/impl/RowImpl1.java index 54fdfcf6c6..9f59df155f 100644 --- a/jOOQ/src/main/java/org/jooq/impl/RowImpl1.java +++ b/jOOQ/src/main/java/org/jooq/impl/RowImpl1.java @@ -119,7 +119,7 @@ final class RowImpl1 extends AbstractRow> implements Row1 { @Override public final Condition compare(Comparator comparator, Field t1) { - return compare(comparator, row(t1)); + return compare(comparator, row(Tools.nullSafe(t1, dataType(0)))); } @Override diff --git a/jOOQ/src/main/java/org/jooq/impl/RowImpl10.java b/jOOQ/src/main/java/org/jooq/impl/RowImpl10.java index 70654c04f3..06a4923183 100644 --- a/jOOQ/src/main/java/org/jooq/impl/RowImpl10.java +++ b/jOOQ/src/main/java/org/jooq/impl/RowImpl10.java @@ -164,7 +164,7 @@ final class RowImpl10 extends AbstractR @Override public final Condition compare(Comparator comparator, Field t1, Field t2, Field t3, Field t4, Field t5, Field t6, Field t7, Field t8, Field t9, Field t10) { - return compare(comparator, row(t1, t2, t3, t4, t5, t6, t7, t8, t9, t10)); + return compare(comparator, row(Tools.nullSafe(t1, dataType(0)), Tools.nullSafe(t2, dataType(1)), Tools.nullSafe(t3, dataType(2)), Tools.nullSafe(t4, dataType(3)), Tools.nullSafe(t5, dataType(4)), Tools.nullSafe(t6, dataType(5)), Tools.nullSafe(t7, dataType(6)), Tools.nullSafe(t8, dataType(7)), Tools.nullSafe(t9, dataType(8)), Tools.nullSafe(t10, dataType(9)))); } @Override diff --git a/jOOQ/src/main/java/org/jooq/impl/RowImpl11.java b/jOOQ/src/main/java/org/jooq/impl/RowImpl11.java index de027b3727..90e4fe4c51 100644 --- a/jOOQ/src/main/java/org/jooq/impl/RowImpl11.java +++ b/jOOQ/src/main/java/org/jooq/impl/RowImpl11.java @@ -169,7 +169,7 @@ final class RowImpl11 extends Abst @Override public final Condition compare(Comparator comparator, Field t1, Field t2, Field t3, Field t4, Field t5, Field t6, Field t7, Field t8, Field t9, Field t10, Field t11) { - return compare(comparator, row(t1, t2, t3, t4, t5, t6, t7, t8, t9, t10, t11)); + return compare(comparator, row(Tools.nullSafe(t1, dataType(0)), Tools.nullSafe(t2, dataType(1)), Tools.nullSafe(t3, dataType(2)), Tools.nullSafe(t4, dataType(3)), Tools.nullSafe(t5, dataType(4)), Tools.nullSafe(t6, dataType(5)), Tools.nullSafe(t7, dataType(6)), Tools.nullSafe(t8, dataType(7)), Tools.nullSafe(t9, dataType(8)), Tools.nullSafe(t10, dataType(9)), Tools.nullSafe(t11, dataType(10)))); } @Override diff --git a/jOOQ/src/main/java/org/jooq/impl/RowImpl12.java b/jOOQ/src/main/java/org/jooq/impl/RowImpl12.java index cbb76587b0..07a2da4b74 100644 --- a/jOOQ/src/main/java/org/jooq/impl/RowImpl12.java +++ b/jOOQ/src/main/java/org/jooq/impl/RowImpl12.java @@ -174,7 +174,7 @@ final class RowImpl12 extends @Override public final Condition compare(Comparator comparator, Field t1, Field t2, Field t3, Field t4, Field t5, Field t6, Field t7, Field t8, Field t9, Field t10, Field t11, Field t12) { - return compare(comparator, row(t1, t2, t3, t4, t5, t6, t7, t8, t9, t10, t11, t12)); + return compare(comparator, row(Tools.nullSafe(t1, dataType(0)), Tools.nullSafe(t2, dataType(1)), Tools.nullSafe(t3, dataType(2)), Tools.nullSafe(t4, dataType(3)), Tools.nullSafe(t5, dataType(4)), Tools.nullSafe(t6, dataType(5)), Tools.nullSafe(t7, dataType(6)), Tools.nullSafe(t8, dataType(7)), Tools.nullSafe(t9, dataType(8)), Tools.nullSafe(t10, dataType(9)), Tools.nullSafe(t11, dataType(10)), Tools.nullSafe(t12, dataType(11)))); } @Override diff --git a/jOOQ/src/main/java/org/jooq/impl/RowImpl13.java b/jOOQ/src/main/java/org/jooq/impl/RowImpl13.java index 355e620642..79c9b10d26 100644 --- a/jOOQ/src/main/java/org/jooq/impl/RowImpl13.java +++ b/jOOQ/src/main/java/org/jooq/impl/RowImpl13.java @@ -179,7 +179,7 @@ final class RowImpl13 ex @Override public final Condition compare(Comparator comparator, Field t1, Field t2, Field t3, Field t4, Field t5, Field t6, Field t7, Field t8, Field t9, Field t10, Field t11, Field t12, Field t13) { - return compare(comparator, row(t1, t2, t3, t4, t5, t6, t7, t8, t9, t10, t11, t12, t13)); + return compare(comparator, row(Tools.nullSafe(t1, dataType(0)), Tools.nullSafe(t2, dataType(1)), Tools.nullSafe(t3, dataType(2)), Tools.nullSafe(t4, dataType(3)), Tools.nullSafe(t5, dataType(4)), Tools.nullSafe(t6, dataType(5)), Tools.nullSafe(t7, dataType(6)), Tools.nullSafe(t8, dataType(7)), Tools.nullSafe(t9, dataType(8)), Tools.nullSafe(t10, dataType(9)), Tools.nullSafe(t11, dataType(10)), Tools.nullSafe(t12, dataType(11)), Tools.nullSafe(t13, dataType(12)))); } @Override diff --git a/jOOQ/src/main/java/org/jooq/impl/RowImpl14.java b/jOOQ/src/main/java/org/jooq/impl/RowImpl14.java index c12615a96b..2da9c11eb2 100644 --- a/jOOQ/src/main/java/org/jooq/impl/RowImpl14.java +++ b/jOOQ/src/main/java/org/jooq/impl/RowImpl14.java @@ -184,7 +184,7 @@ final class RowImpl14 t1, Field t2, Field t3, Field t4, Field t5, Field t6, Field t7, Field t8, Field t9, Field t10, Field t11, Field t12, Field t13, Field t14) { - return compare(comparator, row(t1, t2, t3, t4, t5, t6, t7, t8, t9, t10, t11, t12, t13, t14)); + return compare(comparator, row(Tools.nullSafe(t1, dataType(0)), Tools.nullSafe(t2, dataType(1)), Tools.nullSafe(t3, dataType(2)), Tools.nullSafe(t4, dataType(3)), Tools.nullSafe(t5, dataType(4)), Tools.nullSafe(t6, dataType(5)), Tools.nullSafe(t7, dataType(6)), Tools.nullSafe(t8, dataType(7)), Tools.nullSafe(t9, dataType(8)), Tools.nullSafe(t10, dataType(9)), Tools.nullSafe(t11, dataType(10)), Tools.nullSafe(t12, dataType(11)), Tools.nullSafe(t13, dataType(12)), Tools.nullSafe(t14, dataType(13)))); } @Override diff --git a/jOOQ/src/main/java/org/jooq/impl/RowImpl15.java b/jOOQ/src/main/java/org/jooq/impl/RowImpl15.java index 8c8fa154a5..c63bd2b8c4 100644 --- a/jOOQ/src/main/java/org/jooq/impl/RowImpl15.java +++ b/jOOQ/src/main/java/org/jooq/impl/RowImpl15.java @@ -189,7 +189,7 @@ final class RowImpl15 t1, Field t2, Field t3, Field t4, Field t5, Field t6, Field t7, Field t8, Field t9, Field t10, Field t11, Field t12, Field t13, Field t14, Field t15) { - return compare(comparator, row(t1, t2, t3, t4, t5, t6, t7, t8, t9, t10, t11, t12, t13, t14, t15)); + return compare(comparator, row(Tools.nullSafe(t1, dataType(0)), Tools.nullSafe(t2, dataType(1)), Tools.nullSafe(t3, dataType(2)), Tools.nullSafe(t4, dataType(3)), Tools.nullSafe(t5, dataType(4)), Tools.nullSafe(t6, dataType(5)), Tools.nullSafe(t7, dataType(6)), Tools.nullSafe(t8, dataType(7)), Tools.nullSafe(t9, dataType(8)), Tools.nullSafe(t10, dataType(9)), Tools.nullSafe(t11, dataType(10)), Tools.nullSafe(t12, dataType(11)), Tools.nullSafe(t13, dataType(12)), Tools.nullSafe(t14, dataType(13)), Tools.nullSafe(t15, dataType(14)))); } @Override diff --git a/jOOQ/src/main/java/org/jooq/impl/RowImpl16.java b/jOOQ/src/main/java/org/jooq/impl/RowImpl16.java index 29357e5d3a..ffb5576427 100644 --- a/jOOQ/src/main/java/org/jooq/impl/RowImpl16.java +++ b/jOOQ/src/main/java/org/jooq/impl/RowImpl16.java @@ -194,7 +194,7 @@ final class RowImpl16 t1, Field t2, Field t3, Field t4, Field t5, Field t6, Field t7, Field t8, Field t9, Field t10, Field t11, Field t12, Field t13, Field t14, Field t15, Field t16) { - return compare(comparator, row(t1, t2, t3, t4, t5, t6, t7, t8, t9, t10, t11, t12, t13, t14, t15, t16)); + return compare(comparator, row(Tools.nullSafe(t1, dataType(0)), Tools.nullSafe(t2, dataType(1)), Tools.nullSafe(t3, dataType(2)), Tools.nullSafe(t4, dataType(3)), Tools.nullSafe(t5, dataType(4)), Tools.nullSafe(t6, dataType(5)), Tools.nullSafe(t7, dataType(6)), Tools.nullSafe(t8, dataType(7)), Tools.nullSafe(t9, dataType(8)), Tools.nullSafe(t10, dataType(9)), Tools.nullSafe(t11, dataType(10)), Tools.nullSafe(t12, dataType(11)), Tools.nullSafe(t13, dataType(12)), Tools.nullSafe(t14, dataType(13)), Tools.nullSafe(t15, dataType(14)), Tools.nullSafe(t16, dataType(15)))); } @Override diff --git a/jOOQ/src/main/java/org/jooq/impl/RowImpl17.java b/jOOQ/src/main/java/org/jooq/impl/RowImpl17.java index 9c9e75be55..9587b622c7 100644 --- a/jOOQ/src/main/java/org/jooq/impl/RowImpl17.java +++ b/jOOQ/src/main/java/org/jooq/impl/RowImpl17.java @@ -199,7 +199,7 @@ final class RowImpl17 t1, Field t2, Field t3, Field t4, Field t5, Field t6, Field t7, Field t8, Field t9, Field t10, Field t11, Field t12, Field t13, Field t14, Field t15, Field t16, Field t17) { - return compare(comparator, row(t1, t2, t3, t4, t5, t6, t7, t8, t9, t10, t11, t12, t13, t14, t15, t16, t17)); + return compare(comparator, row(Tools.nullSafe(t1, dataType(0)), Tools.nullSafe(t2, dataType(1)), Tools.nullSafe(t3, dataType(2)), Tools.nullSafe(t4, dataType(3)), Tools.nullSafe(t5, dataType(4)), Tools.nullSafe(t6, dataType(5)), Tools.nullSafe(t7, dataType(6)), Tools.nullSafe(t8, dataType(7)), Tools.nullSafe(t9, dataType(8)), Tools.nullSafe(t10, dataType(9)), Tools.nullSafe(t11, dataType(10)), Tools.nullSafe(t12, dataType(11)), Tools.nullSafe(t13, dataType(12)), Tools.nullSafe(t14, dataType(13)), Tools.nullSafe(t15, dataType(14)), Tools.nullSafe(t16, dataType(15)), Tools.nullSafe(t17, dataType(16)))); } @Override diff --git a/jOOQ/src/main/java/org/jooq/impl/RowImpl18.java b/jOOQ/src/main/java/org/jooq/impl/RowImpl18.java index de3b921b48..2f621f9431 100644 --- a/jOOQ/src/main/java/org/jooq/impl/RowImpl18.java +++ b/jOOQ/src/main/java/org/jooq/impl/RowImpl18.java @@ -204,7 +204,7 @@ final class RowImpl18 t1, Field t2, Field t3, Field t4, Field t5, Field t6, Field t7, Field t8, Field t9, Field t10, Field t11, Field t12, Field t13, Field t14, Field t15, Field t16, Field t17, Field t18) { - return compare(comparator, row(t1, t2, t3, t4, t5, t6, t7, t8, t9, t10, t11, t12, t13, t14, t15, t16, t17, t18)); + return compare(comparator, row(Tools.nullSafe(t1, dataType(0)), Tools.nullSafe(t2, dataType(1)), Tools.nullSafe(t3, dataType(2)), Tools.nullSafe(t4, dataType(3)), Tools.nullSafe(t5, dataType(4)), Tools.nullSafe(t6, dataType(5)), Tools.nullSafe(t7, dataType(6)), Tools.nullSafe(t8, dataType(7)), Tools.nullSafe(t9, dataType(8)), Tools.nullSafe(t10, dataType(9)), Tools.nullSafe(t11, dataType(10)), Tools.nullSafe(t12, dataType(11)), Tools.nullSafe(t13, dataType(12)), Tools.nullSafe(t14, dataType(13)), Tools.nullSafe(t15, dataType(14)), Tools.nullSafe(t16, dataType(15)), Tools.nullSafe(t17, dataType(16)), Tools.nullSafe(t18, dataType(17)))); } @Override diff --git a/jOOQ/src/main/java/org/jooq/impl/RowImpl19.java b/jOOQ/src/main/java/org/jooq/impl/RowImpl19.java index 5144ca922c..baef3722c0 100644 --- a/jOOQ/src/main/java/org/jooq/impl/RowImpl19.java +++ b/jOOQ/src/main/java/org/jooq/impl/RowImpl19.java @@ -209,7 +209,7 @@ final class RowImpl19 t1, Field t2, Field t3, Field t4, Field t5, Field t6, Field t7, Field t8, Field t9, Field t10, Field t11, Field t12, Field t13, Field t14, Field t15, Field t16, Field t17, Field t18, Field t19) { - return compare(comparator, row(t1, t2, t3, t4, t5, t6, t7, t8, t9, t10, t11, t12, t13, t14, t15, t16, t17, t18, t19)); + return compare(comparator, row(Tools.nullSafe(t1, dataType(0)), Tools.nullSafe(t2, dataType(1)), Tools.nullSafe(t3, dataType(2)), Tools.nullSafe(t4, dataType(3)), Tools.nullSafe(t5, dataType(4)), Tools.nullSafe(t6, dataType(5)), Tools.nullSafe(t7, dataType(6)), Tools.nullSafe(t8, dataType(7)), Tools.nullSafe(t9, dataType(8)), Tools.nullSafe(t10, dataType(9)), Tools.nullSafe(t11, dataType(10)), Tools.nullSafe(t12, dataType(11)), Tools.nullSafe(t13, dataType(12)), Tools.nullSafe(t14, dataType(13)), Tools.nullSafe(t15, dataType(14)), Tools.nullSafe(t16, dataType(15)), Tools.nullSafe(t17, dataType(16)), Tools.nullSafe(t18, dataType(17)), Tools.nullSafe(t19, dataType(18)))); } @Override diff --git a/jOOQ/src/main/java/org/jooq/impl/RowImpl2.java b/jOOQ/src/main/java/org/jooq/impl/RowImpl2.java index efccab340d..2b52056988 100644 --- a/jOOQ/src/main/java/org/jooq/impl/RowImpl2.java +++ b/jOOQ/src/main/java/org/jooq/impl/RowImpl2.java @@ -124,7 +124,7 @@ final class RowImpl2 extends AbstractRow> implements Row @Override public final Condition compare(Comparator comparator, Field t1, Field t2) { - return compare(comparator, row(t1, t2)); + return compare(comparator, row(Tools.nullSafe(t1, dataType(0)), Tools.nullSafe(t2, dataType(1)))); } @Override diff --git a/jOOQ/src/main/java/org/jooq/impl/RowImpl20.java b/jOOQ/src/main/java/org/jooq/impl/RowImpl20.java index 51f052bfe8..ab6dd2ee1f 100644 --- a/jOOQ/src/main/java/org/jooq/impl/RowImpl20.java +++ b/jOOQ/src/main/java/org/jooq/impl/RowImpl20.java @@ -214,7 +214,7 @@ final class RowImpl20 t1, Field t2, Field t3, Field t4, Field t5, Field t6, Field t7, Field t8, Field t9, Field t10, Field t11, Field t12, Field t13, Field t14, Field t15, Field t16, Field t17, Field t18, Field t19, Field t20) { - return compare(comparator, row(t1, t2, t3, t4, t5, t6, t7, t8, t9, t10, t11, t12, t13, t14, t15, t16, t17, t18, t19, t20)); + return compare(comparator, row(Tools.nullSafe(t1, dataType(0)), Tools.nullSafe(t2, dataType(1)), Tools.nullSafe(t3, dataType(2)), Tools.nullSafe(t4, dataType(3)), Tools.nullSafe(t5, dataType(4)), Tools.nullSafe(t6, dataType(5)), Tools.nullSafe(t7, dataType(6)), Tools.nullSafe(t8, dataType(7)), Tools.nullSafe(t9, dataType(8)), Tools.nullSafe(t10, dataType(9)), Tools.nullSafe(t11, dataType(10)), Tools.nullSafe(t12, dataType(11)), Tools.nullSafe(t13, dataType(12)), Tools.nullSafe(t14, dataType(13)), Tools.nullSafe(t15, dataType(14)), Tools.nullSafe(t16, dataType(15)), Tools.nullSafe(t17, dataType(16)), Tools.nullSafe(t18, dataType(17)), Tools.nullSafe(t19, dataType(18)), Tools.nullSafe(t20, dataType(19)))); } @Override diff --git a/jOOQ/src/main/java/org/jooq/impl/RowImpl21.java b/jOOQ/src/main/java/org/jooq/impl/RowImpl21.java index d273e5aa9d..2efe92ec3e 100644 --- a/jOOQ/src/main/java/org/jooq/impl/RowImpl21.java +++ b/jOOQ/src/main/java/org/jooq/impl/RowImpl21.java @@ -219,7 +219,7 @@ final class RowImpl21 t1, Field t2, Field t3, Field t4, Field t5, Field t6, Field t7, Field t8, Field t9, Field t10, Field t11, Field t12, Field t13, Field t14, Field t15, Field t16, Field t17, Field t18, Field t19, Field t20, Field t21) { - return compare(comparator, row(t1, t2, t3, t4, t5, t6, t7, t8, t9, t10, t11, t12, t13, t14, t15, t16, t17, t18, t19, t20, t21)); + return compare(comparator, row(Tools.nullSafe(t1, dataType(0)), Tools.nullSafe(t2, dataType(1)), Tools.nullSafe(t3, dataType(2)), Tools.nullSafe(t4, dataType(3)), Tools.nullSafe(t5, dataType(4)), Tools.nullSafe(t6, dataType(5)), Tools.nullSafe(t7, dataType(6)), Tools.nullSafe(t8, dataType(7)), Tools.nullSafe(t9, dataType(8)), Tools.nullSafe(t10, dataType(9)), Tools.nullSafe(t11, dataType(10)), Tools.nullSafe(t12, dataType(11)), Tools.nullSafe(t13, dataType(12)), Tools.nullSafe(t14, dataType(13)), Tools.nullSafe(t15, dataType(14)), Tools.nullSafe(t16, dataType(15)), Tools.nullSafe(t17, dataType(16)), Tools.nullSafe(t18, dataType(17)), Tools.nullSafe(t19, dataType(18)), Tools.nullSafe(t20, dataType(19)), Tools.nullSafe(t21, dataType(20)))); } @Override diff --git a/jOOQ/src/main/java/org/jooq/impl/RowImpl22.java b/jOOQ/src/main/java/org/jooq/impl/RowImpl22.java index 5e1938287d..688def5093 100644 --- a/jOOQ/src/main/java/org/jooq/impl/RowImpl22.java +++ b/jOOQ/src/main/java/org/jooq/impl/RowImpl22.java @@ -224,7 +224,7 @@ final class RowImpl22 t1, Field t2, Field t3, Field t4, Field t5, Field t6, Field t7, Field t8, Field t9, Field t10, Field t11, Field t12, Field t13, Field t14, Field t15, Field t16, Field t17, Field t18, Field t19, Field t20, Field t21, Field t22) { - return compare(comparator, row(t1, t2, t3, t4, t5, t6, t7, t8, t9, t10, t11, t12, t13, t14, t15, t16, t17, t18, t19, t20, t21, t22)); + return compare(comparator, row(Tools.nullSafe(t1, dataType(0)), Tools.nullSafe(t2, dataType(1)), Tools.nullSafe(t3, dataType(2)), Tools.nullSafe(t4, dataType(3)), Tools.nullSafe(t5, dataType(4)), Tools.nullSafe(t6, dataType(5)), Tools.nullSafe(t7, dataType(6)), Tools.nullSafe(t8, dataType(7)), Tools.nullSafe(t9, dataType(8)), Tools.nullSafe(t10, dataType(9)), Tools.nullSafe(t11, dataType(10)), Tools.nullSafe(t12, dataType(11)), Tools.nullSafe(t13, dataType(12)), Tools.nullSafe(t14, dataType(13)), Tools.nullSafe(t15, dataType(14)), Tools.nullSafe(t16, dataType(15)), Tools.nullSafe(t17, dataType(16)), Tools.nullSafe(t18, dataType(17)), Tools.nullSafe(t19, dataType(18)), Tools.nullSafe(t20, dataType(19)), Tools.nullSafe(t21, dataType(20)), Tools.nullSafe(t22, dataType(21)))); } @Override diff --git a/jOOQ/src/main/java/org/jooq/impl/RowImpl3.java b/jOOQ/src/main/java/org/jooq/impl/RowImpl3.java index 3562d1436f..9d6ee4ca94 100644 --- a/jOOQ/src/main/java/org/jooq/impl/RowImpl3.java +++ b/jOOQ/src/main/java/org/jooq/impl/RowImpl3.java @@ -129,7 +129,7 @@ final class RowImpl3 extends AbstractRow> implem @Override public final Condition compare(Comparator comparator, Field t1, Field t2, Field t3) { - return compare(comparator, row(t1, t2, t3)); + return compare(comparator, row(Tools.nullSafe(t1, dataType(0)), Tools.nullSafe(t2, dataType(1)), Tools.nullSafe(t3, dataType(2)))); } @Override diff --git a/jOOQ/src/main/java/org/jooq/impl/RowImpl4.java b/jOOQ/src/main/java/org/jooq/impl/RowImpl4.java index 80dc2b8c01..0505a67113 100644 --- a/jOOQ/src/main/java/org/jooq/impl/RowImpl4.java +++ b/jOOQ/src/main/java/org/jooq/impl/RowImpl4.java @@ -134,7 +134,7 @@ final class RowImpl4 extends AbstractRow @Override public final Condition compare(Comparator comparator, Field t1, Field t2, Field t3, Field t4) { - return compare(comparator, row(t1, t2, t3, t4)); + return compare(comparator, row(Tools.nullSafe(t1, dataType(0)), Tools.nullSafe(t2, dataType(1)), Tools.nullSafe(t3, dataType(2)), Tools.nullSafe(t4, dataType(3)))); } @Override diff --git a/jOOQ/src/main/java/org/jooq/impl/RowImpl5.java b/jOOQ/src/main/java/org/jooq/impl/RowImpl5.java index 0e8d4b82a7..29c82591eb 100644 --- a/jOOQ/src/main/java/org/jooq/impl/RowImpl5.java +++ b/jOOQ/src/main/java/org/jooq/impl/RowImpl5.java @@ -139,7 +139,7 @@ final class RowImpl5 extends AbstractRow t1, Field t2, Field t3, Field t4, Field t5) { - return compare(comparator, row(t1, t2, t3, t4, t5)); + return compare(comparator, row(Tools.nullSafe(t1, dataType(0)), Tools.nullSafe(t2, dataType(1)), Tools.nullSafe(t3, dataType(2)), Tools.nullSafe(t4, dataType(3)), Tools.nullSafe(t5, dataType(4)))); } @Override diff --git a/jOOQ/src/main/java/org/jooq/impl/RowImpl6.java b/jOOQ/src/main/java/org/jooq/impl/RowImpl6.java index b469e5e488..c6a60e1f0e 100644 --- a/jOOQ/src/main/java/org/jooq/impl/RowImpl6.java +++ b/jOOQ/src/main/java/org/jooq/impl/RowImpl6.java @@ -144,7 +144,7 @@ final class RowImpl6 extends AbstractRow t1, Field t2, Field t3, Field t4, Field t5, Field t6) { - return compare(comparator, row(t1, t2, t3, t4, t5, t6)); + return compare(comparator, row(Tools.nullSafe(t1, dataType(0)), Tools.nullSafe(t2, dataType(1)), Tools.nullSafe(t3, dataType(2)), Tools.nullSafe(t4, dataType(3)), Tools.nullSafe(t5, dataType(4)), Tools.nullSafe(t6, dataType(5)))); } @Override diff --git a/jOOQ/src/main/java/org/jooq/impl/RowImpl7.java b/jOOQ/src/main/java/org/jooq/impl/RowImpl7.java index 03e5a83afd..de36d95925 100644 --- a/jOOQ/src/main/java/org/jooq/impl/RowImpl7.java +++ b/jOOQ/src/main/java/org/jooq/impl/RowImpl7.java @@ -149,7 +149,7 @@ final class RowImpl7 extends AbstractRow t1, Field t2, Field t3, Field t4, Field t5, Field t6, Field t7) { - return compare(comparator, row(t1, t2, t3, t4, t5, t6, t7)); + return compare(comparator, row(Tools.nullSafe(t1, dataType(0)), Tools.nullSafe(t2, dataType(1)), Tools.nullSafe(t3, dataType(2)), Tools.nullSafe(t4, dataType(3)), Tools.nullSafe(t5, dataType(4)), Tools.nullSafe(t6, dataType(5)), Tools.nullSafe(t7, dataType(6)))); } @Override diff --git a/jOOQ/src/main/java/org/jooq/impl/RowImpl8.java b/jOOQ/src/main/java/org/jooq/impl/RowImpl8.java index 65f9860451..c1e5bf6334 100644 --- a/jOOQ/src/main/java/org/jooq/impl/RowImpl8.java +++ b/jOOQ/src/main/java/org/jooq/impl/RowImpl8.java @@ -154,7 +154,7 @@ final class RowImpl8 extends AbstractRow t1, Field t2, Field t3, Field t4, Field t5, Field t6, Field t7, Field t8) { - return compare(comparator, row(t1, t2, t3, t4, t5, t6, t7, t8)); + return compare(comparator, row(Tools.nullSafe(t1, dataType(0)), Tools.nullSafe(t2, dataType(1)), Tools.nullSafe(t3, dataType(2)), Tools.nullSafe(t4, dataType(3)), Tools.nullSafe(t5, dataType(4)), Tools.nullSafe(t6, dataType(5)), Tools.nullSafe(t7, dataType(6)), Tools.nullSafe(t8, dataType(7)))); } @Override diff --git a/jOOQ/src/main/java/org/jooq/impl/RowImpl9.java b/jOOQ/src/main/java/org/jooq/impl/RowImpl9.java index 03bf5acacd..4b13fb29df 100644 --- a/jOOQ/src/main/java/org/jooq/impl/RowImpl9.java +++ b/jOOQ/src/main/java/org/jooq/impl/RowImpl9.java @@ -159,7 +159,7 @@ final class RowImpl9 extends AbstractRow t1, Field t2, Field t3, Field t4, Field t5, Field t6, Field t7, Field t8, Field t9) { - return compare(comparator, row(t1, t2, t3, t4, t5, t6, t7, t8, t9)); + return compare(comparator, row(Tools.nullSafe(t1, dataType(0)), Tools.nullSafe(t2, dataType(1)), Tools.nullSafe(t3, dataType(2)), Tools.nullSafe(t4, dataType(3)), Tools.nullSafe(t5, dataType(4)), Tools.nullSafe(t6, dataType(5)), Tools.nullSafe(t7, dataType(6)), Tools.nullSafe(t8, dataType(7)), Tools.nullSafe(t9, dataType(8)))); } @Override diff --git a/jOOQ/src/main/java/org/jooq/impl/RowImplN.java b/jOOQ/src/main/java/org/jooq/impl/RowImplN.java index 6455e09dc5..85f0d5affb 100644 --- a/jOOQ/src/main/java/org/jooq/impl/RowImplN.java +++ b/jOOQ/src/main/java/org/jooq/impl/RowImplN.java @@ -111,7 +111,7 @@ final class RowImplN extends AbstractRow implements RowN { @Override public final Condition compare(Comparator comparator, Field... values) { - return compare(comparator, row(values)); + return compare(comparator, row(Tools.fields(values, dataTypes()))); } @Override