Skip to content

DATA RACE at the GetInternalSessionStartTSList #42933

@hawkingrei

Description

@hawkingrei

Bug Report

Please answer these questions before submitting your issue. Thanks!

1. Minimal reproduce step (Required)

2. What did you expect to see? (Required)

3. What did you see instead (Required)

==================

WARNING: DATA RACE

Read at 0x00c005e86188 by goroutine 47260:

  github.com/pingcap/tidb/testkit.(*MockSessionManager).GetInternalSessionStartTSList()

      testkit/mocksessionmanager.go:147 +0x28e

  github.com/pingcap/tidb/domain/infosync.(*InfoSyncer).ReportMinStartTS()

      domain/infosync/info.go:801 +0xc1

  github.com/pingcap/tidb/domain.(*Domain).infoSyncerKeeper()

      domain/domain.go:666 +0x51a

  github.com/pingcap/tidb/domain.(*Domain).infoSyncerKeeper-fm()

      <autogenerated>:1 +0x39

  github.com/pingcap/tidb/util.(*WaitGroupEnhancedWrapper).Run.func1()

      util/wait_group_wrapper.go:96 +0xde


Previous write at 0x00c005e86188 by goroutine 47255:

  github.com/pingcap/tidb/sessiontxn/isolation.(*baseTxnContextProvider).OnInitialize()

      sessiontxn/isolation/base.go:123 +0x8f9

  github.com/pingcap/tidb/sessiontxn/isolation.(*OptimisticTxnContextProvider).OnInitialize()

      <autogenerated>:1 +0x64

  github.com/pingcap/tidb/session.(*txnManager).EnterNewTxn()

      session/txnmanager.go:168 +0xa7

  github.com/pingcap/tidb/sessiontxn.NewTxn()

      sessiontxn/interface.go:224 +0x141

  github.com/pingcap/tidb/ddl/internal/session.(*Session).Begin()

      ddl/internal/session/session.go:44 +0x7c

  github.com/pingcap/tidb/ddl/internal/session.(*Session).RunInTxn()

      ddl/internal/session/session.go:108 +0x64

  github.com/pingcap/tidb/ddl.GetBackfillJobForOneEle()

      ddl/job_table.go:702 +0x1a8

  github.com/pingcap/tidb/ddl.(*ddl).loadBackfillJobAndRun()

      ddl/job_table.go:396 +0x431

  github.com/pingcap/tidb/ddl.(*ddl).startDispatchBackfillJobsLoop()

      ddl/job_table.go:353 +0x564

  github.com/pingcap/tidb/ddl.(*ddl).startDispatchBackfillJobsLoop-fm()

      <autogenerated>:1 +0x39

  github.com/pingcap/tidb/util.(*WaitGroupWrapper).Run.func1()

      util/wait_group_wrapper.go:154 +0x87


Goroutine 47260 (running) created at:

  github.com/pingcap/tidb/util.(*WaitGroupEnhancedWrapper).Run()

      util/wait_group_wrapper.go:91 +0x15a

  github.com/pingcap/tidb/domain.(*Domain).Init()

      domain/domain.go:1181 +0x14ed

  github.com/pingcap/tidb/session.(*domainMap).Get.func1()

      session/tidb.go:93 +0x67c

  github.com/pingcap/tidb/util.RunWithRetry()

      util/misc.go:69 +0xbe

  github.com/pingcap/tidb/session.(*domainMap).Get()

      session/tidb.go:79 +0x2f8

  github.com/pingcap/tidb/session.createSessionWithOpt()

      session/session.go:3529 +0x86

  github.com/pingcap/tidb/session.createSession()

      session/session.go:3525 +0x49

  github.com/pingcap/tidb/session.createSessions()

      session/session.go:3510 +0x9a

  github.com/pingcap/tidb/session.BootstrapSession()

      session/session.go:3285 +0x455

  github.com/pingcap/tidb/testkit.bootstrap()

      testkit/mockstore.go:85 +0x84

  github.com/pingcap/tidb/testkit.CreateMockStoreAndDomain()

      testkit/mockstore.go:70 +0xd0

  github.com/pingcap/tidb/testkit.CreateMockStore()

      testkit/mockstore.go:62 +0x3b2

  executor/tiflashtest/tiflashtest_test.TestTiFlashPartitionTableShuffledHashAggregation()

      executor/tiflashtest/tiflash_test.go:941 +0x84

  testing.tRunner()

      GOROOT/src/testing/testing.go:1576 +0x216

  testing.(*T).Run.func1()

      GOROOT/src/testing/testing.go:1629 +0x47


Goroutine 47255 (running) created at:

  github.com/pingcap/tidb/util.(*WaitGroupWrapper).Run()

      util/wait_group_wrapper.go:152 +0xf6

  github.com/pingcap/tidb/ddl.(*ddl).prepareBackfillWorkers()

      ddl/ddl.go:755 +0x276

  github.com/pingcap/tidb/ddl.(*ddl).Start()

      ddl/ddl.go:790 +0x749

  github.com/pingcap/tidb/domain.(*Domain).Init()

      domain/domain.go:1166 +0x1172

  github.com/pingcap/tidb/session.(*domainMap).Get.func1()

      session/tidb.go:93 +0x67c

  github.com/pingcap/tidb/util.RunWithRetry()

      util/misc.go:69 +0xbe

  github.com/pingcap/tidb/session.(*domainMap).Get()

      session/tidb.go:79 +0x2f8

  github.com/pingcap/tidb/session.createSessionWithOpt()

      session/session.go:3529 +0x86

  github.com/pingcap/tidb/session.createSession()

      session/session.go:3525 +0x49

  github.com/pingcap/tidb/session.createSessions()

      session/session.go:3510 +0x9a

  github.com/pingcap/tidb/session.BootstrapSession()

      session/session.go:3285 +0x455

  github.com/pingcap/tidb/testkit.bootstrap()

      testkit/mockstore.go:85 +0x84

  github.com/pingcap/tidb/testkit.CreateMockStoreAndDomain()

      testkit/mockstore.go:70 +0xd0

  github.com/pingcap/tidb/testkit.CreateMockStore()

      testkit/mockstore.go:62 +0x3b2

  executor/tiflashtest/tiflashtest_test.TestTiFlashPartitionTableShuffledHashAggregation()

      executor/tiflashtest/tiflash_test.go:941 +0x84

  testing.tRunner()

      GOROOT/src/testing/testing.go:1576 +0x216

  testing.(*T).Run.func1()

      GOROOT/src/testing/testing.go:1629 +0x47

==================

==================

WARNING: DATA RACE

Read at 0x00c014ed96b8 by goroutine 47260:

  github.com/pingcap/tidb/testkit.(*MockSessionManager).GetInternalSessionStartTSList()

      testkit/mocksessionmanager.go:147 +0x2b3

  github.com/pingcap/tidb/domain/infosync.(*InfoSyncer).ReportMinStartTS()

      domain/infosync/info.go:801 +0xc1

  github.com/pingcap/tidb/domain.(*Domain).infoSyncerKeeper()

      domain/domain.go:666 +0x51a

  github.com/pingcap/tidb/domain.(*Domain).infoSyncerKeeper-fm()

      <autogenerated>:1 +0x39

  github.com/pingcap/tidb/util.(*WaitGroupEnhancedWrapper).Run.func1()

      util/wait_group_wrapper.go:96 +0xde


Previous write at 0x00c014ed96b8 by goroutine 47255:

  github.com/pingcap/tidb/sessiontxn/isolation.(*baseTxnContextProvider).OnInitialize()

      sessiontxn/isolation/base.go:111 +0x648

  github.com/pingcap/tidb/sessiontxn/isolation.(*OptimisticTxnContextProvider).OnInitialize()

      <autogenerated>:1 +0x64

  github.com/pingcap/tidb/session.(*txnManager).EnterNewTxn()

      session/txnmanager.go:168 +0xa7

  github.com/pingcap/tidb/sessiontxn.NewTxn()

      sessiontxn/interface.go:224 +0x141

  github.com/pingcap/tidb/ddl/internal/session.(*Session).Begin()

      ddl/internal/session/session.go:44 +0x7c

  github.com/pingcap/tidb/ddl/internal/session.(*Session).RunInTxn()

      ddl/internal/session/session.go:108 +0x64

  github.com/pingcap/tidb/ddl.GetBackfillJobForOneEle()

      ddl/job_table.go:702 +0x1a8

  github.com/pingcap/tidb/ddl.(*ddl).loadBackfillJobAndRun()

      ddl/job_table.go:396 +0x431

  github.com/pingcap/tidb/ddl.(*ddl).startDispatchBackfillJobsLoop()

      ddl/job_table.go:353 +0x564

  github.com/pingcap/tidb/ddl.(*ddl).startDispatchBackfillJobsLoop-fm()

      <autogenerated>:1 +0x39

  github.com/pingcap/tidb/util.(*WaitGroupWrapper).Run.func1()

      util/wait_group_wrapper.go:154 +0x87


Goroutine 47260 (running) created at:

  github.com/pingcap/tidb/util.(*WaitGroupEnhancedWrapper).Run()

      util/wait_group_wrapper.go:91 +0x15a

  github.com/pingcap/tidb/domain.(*Domain).Init()

      domain/domain.go:1181 +0x14ed

  github.com/pingcap/tidb/session.(*domainMap).Get.func1()

      session/tidb.go:93 +0x67c

  github.com/pingcap/tidb/util.RunWithRetry()

      util/misc.go:69 +0xbe

  github.com/pingcap/tidb/session.(*domainMap).Get()

      session/tidb.go:79 +0x2f8

  github.com/pingcap/tidb/session.createSessionWithOpt()

      session/session.go:3529 +0x86

  github.com/pingcap/tidb/session.createSession()

      session/session.go:3525 +0x49

  github.com/pingcap/tidb/session.createSessions()

      session/session.go:3510 +0x9a

  github.com/pingcap/tidb/session.BootstrapSession()

      session/session.go:3285 +0x455

  github.com/pingcap/tidb/testkit.bootstrap()

      testkit/mockstore.go:85 +0x84

  github.com/pingcap/tidb/testkit.CreateMockStoreAndDomain()

      testkit/mockstore.go:70 +0xd0

  github.com/pingcap/tidb/testkit.CreateMockStore()

      testkit/mockstore.go:62 +0x3b2

  executor/tiflashtest/tiflashtest_test.TestTiFlashPartitionTableShuffledHashAggregation()

      executor/tiflashtest/tiflash_test.go:941 +0x84

  testing.tRunner()

      GOROOT/src/testing/testing.go:1576 +0x216

  testing.(*T).Run.func1()

      GOROOT/src/testing/testing.go:1629 +0x47


Goroutine 47255 (running) created at:

  github.com/pingcap/tidb/util.(*WaitGroupWrapper).Run()

      util/wait_group_wrapper.go:152 +0xf6

  github.com/pingcap/tidb/ddl.(*ddl).prepareBackfillWorkers()

      ddl/ddl.go:755 +0x276

  github.com/pingcap/tidb/ddl.(*ddl).Start()

      ddl/ddl.go:790 +0x749

  github.com/pingcap/tidb/domain.(*Domain).Init()

      domain/domain.go:1166 +0x1172

  github.com/pingcap/tidb/session.(*domainMap).Get.func1()

      session/tidb.go:93 +0x67c

  github.com/pingcap/tidb/util.RunWithRetry()

      util/misc.go:69 +0xbe

  github.com/pingcap/tidb/session.(*domainMap).Get()

      session/tidb.go:79 +0x2f8

  github.com/pingcap/tidb/session.createSessionWithOpt()

      session/session.go:3529 +0x86

  github.com/pingcap/tidb/session.createSession()

      session/session.go:3525 +0x49

  github.com/pingcap/tidb/session.createSessions()

      session/session.go:3510 +0x9a

  github.com/pingcap/tidb/session.BootstrapSession()

      session/session.go:3285 +0x455

  github.com/pingcap/tidb/testkit.bootstrap()

      testkit/mockstore.go:85 +0x84

  github.com/pingcap/tidb/testkit.CreateMockStoreAndDomain()

      testkit/mockstore.go:70 +0xd0

  github.com/pingcap/tidb/testkit.CreateMockStore()

      testkit/mockstore.go:62 +0x3b2

  executor/tiflashtest/tiflashtest_test.TestTiFlashPartitionTableShuffledHashAggregation()

      executor/tiflashtest/tiflash_test.go:941 +0x84

  testing.tRunner()

      GOROOT/src/testing/testing.go:1576 +0x216

  testing.(*T).Run.func1()

      GOROOT/src/testing/testing.go:1629 +0x47

==================

4. What is your TiDB version? (Required)

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions