From ae60bdd359d9ebf289a7ea9574283056ac06b586 Mon Sep 17 00:00:00 2001 From: yedf2 <120050102@qq.com> Date: Sat, 25 Sep 2021 22:31:53 +0800 Subject: [PATCH] TransactionMetrics refactored --- dtmsvr/trans.go | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/dtmsvr/trans.go b/dtmsvr/trans.go index 77583aa..32e4eda 100644 --- a/dtmsvr/trans.go +++ b/dtmsvr/trans.go @@ -118,22 +118,23 @@ func (t *TransGlobal) getProcessor() transProcessor { // Process process global transaction once func (t *TransGlobal) Process(db *common.DB, waitResult bool) dtmcli.M { + r := t.process(db, waitResult) + TransactionMetrics(t, r["dtm_result"] == dtmcli.ResultSuccess) +} + +func (t *TransGlobal) process(db *common.DB, waitResult bool) dtmcli.M { if !waitResult { go t.processInner(db) - TransactionMetrics(t, true) return dtmcli.MapSuccess } submitting := t.Status == dtmcli.StatusSubmitted err := t.processInner(db) if err != nil { - TransactionMetrics(t, false) return dtmcli.M{"dtm_result": dtmcli.ResultFailure, "message": err.Error()} } if submitting && t.Status != dtmcli.StatusSucceed { - TransactionMetrics(t, false) return dtmcli.M{"dtm_result": dtmcli.ResultFailure, "message": "trans failed by user"} } - TransactionMetrics(t, true) return dtmcli.MapSuccess }