From 8b469710ce097accbefb7ff5e4951ffab4cc0424 Mon Sep 17 00:00:00 2001 From: hewencai <2357300448@qq.com> Date: Mon, 29 Dec 2025 09:53:00 +0800 Subject: [PATCH 1/2] =?UTF-8?q?fix=EF=BC=9A=E4=BF=AE=E5=A4=8Dseata2.4?= =?UTF-8?q?=E7=89=88=E6=9C=AC=E4=B8=8B=E8=BE=BE=E6=A2=A6=E6=95=B0=E6=8D=AE?= =?UTF-8?q?=E5=BA=93=E5=9B=9E=E6=BB=9A=E5=BC=82=E5=B8=B8=E9=97=AE=E9=A2=98?= =?UTF-8?q?=EF=BC=8C=E5=A2=9E=E5=8A=A0=E8=B0=83=E8=AF=95=E6=97=A5=E5=BF=97?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../seata/rm/datasource/DataCompareUtils.java | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/zt-framework/zt-spring-boot-starter-seata-dm/src/main/java/org/apache/seata/rm/datasource/DataCompareUtils.java b/zt-framework/zt-spring-boot-starter-seata-dm/src/main/java/org/apache/seata/rm/datasource/DataCompareUtils.java index 2d596096..1b91c4ab 100644 --- a/zt-framework/zt-spring-boot-starter-seata-dm/src/main/java/org/apache/seata/rm/datasource/DataCompareUtils.java +++ b/zt-framework/zt-spring-boot-starter-seata-dm/src/main/java/org/apache/seata/rm/datasource/DataCompareUtils.java @@ -26,6 +26,8 @@ import org.apache.seata.rm.datasource.undo.AbstractUndoLogManager; import org.apache.seata.rm.datasource.undo.parser.FastjsonUndoLogParser; import org.apache.seata.rm.datasource.undo.parser.JacksonUndoLogParser; import org.apache.seata.sqlparser.struct.TableMeta; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; import java.lang.reflect.Method; import java.math.BigDecimal; @@ -66,6 +68,18 @@ import java.util.stream.Collectors; */ public class DataCompareUtils { + private static final Logger LOGGER = LoggerFactory.getLogger(DataCompareUtils.class); + + /** + * 标识补丁类是否已加载 + */ + private static final boolean PATCHED; + + static { + PATCHED = true; + LOGGER.info("[zt-spring-boot-starter-seata-dm] DataCompareUtils 补丁类已加载,用于解决达梦数据库 DmdbTimestamp 时区问题"); + } + private DataCompareUtils() {} /** @@ -102,6 +116,10 @@ public class DataCompareUtils { Instant i0 = toInstant(v0); Instant i1 = toInstant(v1); boolean equals = Objects.equals(i0, i1); + if (LOGGER.isDebugEnabled()) { + LOGGER.debug("[zt-seata-dm-patch] DmdbTimestamp 比较: field={}, i0={}, i1={}, equals={}", + f0.getName(), i0, i1, equals); + } return equals ? Result.ok() : Result.buildWithParams( From 8e8acd6aaf426958c7b034b86340e24048d03722 Mon Sep 17 00:00:00 2001 From: hewencai <2357300448@qq.com> Date: Mon, 29 Dec 2025 09:54:36 +0800 Subject: [PATCH 2/2] =?UTF-8?q?fix=EF=BC=9A=E4=BF=AE=E5=A4=8Dseata2.4?= =?UTF-8?q?=E7=89=88=E6=9C=AC=E4=B8=8B=E8=BE=BE=E6=A2=A6=E6=95=B0=E6=8D=AE?= =?UTF-8?q?=E5=BA=93=E5=9B=9E=E6=BB=9A=E5=BC=82=E5=B8=B8=E9=97=AE=E9=A2=98?= =?UTF-8?q?=EF=BC=8C=E5=A2=9E=E5=8A=A0=E8=B0=83=E8=AF=95=E6=97=A5=E5=BF=97?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../org/apache/seata/rm/datasource/DataCompareUtils.java | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/zt-framework/zt-spring-boot-starter-seata-dm/src/main/java/org/apache/seata/rm/datasource/DataCompareUtils.java b/zt-framework/zt-spring-boot-starter-seata-dm/src/main/java/org/apache/seata/rm/datasource/DataCompareUtils.java index 1b91c4ab..24c15d5a 100644 --- a/zt-framework/zt-spring-boot-starter-seata-dm/src/main/java/org/apache/seata/rm/datasource/DataCompareUtils.java +++ b/zt-framework/zt-spring-boot-starter-seata-dm/src/main/java/org/apache/seata/rm/datasource/DataCompareUtils.java @@ -116,10 +116,7 @@ public class DataCompareUtils { Instant i0 = toInstant(v0); Instant i1 = toInstant(v1); boolean equals = Objects.equals(i0, i1); - if (LOGGER.isDebugEnabled()) { - LOGGER.debug("[zt-seata-dm-patch] DmdbTimestamp 比较: field={}, i0={}, i1={}, equals={}", - f0.getName(), i0, i1, equals); - } + LOGGER.info("[zt-seata-dm-patch] DmdbTimestamp 字段比较: field={}, equals={}", f0.getName(), equals); return equals ? Result.ok() : Result.buildWithParams(