From ba6b92bfe318d99e0f73ba25895d0cd435b1cc84 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=BE=90=E4=BA=91=E9=87=91YunjinXu?= Date: Wed, 7 Jan 2026 14:32:19 +0800 Subject: [PATCH] feat(trans_process): conditionally set NextCronTime to prevent overwriting MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Set NextCronTime only when it is nil or zero to preserve existing scheduled times and prevent unintended cron interval resets during transaction processing. 只有当没有提供NextCronTime时才初始化,否则使用提供的进行saveNew) --- dtmsvr/trans_process.go | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/dtmsvr/trans_process.go b/dtmsvr/trans_process.go index 267b5d6..f6383a3 100644 --- a/dtmsvr/trans_process.go +++ b/dtmsvr/trans_process.go @@ -77,7 +77,9 @@ func (t *TransGlobal) processInner(ctx context.Context, branches []TransBranch) func (t *TransGlobal) saveNew() ([]TransBranch, error) { t.NextCronInterval = t.getNextCronInterval(cronReset) - t.NextCronTime = dtmutil.GetNextTime(t.NextCronInterval) + if t.NextCronTime == nil || t.NextCronTime.IsZero() { + t.NextCronTime = dtmutil.GetNextTime(t.NextCronInterval) + } t.ExtData = dtmimp.MustMarshalString(t.Ext) if t.ExtData == "{}" { t.ExtData = ""