Skip to content

sql: race in TestCancelQueryPermissions #53573

@yuzefovich

Description

@yuzefovich

In this build I saw this:

=== RUN   TestCancelQueryPermissions/unpermissioned_users_cannot_cancel_other_users
==================
WARNING: DATA RACE
Read at 0x00c00c8070d0 by goroutine 1662:
  github.com/cockroachdb/cockroach/pkg/sql.(*connExecutor).serialize()
      /go/src/github.com/cockroachdb/cockroach/pkg/sql/conn_executor.go:2355 +0xff6
  github.com/cockroachdb/cockroach/pkg/sql.(*SessionRegistry).SerializeAll()
      /go/src/github.com/cockroachdb/cockroach/pkg/sql/exec_util.go:1348 +0x268
  github.com/cockroachdb/cockroach/pkg/server.(*statusServer).ListLocalSessions()
      /go/src/github.com/cockroachdb/cockroach/pkg/server/status.go:1671 +0x25a
  github.com/cockroachdb/cockroach/pkg/server/serverpb._Status_ListLocalSessions_Handler.func1()
      /go/src/github.com/cockroachdb/cockroach/pkg/server/serverpb/status.pb.go:4292 +0xa4
  github.com/grpc-ecosystem/grpc-opentracing/go/otgrpc.OpenTracingServerInterceptor.func1()
      /go/src/github.com/cockroachdb/cockroach/vendor/github.com/grpc-ecosystem/grpc-opentracing/go/otgrpc/server.go:44 +0xbd8
  google.golang.org/grpc.getChainUnaryHandler.func1()
      /go/src/github.com/cockroachdb/cockroach/vendor/google.golang.org/grpc/server.go:921 +0x146
  github.com/cockroachdb/cockroach/pkg/rpc.NewServer.func1()
      /go/src/github.com/cockroachdb/cockroach/pkg/rpc/context.go:199 +0x135
  google.golang.org/grpc.chainUnaryServerInterceptors.func1()
      /go/src/github.com/cockroachdb/cockroach/vendor/google.golang.org/grpc/server.go:907 +0x110
  github.com/cockroachdb/cockroach/pkg/server/serverpb._Status_ListLocalSessions_Handler()
      /go/src/github.com/cockroachdb/cockroach/pkg/server/serverpb/status.pb.go:4294 +0x1d8
  google.golang.org/grpc.(*Server).processUnaryRPC()
      /go/src/github.com/cockroachdb/cockroach/vendor/google.golang.org/grpc/server.go:1082 +0x954
  google.golang.org/grpc.(*Server).handleStream()
      /go/src/github.com/cockroachdb/cockroach/vendor/google.golang.org/grpc/server.go:1405 +0x12bd
  google.golang.org/grpc.(*Server).serveStreams.func1.1()
      /go/src/github.com/cockroachdb/cockroach/vendor/google.golang.org/grpc/server.go:746 +0xc8

Previous write at 0x00c00c8070d0 by goroutine 1379:
  github.com/cockroachdb/cockroach/pkg/sql.(*connExecutor).execStmtInOpenState()
      /go/src/github.com/cockroachdb/cockroach/pkg/sql/conn_executor_exec.go:247 +0x205
  github.com/cockroachdb/cockroach/pkg/sql.(*connExecutor).execStmt()
      /go/src/github.com/cockroachdb/cockroach/pkg/sql/conn_executor_exec.go:116 +0xe5e
  github.com/cockroachdb/cockroach/pkg/sql.(*connExecutor).execCmd()
      /go/src/github.com/cockroachdb/cockroach/pkg/sql/conn_executor.go:1448 +0x25d2
  github.com/cockroachdb/cockroach/pkg/sql.(*connExecutor).run()
      /go/src/github.com/cockroachdb/cockroach/pkg/sql/conn_executor.go:1377 +0x486
  github.com/cockroachdb/cockroach/pkg/sql.(*Server).ServeConn()
      /go/src/github.com/cockroachdb/cockroach/pkg/sql/conn_executor.go:509 +0x131
  github.com/cockroachdb/cockroach/pkg/sql/pgwire.(*conn).processCommandsAsync.func1()
      /go/src/github.com/cockroachdb/cockroach/pkg/sql/pgwire/conn.go:581 +0x39a

Goroutine 1662 (running) created at:
  google.golang.org/grpc.(*Server).serveStreams.func1()
      /go/src/github.com/cockroachdb/cockroach/vendor/google.golang.org/grpc/server.go:744 +0xb8
  google.golang.org/grpc/internal/transport.(*http2Server).operateHeaders()
      /go/src/github.com/cockroachdb/cockroach/vendor/google.golang.org/grpc/internal/transport/http2_server.go:442 +0x16a6
  google.golang.org/grpc/internal/transport.(*http2Server).HandleStreams()
      /go/src/github.com/cockroachdb/cockroach/vendor/google.golang.org/grpc/internal/transport/http2_server.go:483 +0x459
  google.golang.org/grpc.(*Server).serveStreams()
      /go/src/github.com/cockroachdb/cockroach/vendor/google.golang.org/grpc/server.go:742 +0x19a
  google.golang.org/grpc.(*Server).handleRawConn.func1()
      /go/src/github.com/cockroachdb/cockroach/vendor/google.golang.org/grpc/server.go:703 +0x4c

Goroutine 1379 (running) created at:
  github.com/cockroachdb/cockroach/pkg/sql/pgwire.(*conn).processCommandsAsync()
      /go/src/github.com/cockroachdb/cockroach/pkg/sql/pgwire/conn.go:509 +0x1e9
  github.com/cockroachdb/cockroach/pkg/sql/pgwire.(*conn).serveImpl()
      /go/src/github.com/cockroachdb/cockroach/pkg/sql/pgwire/conn.go:276 +0x83a
  github.com/cockroachdb/cockroach/pkg/sql/pgwire.(*Server).serveConn()
      /go/src/github.com/cockroachdb/cockroach/pkg/sql/pgwire/conn.go:154 +0x307
  github.com/cockroachdb/cockroach/pkg/sql/pgwire.(*Server).ServeConn()
      /go/src/github.com/cockroachdb/cockroach/pkg/sql/pgwire/server.go:579 +0x904
  github.com/cockroachdb/cockroach/pkg/server.(*sqlServer).startServeSQL.func1.1()
      /go/src/github.com/cockroachdb/cockroach/pkg/server/server.go:1845 +0x19c
  github.com/cockroachdb/cockroach/pkg/util/netutil.(*Server).ServeWith.func1()
      /go/src/github.com/cockroachdb/cockroach/pkg/util/netutil/net.go:147 +0x104
==================
FAIL	github.com/cockroachdb/cockroach/pkg/sql	1037.401s

Metadata

Metadata

Assignees

Labels

C-bugCode not up to spec/doc, specs & docs deemed correct. Solution expected to change code/behavior.

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions