4paradigm / 4paradigm/OpenMLDB
insert statement: codegen insert rows
- Dominant language
- C++
- Stars
- 1.7k
- Forks
- 331
- Avg merge
- 12d 12h
- Merged PRs (30d)
- 1
Description
we only support insert stmt with base type expressions, so
```sql
# 1.
insert into t1 values (1, 2);
# 2
insert to t1 values (1, map(1,"12"), inc(3), [3, 4, 5]);
```
`1` works with legacy solution, but not `2`. Codegen rows support both.
Big work since the complexity for insert statements, as well as the SDK in java and python.
- [ ] native codegen insert rows: consider table default value and parameters
- [ ] Java & Python SDK
- [ ] offline batch
#3723 initiate codegen rows for values that contains map data type only, more work required
Contributor guide
Research direction
The issue references #3723 which initiated codegen for map data types. Start by examining the existing codegen infrastructure for INSERT statements, likely in the SQL compiler or execution engine. Review the Java and Python SDKs to understand how they currently handle INSERT. The goal is to extend support to complex expressions like map(), inc(), and arrays in row values, ensuring default values and parameters are considered.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- java, python, sql
- Domain
- backend-api-design, database, machine-learning
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 25/100