Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

DATA RACE in the mockProxyProtocolProxy #44609

Closed
hawkingrei opened this issue Jun 13, 2023 · 0 comments · Fixed by #51555
Closed

DATA RACE in the mockProxyProtocolProxy #44609

hawkingrei opened this issue Jun 13, 2023 · 0 comments · Fixed by #51555
Labels
severity/moderate sig/sql-infra SIG: SQL Infra type/bug This issue is a bug.

Comments

@hawkingrei
Copy link
Member

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 0x00c01fdd3068 by goroutine 26766:
  net.(*TCPListener).Addr()
      GOROOT/src/net/tcpsock.go:319 +0x30
  github.com/pingcap/tidb/server.(*mockProxyProtocolProxy).ListenAddr()
      server/tidb_test.go:3018 +0x85a
  github.com/pingcap/tidb/server.TestProxyProtocolWithIpFallbackable()
      server/tidb_test.go:3152 +0x896
  github.com/pingcap/tidb/domain.(*Domain).rebuildSysVarCache()
      domain/sysvar_cache.go:146 +0x8c4
  github.com/pingcap/tidb/domain.(*Domain).LoadSysVarCacheLoop()
      domain/domain.go:1619 +0xa8
  github.com/pingcap/tidb/session.BootstrapSession()
      session/session.go:3345 +0x6d3
  github.com/pingcap/tidb/domain.(*Domain).GetSessionCache()
      domain/sysvar_cache.go:62 +0x5c
  github.com/pingcap/tidb/session.(*session).loadCommonGlobalVariablesIfNeeded()
      session/session.go:3692 +0x104
  github.com/pingcap/tidb/session.(*session).ExecuteStmt()
      session/session.go:2129 +0x145
  github.com/pingcap/tidb/session.(*session).ExecuteInternal()
      session/session.go:1667 +0x31b
  github.com/pingcap/tidb/domain.(*Domain).LoadPrivilegeLoop()
      domain/domain.go:1562 +0x130
  github.com/pingcap/tidb/session.BootstrapSession()
      session/session.go:3338 +0x684
  github.com/pingcap/tidb/server.createTidbTestSuiteWithCfg()
      server/tidb_test.go:102 +0x236
  github.com/pingcap/tidb/server.createTidbTestSuite()
      server/tidb_test.go:91 +0x224
  github.com/pingcap/tidb/server.TestProxyProtocolWithIpFallbackable()
      server/tidb_test.go:3123 +0x285
  testing.tRunner()
      GOROOT/src/testing/testing.go:1576 +0x216
  testing.(*T).Run.func1()
      GOROOT/src/testing/testing.go:1629 +0x47
Previous write at 0x00c01fdd3068 by goroutine 52858:
  net.(*sysListener).listenTCP()
      GOROOT/src/net/tcpsock_posix.go:178 +0x14b
  net.(*ListenConfig).Listen()
      GOROOT/src/net/dial.go:636 +0x424
  net.Listen()
      GOROOT/src/net/dial.go:709 +0x85
  github.com/pingcap/tidb/server.(*mockProxyProtocolProxy).Run()
      server/tidb_test.go:3023 +0x6e
  github.com/pingcap/tidb/server.TestProxyProtocolWithIpFallbackable.func3()
      server/tidb_test.go:3144 +0x30
Goroutine 26766 (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
  github.com/pingcap/tidb/testkit/testmain.(*testingM).Run()
      testkit/testmain/wrapper.go:27 +0x42
  go.uber.org/goleak.VerifyTestMain()
      external/org_uber_go_goleak/testmain.go:53 +0x70
  github.com/pingcap/tidb/server.TestMain()
      server/main_test.go:83 +0xf45
  main.main()
      bazel-out/k8-fastbuild/bin/server/server_test_/testmain.go:420 +0x5e8
Goroutine 52858 (running) created at:
  github.com/pingcap/tidb/server.TestProxyProtocolWithIpFallbackable()
      server/tidb_test.go:3143 +0x7a5
  github.com/pingcap/tidb/domain.(*Domain).rebuildSysVarCache()
      domain/sysvar_cache.go:146 +0x8c4
  github.com/pingcap/tidb/domain.(*Domain).LoadSysVarCacheLoop()
      domain/domain.go:1619 +0xa8
  github.com/pingcap/tidb/session.BootstrapSession()
      session/session.go:3345 +0x6d3
  github.com/pingcap/tidb/domain.(*Domain).GetSessionCache()
      domain/sysvar_cache.go:62 +0x5c
  github.com/pingcap/tidb/session.(*session).loadCommonGlobalVariablesIfNeeded()
      session/session.go:3692 +0x104
  github.com/pingcap/tidb/session.(*session).ExecuteStmt()
      session/session.go:2129 +0x145
  github.com/pingcap/tidb/session.(*session).ExecuteInternal()
      session/session.go:1667 +0x31b
  github.com/pingcap/tidb/domain.(*Domain).LoadPrivilegeLoop()
      domain/domain.go:1562 +0x130
  github.com/pingcap/tidb/session.BootstrapSession()
      session/session.go:3338 +0x684
  github.com/pingcap/tidb/server.createTidbTestSuiteWithCfg()
      server/tidb_test.go:102 +0x236
  github.com/pingcap/tidb/server.createTidbTestSuite()
      server/tidb_test.go:91 +0x224
  github.com/pingcap/tidb/server.TestProxyProtocolWithIpFallbackable()
      server/tidb_test.go:3123 +0x285
  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)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
severity/moderate sig/sql-infra SIG: SQL Infra type/bug This issue is a bug.
Projects
None yet
2 participants