cockroachdb / cockroachdb/cockroach
sql: internal error with JSON exists `?` operator and `ALL`
- Dominant language
- Go
- Stars
- 32.5k
- Forks
- 4.1k
- PR merge metrics
- PR metrics pending
Description
To reproduce:
```sql
SELECT '{"a":1}'::JSONB ? ALL (SELECT * FROM (VALUES ('a')) v(t));
```
This results in an internal error:
```
ERROR: internal error: lookup for ComparisonExpr (('{"a": 1, "b": 2}')[jsonb] = ANY ((('a')[string],))[tuple{string}])[bool]'s CmpOp failed
SQLSTATE: XX000
DETAIL: stack trace:
github.com/cockroachdb/cockroach/pkg/sql/sem/tree/expr.go:490: MemoizeComparisonExprOp()
github.com/cockroachdb/cockroach/pkg/sql/sem/tree/expr.go:409: NewTypedComparisonExprWithSubOp()
github.com/cockroachdb/cockroach/pkg/sql/opt/exec/execbuilder/scalar.go:449: buildAnyScalar()
github.com/cockroachdb/cockroach/pkg/sql/opt/exec/execbuilder/scalar.go:105: buildScalar()
github.com/cockroachdb/cockroach/pkg/sql/opt/exec/execbuilder/scalar.go:193: buildBoolean()
github.com/cockroachdb/cockroach/pkg/sql/opt/exec/execbuilder/scalar.go:105: buildScalar()
github.com/cockroachdb/cockroach/pkg/sql/opt/exec/execbuilder/relational.go:458: buildValuesRows()
github.com/cockroachdb/cockroach/pkg/sql/opt/exec/execbuilder/relational.go:439: buildValues()
github.com/cockroachdb/cockroach/pkg/sql/opt/exec/execbuilder/relational.go:200: buildRelational()
github.com/cockroachdb/cockroach/pkg/sql/opt/exec/execbuilder/builder.go:314: build()
github.com/cockroachdb/cockroach/pkg/sql/opt/exec/execbuilder/builder.go:249: Build()
github.com/cockroachdb/cockroach/pkg/sql/plan_opt.go:649: runExecBuilder()
github.com/cockroachdb/cockroach/pkg/sql/plan_opt.go:300: makeOptimizerPlan()
github.com/cockroachdb/cockroach/pkg/sql/conn_executor_exec.go:1466: makeExecPlan()
github.com/cockroachdb/cockroach/pkg/sql/conn_executor_exec.go:1074: dispatchToExecutionEngine()
github.com/cockroachdb/cockroach/pkg/sql/conn_executor_exec.go:689: execStmtInOpenState()
github.com/cockroachdb/cockroach/pkg/sql/conn_executor_exec.go:131: func1()
github.com/cockroachdb/cockroach/pkg/sql/conn_executor_exec.go:2420: execWithProfiling()
github.com/cockroachdb/cockroach/pkg/sql/conn_executor_exec.go:130: execStmt()
github.com/cockroachdb/cockroach/pkg/sql/conn_executor.go:1932: func1()
github.com/cockroachdb/cockroach/pkg/sql/conn_executor.go:1936: execCmd()
github.com/cockroachdb/cockroach/pkg/sql/conn_executor.go:1858: run()
github.com/cockroachdb/cockroach/pkg/sql/conn_executor.go:832: ServeConn()
github.com/cockroachdb/cockroach/pkg/sql/pgwire/conn.go:728: func1()
src/runtime/asm_arm64.s:1172: goexit()
```
Jira issue: CRDB-24985
Contributor guide
Assessment
This issue has not been assessed yet.