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 server.TestIssue33699 #33983

Closed
Tracked by #33745
tiancaiamao opened this issue Apr 14, 2022 · 4 comments · Fixed by #34027
Closed
Tracked by #33745

data race in server.TestIssue33699 #33983

tiancaiamao opened this issue Apr 14, 2022 · 4 comments · Fixed by #34027
Assignees
Labels
type/enhancement The issue or PR belongs to an enhancement.

Comments

@tiancaiamao
Copy link
Contributor

tiancaiamao commented Apr 14, 2022

cd server
go test -c -race .
./server.test -test.run TestIssue33699

@tiancaiamao
Copy link
Contributor Author

==================
WARNING: DATA RACE
Write at 0x00c004a8abe0 by goroutine 44:
  github.com/pingcap/tidb/server.(*clientConn).openSession()
      /home/genius/project/src/github.com/pingcap/tidb/server/conn.go:798 +0x2b3
  github.com/pingcap/tidb/server.(*clientConn).handleChangeUser()
      /home/genius/project/src/github.com/pingcap/tidb/server/conn.go:2346 +0x551
  github.com/pingcap/tidb/server.(*clientConn).dispatch()
      /home/genius/project/src/github.com/pingcap/tidb/server/conn.go:1362 +0x192a
  github.com/pingcap/tidb/server.TestIssue33699.func1()
      /home/genius/project/src/github.com/pingcap/tidb/server/conn_test.go:109 +0x4bd
  github.com/pingcap/tidb/server.TestIssue33699()
      /home/genius/project/src/github.com/pingcap/tidb/server/conn_test.go:162 +0x1226
  testing.tRunner()
      /home/genius/project/go/src/testing/testing.go:1439 +0x213
  testing.(*T).Run.func1()
      /home/genius/project/go/src/testing/testing.go:1486 +0x47

Previous read at 0x00c004a8abe0 by goroutine 27:
  [failed to restore the stack]

Goroutine 44 (running) created at:
  testing.(*T).Run()
      /home/genius/project/go/src/testing/testing.go:1486 +0x724
  testing.runTests.func1()
      /home/genius/project/go/src/testing/testing.go:1839 +0x99
  testing.tRunner()
      /home/genius/project/go/src/testing/testing.go:1439 +0x213
  testing.runTests()
      /home/genius/project/go/src/testing/testing.go:1837 +0x7e4
  testing.(*M).Run()
      /home/genius/project/go/src/testing/testing.go:1719 +0xa71
  go.uber.org/goleak.VerifyTestMain()
      /home/genius/go/pkg/mod/go.uber.org/[email protected]/testmain.go:53 +0x59
  github.com/pingcap/tidb/server.TestMain()
      /home/genius/project/src/github.com/pingcap/tidb/server/main_test.go:73 +0xd64
  main.main()
      _testmain.go:273 +0x3f7

Goroutine 27 (running) created at:
  github.com/pingcap/tidb/server.TestIssue33699()
      /home/genius/project/src/github.com/pingcap/tidb/server/conn_test.go:156 +0x120a
  testing.tRunner()
      /home/genius/project/go/src/testing/testing.go:1439 +0x213
  testing.(*T).Run.func1()
      /home/genius/project/go/src/testing/testing.go:1486 +0x47
==================

@tiancaiamao
Copy link
Contributor Author

WARNING: DATA RACE
Read at 0x00c00486b440 by goroutine 29:
  sync/atomic.LoadInt64()
      /home/genius/project/go/src/runtime/race_amd64.s:206 +0xb
  sync/atomic.LoadPointer()
      <autogenerated>:1 +0x16
  github.com/pingcap/tidb/session.(*session).ShowProcess()
      /home/genius/project/src/github.com/pingcap/tidb/session/session.go:3195 +0x30
  github.com/pingcap/tidb/server.TestIssue33699.func2()
      /home/genius/project/src/github.com/pingcap/tidb/server/conn_test.go:158 +0x79

