-
Notifications
You must be signed in to change notification settings - Fork 6k
Closed
Labels
affects-7.1This bug affects the 7.1.x(LTS) versions.This bug affects the 7.1.x(LTS) versions.affects-7.4affects-7.5This bug affects the 7.5.x(LTS) versions.This bug affects the 7.5.x(LTS) versions.severity/majorsig/plannerSIG: PlannerSIG: Plannertype/bugThe issue is confirmed as a bug.The issue is confirmed as a bug.
Description
Bug Report
Please answer these questions before submitting your issue. Thanks!
1. Minimal reproduce step (Required)
> create table t(a int);
> insert into t values(1);
> prepare s from "select * from tx where tidb_parse_tso(a) > unix_timestamp()";
> execute s;
2. What did you expect to see? (Required)
The result should be the same with query without prepare execute
TiDB [email protected]:test> select * from tx where tidb_parse_tso(a) > unix_timestamp();
+---+
| a |
+---+
| 1 |
+---+
1 row in set
Time: 0.006s
TiDB [email protected]:test> select * from tx where tidb_parse_tso(a) > unix_timestamp();
+---+
| a |
+---+
| 1 |
+---+
1 row in set
3. What did you see instead (Required)
The are different
TiDB [email protected]:test> select * from tx where tidb_parse_tso(a) > unix_timestamp();
+---+
| a |
+---+
| 1 |
+---+
1 row in set
Time: 0.006s
TiDB [email protected]:test> execute s;
+---+
| a |
+---+
+---+
0 rows in set
Time: 0.003s
And then if I disable plan cache, the session panics:
TiDB [email protected]:test> set @@tidb_enable_prepared_plan_cache=0;
Query OK, 0 rows affected
Time: 0.001s
TiDB [email protected]:test> execute s;
(1105, 'runtime error: invalid memory address or nil pointer dereference')
stack:
[2023/11/01 14:05:42.490 +08:00] [ERROR] [conn.go:965] ["connection running loop panic"] [conn=3391094944] [session_alias=] [lastSQL="execute s"] [err="runtime error: invalid memory address or nil pointer dereference"] [stack="github.com/pingcap/tidb/pkg/server.(*clientConn).Run.func1\n\t/Users/pingcap/workspace/build-common/go/src/github.com/pingcap/tidb/pkg/server/conn.go:968\nruntime.gopanic\n\t/usr/local/go1.21/src/runtime/panic.go:914\ngithub.com/pingcap/tidb/pkg/executor.(*Compiler).Compile.func1\n\t/Users/pingcap/workspace/build-common/go/src/github.com/pingcap/tidb/pkg/executor/compiler.go:55\nruntime.gopanic\n\t/usr/local/go1.21/src/runtime/panic.go:914\nruntime.panicmem\n\t/usr/local/go1.21/src/runtime/panic.go:261\nruntime.sigpanic\n\t/usr/local/go1.21/src/runtime/signal_unix.go:861\ngithub.com/pingcap/tidb/pkg/planner/core.getCachedPlan\n\t/Users/pingcap/workspace/build-common/go/src/github.com/pingcap/tidb/pkg/planner/core/plan_cache.go:264\ngithub.com/pingcap/tidb/pkg/planner/core.GetPlanFromSessionPlanCache\n\t/Users/pingcap/workspace/build-common/go/src/github.com/pingcap/tidb/pkg/planner/core/plan_cache.go:204\ngithub.com/pingcap/tidb/pkg/planner.OptimizeExecStmt\n\t/Users/pingcap/workspace/build-common/go/src/github.com/pingcap/tidb/pkg/planner/optimize.go:552\ngithub.com/pingcap/tidb/pkg/planner.Optimize\n\t/Users/pingcap/workspace/build-common/go/src/github.com/pingcap/tidb/pkg/planner/optimize.go:180\ngithub.com/pingcap/tidb/pkg/executor.(*Compiler).Compile\n\t/Users/pingcap/workspace/build-common/go/src/github.com/pingcap/tidb/pkg/executor/compiler.go:100\ngithub.com/pingcap/tidb/pkg/session.(*session).ExecuteStmt\n\t/Users/pingcap/workspace/build-common/go/src/github.com/pingcap/tidb/pkg/session/session.go:2210\ngithub.com/pingcap/tidb/pkg/server.(*TiDBContext).ExecuteStmt\n\t/Users/pingcap/workspace/build-common/go/src/github.com/pingcap/tidb/pkg/server/driver_tidb.go:292\ngithub.com/pingcap/tidb/pkg/server.(*clientConn).handleStmt\n\t/Users/pingcap/workspace/build-common/go/src/github.com/pingcap/tidb/pkg/server/conn.go:2009\ngithub.com/pingcap/tidb/pkg/server.(*clientConn).handleQuery\n\t/Users/pingcap/workspace/build-common/go/src/github.com/pingcap/tidb/pkg/server/conn.go:1800\ngithub.com/pingcap/tidb/pkg/server.(*clientConn).dispatch\n\t/Users/pingcap/workspace/build-common/go/src/github.com/pingcap/tidb/pkg/server/conn.go:1287\ngithub.com/pingcap/tidb/pkg/server.(*clientConn).Run\n\t/Users/pingcap/workspace/build-common/go/src/github.com/pingcap/tidb/pkg/server/conn.go:1066\ngithub.com/pingcap/tidb/pkg/server.(*Server).onConn\n\t/Users/pingcap/workspace/build-common/go/src/github.com/pingcap/tidb/pkg/server/server.go:701"]
4. What is your TiDB version? (Required)
nighly build, I'm not sure whether it affects released versions
TiDB [email protected]:test> select tidb_version();
+-----------------------------------------------------------+
| tidb_version() |
+-----------------------------------------------------------+
| Release Version: v7.6.0-alpha |
| Edition: Community |
| Git Commit Hash: 30288c77c7e84a9c596a8145dca27748468f9e51 |
| Git Branch: heads/refs/tags/v7.6.0-alpha |
| UTC Build Time: 2023-10-27 14:25:48 |
| GoVersion: go1.21.3 |
| Race Enabled: false |
| Check Table Before Drop: false |
| Store: tikv |
+-----------------------------------------------------------+
1 row in set
Time: 0.002s
Metadata
Metadata
Assignees
Labels
affects-7.1This bug affects the 7.1.x(LTS) versions.This bug affects the 7.1.x(LTS) versions.affects-7.4affects-7.5This bug affects the 7.5.x(LTS) versions.This bug affects the 7.5.x(LTS) versions.severity/majorsig/plannerSIG: PlannerSIG: Plannertype/bugThe issue is confirmed as a bug.The issue is confirmed as a bug.