Skip to content

Commit 0d86fbf

Browse files
author
ffffwh
committed
RetryTxLimit: default 5 #1050
and add an 1ms delay before retry.
1 parent 1103402 commit 0d86fbf

File tree

3 files changed

+3
-1
lines changed

3 files changed

+3
-1
lines changed

driver/driver.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -164,7 +164,7 @@ var (
164164
"BulkInsert3": hclspec.NewDefault(hclspec.NewAttr("BulkInsert3", "number", false),
165165
hclspec.NewLiteral(`128`)),
166166
"RetryTxLimit": hclspec.NewDefault(hclspec.NewAttr("RetryTxLimit", "number", false),
167-
hclspec.NewLiteral(`3`)),
167+
hclspec.NewLiteral(`5`)),
168168
"BigTxSrcQueue": hclspec.NewDefault(hclspec.NewAttr("BigTxSrcQueue", "number", false),
169169
hclspec.NewLiteral(`3`)),
170170
"KafkaConfig": hclspec.NewBlock("KafkaConfig", false, hclspec.NewObject(map[string]*hclspec.Spec{

driver/mysql/applier.go

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -40,6 +40,7 @@ import (
4040
const (
4141
cleanupGtidExecutedLimit = 2048
4242
pingInterval = 10 * time.Second
43+
retryTxDelay = 1 * time.Millisecond
4344
JobIncrCopy = "job_stage_incr"
4445
JobFullCopy = "job_stage_full"
4546
)

driver/mysql/applier_incr.go

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -241,6 +241,7 @@ func (a *ApplierIncr) MtsWorker(workerIndex int) {
241241
if merr.Number == sql.ErrLockDeadlock && iTry < a.mysqlContext.RetryTxLimit {
242242
logger.Info("found deadlock. will retry tx", "gno", entryContext.Entry.Coordinates.GetGNO(),
243243
"iTry", iTry)
244+
time.Sleep(retryTxDelay)
244245
continue
245246
}
246247
}

0 commit comments

Comments
 (0)