Previous write at 0x00c00486b440 by goroutine 44:
  github.com/pingcap/tidb/session.createSessionWithOpt()
      /home/genius/project/src/github.com/pingcap/tidb/session/session.go:2938 +0x144
  github.com/pingcap/tidb/session.CreateSessionWithOpt()
      /home/genius/project/src/github.com/pingcap/tidb/session/session.go:2678 +0x67
  github.com/pingcap/tidb/session.CreateSession()
      /home/genius/project/src/github.com/pingcap/tidb/session/session.go:2672 +0x89
  github.com/pingcap/tidb/server.(*TiDBDriver).OpenCtx()
      /home/genius/project/src/github.com/pingcap/tidb/server/driver_tidb.go:188 +0x65
  github.com/pingcap/tidb/server.(*clientConn).openSession()
      /home/genius/project/src/github.com/pingcap/tidb/server/conn.go:798 +0x24c
  github.com/pingcap/tidb/server.(*clientConn).handleChangeUser()
      /home/genius/project/src/github.com/pingcap/tidb/server/conn.go:2346 +0x4f1
  github.com/pingcap/tidb/server.(*clientConn).dispatch()
      /home/genius/project/src/github.com/pingcap/tidb/server/conn.go:1362 +0x1626
  github.com/pingcap/tidb/server.TestIssue33699.func1()
      /home/genius/project/src/github.com/pingcap/tidb/server/conn_test.go:109 +0x4bd
  github.com/pingcap/tidb/server.TestIssue33699()
      /home/genius/project/src/github.com/pingcap/tidb/server/conn_test.go:162 +0x1226
  testing.tRunner()
      /home/genius/project/go/src/testing/testing.go:1439 +0x213
  testing.(*T).Run.func1()
      /home/genius/project/go/src/testing/testing.go:1486 +0x47

Goroutine 29 (running) created at:
  github.com/pingcap/tidb/server.TestIssue33699()
      /home/genius/project/src/github.com/pingcap/tidb/server/conn_test.go:156 +0x120a
  testing.tRunner()
      /home/genius/project/go/src/testing/testing.go:1439 +0x213
  testing.(*T).Run.func1()
      /home/genius/project/go/src/testing/testing.go:1486 +0x47

@tiancaiamao
Copy link
Contributor Author

==================
WARNING: DATA RACE
Read at 0x00c004ef6540 by goroutine 29:
  github.com/pingcap/tidb/server.TestIssue33699.func2()
      /home/genius/project/src/github.com/pingcap/tidb/server/conn_test.go:158 +0x64

Previous write at 0x00c004ef6540 by goroutine 44:
  github.com/pingcap/tidb/server.(*TiDBDriver).OpenCtx()
      /home/genius/project/src/github.com/pingcap/tidb/server/driver_tidb.go:200 +0x124
  github.com/pingcap/tidb/server.(*clientConn).openSession()
      /home/genius/project/src/github.com/pingcap/tidb/server/conn.go:798 +0x24c
  github.com/pingcap/tidb/server.(*clientConn).handleChangeUser()
      /home/genius/project/src/github.com/pingcap/tidb/server/conn.go:2346 +0x4f1
  github.com/pingcap/tidb/server.(*clientConn).dispatch()
      /home/genius/project/src/github.com/pingcap/tidb/server/conn.go:1362 +0x1626
  github.com/pingcap/tidb/server.TestIssue33699.func1()
      /home/genius/project/src/github.com/pingcap/tidb/server/conn_test.go:109 +0x4bd
  github.com/pingcap/tidb/server.TestIssue33699()
      /home/genius/project/src/github.com/pingcap/tidb/server/conn_test.go:162 +0x1226
  testing.tRunner()
      /home/genius/project/go/src/testing/testing.go:1439 +0x213
  testing.(*T).Run.func1()
      /home/genius/project/go/src/testing/testing.go:1486 +0x47

@tiancaiamao
Copy link
Contributor Author

Ref #33894
Ref #33703

@tiancaiamao tiancaiamao self-assigned this Apr 15, 2022
@tiancaiamao tiancaiamao added the type/enhancement The issue or PR belongs to an enhancement. label Apr 15, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
type/enhancement The issue or PR belongs to an enhancement.
Projects
None yet
Development

Successfully merging a pull request may close this issue.

1 participant