4paradigm / 4paradigm/OpenMLDB
colunm resolving: uncleared resolving to a rename node
- Dominant language
- C++
- Stars
- 1.7k
- Forks
- 331
- Avg merge
- 12d 12h
- Merged PRs (30d)
- 1
Description
```yaml
- id: 4
mode: batch-request-unsupport
desc: LASTJOIN(SimpleOps(FILTER))
sql: |
SELECT
t1.c1,
t1.c2,
t2.c1 as c21
FROM t1 last join (select c1 as c1r, c2, c3, c4 from t2 where c1 != 'aa') t2
on t2.c1r = t1.c1;
inputs:
- name: t1
columns: ["c1 string","c2 int","c3 bigint","c4 timestamp"]
indexs: ["index1:c1:c4"]
rows:
- ["aa",2,3,1590738989000]
- ["bb",21,31,1590738990000]
- ["cc",41,51,1590738991000]
- name: t2
columns: ["c1 string","c2 int","c3 bigint","c4 timestamp"]
indexs: ["index1:c1:c4"]
rows:
- ["aa",2,13,1590738989000]
- ["bb",21,131,1590738990000]
- ["dd",41,151,1590738991000]
expect:
columns:
- c1 string
- c2 int
- c21 string
order: c1
data: |
aa, 2, NULL
bb, 21, bb
cc, 41, NULL
```
`t2.c1 as c12` should not work ? It should be `t2.c1r as c12`
Contributor guide
Research direction
The issue is about column resolution in SQL queries with renamed columns, specifically in a LAST JOIN context. Look at the SQL parsing and column resolution logic in the codebase, likely in the query planner or optimizer. The test case provided is a YAML specification; find where such tests are run to understand the expected behavior. The fix involves ensuring that column references after a rename (like `c1r`) are correctly resolved.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- sql
- Domain
- databases
- Issue type
- Bug
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 45/100