4paradigm / 4paradigm/OpenMLDB

WARN log "not fully resolved" for SQL `select 0 in ("0","2")`

Open
#2,845 1 comment 0 reactions 1 assignee Claimed by @aceforeverd View on GitHub
execute-engine minor
Dominant language
C++
Stars
1.7k
Forks
331
Avg merge
12d 12h
Merged PRs (30d)
1

Description

test sql `select 0 in ("0","2");`
It'll print `expr_ir_builder.cc:98] (0,2) not fully resolved`.
But we skip InferAttr when node is expr list, in
https://github.com/4paradigm/OpenMLDB/blob/ea0a7bcc13f37110b9072972c59dec483935c93a/hybridse/src/passes/resolve_fn_and_attrs.cc#L246

So the WARN log should be print if `output type ==nullptr && node expr type != kExprList`?

Contributor guide

Open the contributing guide

Research direction

The issue points to hybridse/src/passes/resolve_fn_and_attrs.cc line 246, where InferAttr is skipped for expression lists. Examine the logic around expr_ir_builder.cc:98 to understand when the 'not fully resolved' warning is printed. Check the condition for output type and node expression type to see if the warning is appropriate. Run the test SQL `select 0 in ("0","2");` to reproduce the warning and verify the fix.

Written by the indexing model from the issue text.

Assessment

Tech stack
cpp, sql
Domain
databases, machine-learning
Issue type
Bug
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
45/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.