Skip to content

Commit 0a408fa

Browse files
committed
use json to marshal
1 parent dfb71cb commit 0a408fa

File tree

3 files changed

+10
-6
lines changed

3 files changed

+10
-6
lines changed

pkg/executor/test/executor/executor_test.go

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -564,7 +564,7 @@ func TestTiDBLastTxnInfo(t *testing.T) {
564564
tk.MustExec("commit")
565565
rows3 := tk.MustQuery("select json_extract(@@tidb_last_txn_info, '$.start_ts'), json_extract(@@tidb_last_txn_info, '$.commit_ts')").Rows()
566566
require.Equal(t, strconv.FormatUint(startTS2, 10), rows3[0][0])
567-
require.Equal(t, "<nil>", rows3[0][1])
567+
require.Equal(t, "0", rows3[0][1])
568568

569569
// txn explicitly started with begin
570570
tk.MustExec("begin")
@@ -590,7 +590,7 @@ func TestTiDBLastTxnInfo(t *testing.T) {
590590
tk.MustExec("rollback")
591591
rows6 := tk.MustQuery("select json_extract(@@tidb_last_txn_info, '$.start_ts'), json_extract(@@tidb_last_txn_info, '$.commit_ts')").Rows()
592592
require.Equal(t, strconv.FormatUint(startTS4, 10), rows6[0][0])
593-
require.Equal(t, "<nil>", rows6[0][1])
593+
require.Equal(t, "0", rows6[0][1])
594594

595595
// optimistic txn commit failed
596596
tk.MustExec("begin optimistic")

pkg/session/BUILD.bazel

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -130,6 +130,7 @@ go_library(
130130
"@com_github_tikv_client_go_v2//error",
131131
"@com_github_tikv_client_go_v2//oracle",
132132
"@com_github_tikv_client_go_v2//tikv",
133+
"@com_github_tikv_client_go_v2//txnkv/transaction",
133134
"@com_github_tikv_client_go_v2//util",
134135
"@io_etcd_go_etcd_client_v3//:client",
135136
"@io_etcd_go_etcd_client_v3//concurrency",

pkg/session/session.go

Lines changed: 7 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -128,6 +128,7 @@ import (
128128
"github.com/pingcap/tidb/pkg/util/tracing"
129129
tikverr "github.com/tikv/client-go/v2/error"
130130
"github.com/tikv/client-go/v2/oracle"
131+
"github.com/tikv/client-go/v2/txnkv/transaction"
131132
tikvutil "github.com/tikv/client-go/v2/util"
132133
"go.uber.org/zap"
133134
"go.uber.org/zap/zapcore"
@@ -984,10 +985,12 @@ func (s *session) setLastTxnInfoBeforeTxnEnd() {
984985
return
985986
}
986987

987-
s.GetSessionVars().LastTxnInfo = fmt.Sprintf(
988-
`{"txn_scope": "%s", "start_ts": %d, "for_update_ts": %d}`,
989-
txnCtx.TxnScope, txnCtx.StartTS, txnCtx.GetForUpdateTS(),
990-
)
988+
lastTxnInfo, err := json.Marshal(transaction.TxnInfo{
989+
TxnScope: txnCtx.TxnScope,
990+
StartTS: txnCtx.StartTS,
991+
})
992+
terror.Log(err)
993+
s.GetSessionVars().LastTxnInfo = string(lastTxnInfo)
991994
}
992995

993996
func (s *session) GetClient() kv.Client {

0 commit comments

Comments
 (0)