From bb569eeaa158162258614026208f77c0fe73b45d Mon Sep 17 00:00:00 2001 From: lance6716 Date: Wed, 21 Jun 2023 11:29:42 +0800 Subject: [PATCH] lightning: unwrap the error before call PD function Signed-off-by: lance6716 --- br/pkg/lightning/backend/local/checksum.go | 2 +- br/pkg/lightning/backend/local/checksum_test.go | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/br/pkg/lightning/backend/local/checksum.go b/br/pkg/lightning/backend/local/checksum.go index 75104176070d4..3acc237068da8 100644 --- a/br/pkg/lightning/backend/local/checksum.go +++ b/br/pkg/lightning/backend/local/checksum.go @@ -306,7 +306,7 @@ func (e *TiKVChecksumManager) Checksum(ctx context.Context, tableInfo *checkpoin ) physicalTS, logicalTS, err = e.manager.pdClient.GetTS(ctx) for err != nil { - if !pd.IsLeaderChange(err) { + if !pd.IsLeaderChange(errors.Cause(err)) { return nil, errors.Annotate(err, "fetch tso from pd failed") } retryTime++ diff --git a/br/pkg/lightning/backend/local/checksum_test.go b/br/pkg/lightning/backend/local/checksum_test.go index 257e59c41dd76..bd5fdd1c65666 100644 --- a/br/pkg/lightning/backend/local/checksum_test.go +++ b/br/pkg/lightning/backend/local/checksum_test.go @@ -295,7 +295,7 @@ func (c *testPDClient) currentSafePoint() uint64 { func (c *testPDClient) GetTS(ctx context.Context) (int64, int64, error) { physicalTS := time.Now().UnixMilli() if c.leaderChanging && physicalTS%2 == 0 { - return 0, 0, errs.ErrClientTSOStreamClosed + return 0, 0, errors.WithStack(errs.ErrClientTSOStreamClosed) } logicalTS := oracle.ExtractLogical(c.logicalTSCounter.Inc()) return physicalTS, logicalTS, nil