cockroachdb / cockroachdb/cockroach

Sentry: pausable portal nil pointer with cleanup

Open
#172,852 2 comments 0 reactions 1 assignee Claimed by @ZhouXing19 View on GitHub
branch-release-26.2 C-bug O-sentry T-sql-queries X-blathers-triaged
Dominant language
Go
Stars
32.5k
Forks
4.1k
PR merge metrics
PR metrics pending

Description

This issue was auto filed by Sentry. It represents a crash or reported error on a live cluster with telemetry enabled.

Sentry Link: [https://cockroach-labs.sentry.io/issues/7635849866/?referrer=webhooks_plugin](https://cockroach-labs.sentry.io/issues/7635849866/?referrer=webhooks_plugin)

Panic Message:

```
conn_executor.go:1133: runtime error: invalid memory address or nil pointer dereference
(1) attached stack trace
-- stack trace:
| github.com/cockroachdb/cockroach/pkg/sql.(*Server).ServeConn.func1
| pkg/sql/conn_executor.go:1133
| [...repeated from below...]
Wraps: (2) attached stack trace
-- stack trace:
| github.com/cockroachdb/cockroach/pkg/sql.(*Server).ServeConn.func1
| pkg/sql/conn_executor.go:1133
| runtime.gopanic
| GOROOT/src/runtime/panic.go:783
| runtime.panicmem
| GOROOT/src/runtime/panic.go:262
| runtime.sigpanic
| GOROOT/src/runtime/signal_unix.go:925
| github.com/cockroachdb/cockroach/pkg/sql.shouldForceLogStatement
| pkg/sql/exec_log.go:109
| github.com/cockroachdb/cockroach/pkg/sql.(*planner).maybeLogStatementInternal
| pkg/sql/exec_log.go:310
| github.com/cockroachdb/cockroach/pkg/sql.(*planner).maybeLogStatement
| pkg/sql/exec_log.go:142
| github.com/cockroachdb/cockroach/pkg/sql.(*connExecutor).execStmtInOpenStateWithPausablePortal.func13
| pkg/sql/conn_executor_exec.go:1758
| github.com/cockroachdb/cockroach/pkg/sql.(*connExecutor).execStmtInOpenStateWithPausablePortal.func2.1
| pkg/sql/conn_executor_exec.go:1239
| github.com/cockroachdb/cockroach/pkg/sql.(*cleanupFuncQueue).run
| pkg/sql/prepared_stmt.go:211
| github.com/cockroachdb/cockroach/pkg/sql.(*portalPauseInfo).cleanupAll
| pkg/sql/prepared_stmt.go:337
| github.com/cockroachdb/cockroach/pkg/sql.(*PreparedPortal).close
| pkg/sql/prepared_stmt.go:178
| github.com/cockroachdb/cockroach/pkg/sql.(*connExecutor).deletePortal
| pkg/sql/conn_executor_prepare.go:701
| github.com/cockroachdb/cockroach/pkg/sql.(*connExecutor).execDelPrepStmt
| pkg/sql/conn_executor_prepare.go:723
| github.com/cockroachdb/cockroach/pkg/sql.(*connExecutor).execCmd
| pkg/sql/conn_executor.go:2628
| github.com/cockroachdb/cockroach/pkg/sql.(*connExecutor).run
| pkg/sql/conn_executor.go:2394
| github.com/cockroachdb/cockroach/pkg/sql.(*Server).ServeConn
| pkg/sql/conn_executor.go:1135
| github.com/cockroachdb/cockroach/pkg/sql/pgwire.(*conn).processCommands
| pkg/sql/pgwire/conn.go:254
| github.com/cockroachdb/cockroach/pkg/sql/pgwire.(*Server).serveImpl.func4
| pkg/sql/pgwire/server.go:1295
| runtime.goexit
| src/runtime/asm_amd64.s:1693
Wraps: (3) runtime error: invalid memory address or nil pointer dereference
Error types: (1) *withstack.withStack (2) *withstack.withStack (3) runtime.errorString
-- report composition:
runtime.errorString
conn_executor.go:1133: *withstack.withStack (top exception)
conn_executor.go:1133: *withstack.withStack (1)
(check the extra data payloads)
```

Stacktrace (expand for inline code snippets):

[src/runtime/asm_amd64.s#L1692-L1694](src/runtime/asm_amd64.s#L1692-L1694)
[pkg/sql/pgwire/server.go#L1294-L1296](pkg/sql/pgwire/server.go#L1294-L1296)
[pkg/sql/pgwire/conn.go#L253-L255](pkg/sql/pgwire/conn.go#L253-L255)
[pkg/sql/conn_executor.go#L1134-L1136](pkg/sql/conn_executor.go#L1134-L1136)
[pkg/sql/conn_executor.go#L2393-L2395](pkg/sql/conn_executor.go#L2393-L2395)
[pkg/sql/conn_executor.go#L2627-L2629](pkg/sql/conn_executor.go#L2627-L2629)
[pkg/sql/conn_executor_prepare.go#L722-L724](pkg/sql/conn_executor_prepare.go#L722-L724)
[pkg/sql/conn_executor_prepare.go#L700-L702](pkg/sql/conn_executor_prepare.go#L700-L702)
[pkg/sql/prepared_stmt.go#L177-L179](pkg/sql/prepared_stmt.go#L177-L179)
[pkg/sql/prepared_stmt.go#L336-L338](pkg/sql/prepared_stmt.go#L336-L338)
[pkg/sql/prepared_stmt.go#L210-L212](pkg/sql/prepared_stmt.go#L210-L212)
[pkg/sql/conn_executor_exec.go#L1238-L1240](pkg/sql/conn_executor_exec.go#L1238-L1240)
[pkg/sql/conn_executor_exec.go#L1757-L1759](pkg/sql/conn_executor_exec.go#L1757-L1759)
[pkg/sql/exec_log.go#L141-L143](pkg/sql/exec_log.go#L141-L143)
[pkg/sql/exec_log.go#L309-L311](pkg/sql/exec_log.go#L309-L311)
[pkg/sql/exec_log.go#L108-L110](pkg/sql/exec_log.go#L108-L110)
[GOROOT/src/runtime/signal_unix.go#L924-L926](GOROOT/src/runtime/signal_unix.go#L924-L926)
[GOROOT/src/runtime/panic.go#L261-L263](GOROOT/src/runtime/panic.go#L261-L263)
[GOROOT/src/runtime/panic.go#L782-L784](GOROOT/src/runtime/panic.go#L782-L784)
[pkg/sql/conn_executor.go#L1132-L1134](pkg/sql/conn_executor.go#L1132-L1134)

```
src/runtime/asm_amd64.s in runtime.goexit at line 1693
pkg/sql/pgwire/server.go in pkg/sql/pgwire.(*Server).serveImpl.func4 at line 1295
pkg/sql/pgwire/conn.go in pkg/sql/pgwire.(*conn).processCommands at line 254
pkg/sql/conn_executor.go in pkg/sql.(*Server).ServeConn at line 1135
pkg/sql/conn_executor.go in pkg/sql.(*connExecutor).run at line 2394
pkg/sql/conn_executor.go in pkg/sql.(*connExecutor).execCmd at line 2628
pkg/sql/conn_executor_prepare.go in pkg/sql.(*connExecutor).execDelPrepStmt at line 723
pkg/sql/conn_executor_prepare.go in pkg/sql.(*connExecutor).deletePortal at line 701
pkg/sql/prepared_stmt.go in pkg/sql.(*PreparedPortal).close at line 178
pkg/sql/prepared_stmt.go in pkg/sql.(*portalPauseInfo).cleanupAll at line 337
pkg/sql/prepared_stmt.go in pkg/sql.(*cleanupFuncQueue).run at line 211
pkg/sql/conn_executor_exec.go in pkg/sql.(*connExecutor).execStmtInOpenStateWithPausablePortal.func2.1 at line 1239
pkg/sql/conn_executor_exec.go in pkg/sql.(*connExecutor).execStmtInOpenStateWithPausablePortal.func13 at line 1758
pkg/sql/exec_log.go in pkg/sql.(*planner).maybeLogStatement at line 142
pkg/sql/exec_log.go in pkg/sql.(*planner).maybeLogStatementInternal at line 310
pkg/sql/exec_log.go in pkg/sql.shouldForceLogStatement at line 109
GOROOT/src/runtime/signal_unix.go in runtime.sigpanic at line 925
GOROOT/src/runtime/panic.go in runtime.panicmem at line 262
GOROOT/src/runtime/panic.go in runtime.gopanic at line 783
pkg/sql/conn_executor.go in pkg/sql.(*Server).ServeConn.func1 at line 1133
```

### Tags

| Tag | Value |
| --- | --- |
| Command | server |
| Environment | v26.2.4 |
| Go Version | go1.25.5 |
| Platform | linux amd64 |
| Distribution | CCL |
| Cockroach Release | v26.2.4 |
| Cockroach SHA | 80586181eb50e380e2cc982f61841eaf38af9982 |
| # of CPUs | 4 |
| # of Goroutines | 1741 |

Jira issue: CRDB-66119

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.