Skip to content

DATA RACE in the mockProxyProtocolProxy #41685

@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 0x00c01987b2f8 by goroutine 48454:
  github.com/pingcap/tidb/server.(*mockProxyProtocolProxy).ListenAddr()
      server/tidb_test.go:3020 +0x604
  github.com/pingcap/tidb/server.TestProxyProtocolWithIpFallbackable()
      server/tidb_test.go:3153 +0x656
  github.com/pingcap/tidb/domain.(*Domain).rebuildSysVarCache()
      domain/sysvar_cache.go:146 +0x7c4
  github.com/pingcap/tidb/domain.(*Domain).LoadSysVarCacheLoop()
      domain/domain.go:1449 +0xb9
  github.com/pingcap/tidb/session.BootstrapSession()
      session/session.go:3350 +0x7cc
  github.com/pingcap/tidb/domain.(*Domain).GetSessionCache()
      domain/sysvar_cache.go:62 +0x71
  github.com/pingcap/tidb/session.(*session).loadCommonGlobalVariablesIfNeeded()
      session/session.go:3683 +0x11e
  github.com/pingcap/tidb/session.(*session).ExecuteStmt()
      session/session.go:2148 +0x16b
  github.com/pingcap/tidb/session.(*session).ExecuteInternal()
      session/session.go:1678 +0x365
  github.com/pingcap/tidb/domain.(*Domain).LoadPrivilegeLoop()
      domain/domain.go:1393 +0x143
  github.com/pingcap/tidb/session.BootstrapSession()
      session/session.go:3343 +0x76c
  github.com/pingcap/tidb/server.createTidbTestSuiteWithCfg()
      server/tidb_test.go:102 +0x219
  github.com/pingcap/tidb/server.createTidbTestSuite()
      server/tidb_test.go:91 +0xc5
  github.com/pingcap/tidb/server.TestProxyProtocolWithIpFallbackable()
      server/tidb_test.go:3125 +0x110
  testing.tRunner()
      GOROOT/src/testing/testing.go:1576 +0x216
  testing.(*T).Run.func1()
      GOROOT/src/testing/testing.go:1629 +0x47

Previous write at 0x00c01987b2f8 by goroutine 70748:
  github.com/pingcap/tidb/server.(*mockProxyProtocolProxy).Run()
      server/tidb_test.go:3025 +0x96
  github.com/pingcap/tidb/server.TestProxyProtocolWithIpFallbackable.func3()
      server/tidb_test.go:3145 +0x30

Goroutine 48454 (running) created at:
  testing.(*T).Run()
      GOROOT/src/testing/testing.go:1629 +0x805
  testing.runTests.func1()
      GOROOT/src/testing/testing.go:2036 +0x8d
  testing.tRunner()
      GOROOT/src/testing/testing.go:1576 +0x216
  testing.runTests()
      GOROOT/src/testing/testing.go:2034 +0x87c
  testing.(*M).Run()
      GOROOT/src/testing/testing.go:1906 +0xb44
  go.uber.org/goleak.VerifyTestMain()
      external/org_uber_go_goleak/testmain.go:53 +0x70
  github.com/pingcap/tidb/server.TestMain()
      server/main_test.go:74 +0xe59
  main.main()
      bazel-out/k8-fastbuild/bin/server/server_test_/testmain.go:424 +0x7ce

Goroutine 70748 (running) created at:
  github.com/pingcap/tidb/server.TestProxyProtocolWithIpFallbackable()
      server/tidb_test.go:3144 +0x56b
  github.com/pingcap/tidb/domain.(*Domain).rebuildSysVarCache()
      domain/sysvar_cache.go:146 +0x7c4
  github.com/pingcap/tidb/domain.(*Domain).LoadSysVarCacheLoop()
      domain/domain.go:1449 +0xb9
  github.com/pingcap/tidb/session.BootstrapSession()
      session/session.go:3350 +0x7cc
  github.com/pingcap/tidb/domain.(*Domain).GetSessionCache()
      domain/sysvar_cache.go:62 +0x71
  github.com/pingcap/tidb/session.(*session).loadCommonGlobalVariablesIfNeeded()
      session/session.go:3683 +0x11e
  github.com/pingcap/tidb/session.(*session).ExecuteStmt()
      session/session.go:2148 +0x16b
  github.com/pingcap/tidb/session.(*session).ExecuteInternal()
      session/session.go:1678 +0x365
  github.com/pingcap/tidb/domain.(*Domain).LoadPrivilegeLoop()
      domain/domain.go:1393 +0x143
  github.com/pingcap/tidb/session.BootstrapSession()
      session/session.go:3343 +0x76c
  github.com/pingcap/tidb/server.createTidbTestSuiteWithCfg()
      server/tidb_test.go:102 +0x219
  github.com/pingcap/tidb/server.createTidbTestSuite()
      server/tidb_test.go:91 +0xc5
  github.com/pingcap/tidb/server.TestProxyProtocolWithIpFallbackable()
      server/tidb_test.go:3125 +0x110
  testing.tRunner()
      GOROOT/src/testing/testing.go:1576 +0x216
  testing.(*T).Run.func1()
      GOROOT/src/testing/testing.go:1629 +0x4

4. What is your TiDB version? (Required)

Metadata

Metadata

Assignees

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions