From d9dc93805361ed0f0e7b5ad9b58228a888d56224 Mon Sep 17 00:00:00 2001 From: ekexium Date: Mon, 8 Apr 2024 17:49:33 +0800 Subject: [PATCH] style: fix fmt Signed-off-by: ekexium --- pkg/sessiontxn/isolation/base.go | 21 ++++++++++++++++++++- 1 file changed, 20 insertions(+), 1 deletion(-) diff --git a/pkg/sessiontxn/isolation/base.go b/pkg/sessiontxn/isolation/base.go index 6fbe06680b93d..da1b6de9f5390 100644 --- a/pkg/sessiontxn/isolation/base.go +++ b/pkg/sessiontxn/isolation/base.go @@ -32,9 +32,13 @@ import ( "github.com/pingcap/tidb/pkg/sessiontxn" "github.com/pingcap/tidb/pkg/sessiontxn/internal" "github.com/pingcap/tidb/pkg/sessiontxn/staleread" + "github.com/pingcap/tidb/pkg/store/driver/txn" "github.com/pingcap/tidb/pkg/table/temptable" + "github.com/pingcap/tidb/pkg/tablecodec" + "github.com/pingcap/tidb/pkg/util/tableutil" "github.com/pingcap/tidb/pkg/util/tracing" "github.com/pingcap/tipb/go-binlog" + tikvstore "github.com/tikv/client-go/v2/kv" "github.com/tikv/client-go/v2/oracle" ) @@ -588,7 +592,7 @@ func (p *baseTxnContextProvider) SetOptionsBeforeCommit( } info := &binloginfo.BinlogInfo{ Data: &binlog.Binlog{ - Tp: binlog.BinlogType_Prewrite, + Tp: binlog.BinlogType_Prewrite, PrewriteValue: prewriteData, }, Client: sessVars.BinlogClient, @@ -722,3 +726,18 @@ func (p *basePessimisticTxnContextProvider) cancelFairLockingIfNeeded(ctx contex } return nil } + +type temporaryTableKVFilter map[int64]tableutil.TempTable + +func (m temporaryTableKVFilter) IsUnnecessaryKeyValue( + key, value []byte, flags tikvstore.KeyFlags, +) (bool, error) { + tid := tablecodec.DecodeTableID(key) + if _, ok := m[tid]; ok { + return true, nil + } + + // This is the default filter for all tables. + defaultFilter := txn.TiDBKVFilter{} + return defaultFilter.IsUnnecessaryKeyValue(key, value, flags) +}