4paradigm / 4paradigm/OpenMLDB
SQL Engine assumes all the pointers are valid during the computation period while it is not always true
- 主要语言
- C++
- 星标
- 1.7k
- 派生
- 331
- 平均合并
- 12 天 12 小时
- 30 天内合并 PR
- 1
描述
**Bug Description**
SQL Engine assumes all the pointers are valid during the computation period,
while it is not true in the storage engine.
For example,
for `*_cate` (see issue #2931), sql engine assumes that the `StringRef`s are valid during the whole computation, while in the `Iterator` implementation (see pr #2939), the `value` will become invalid/freed after the next call of `Next`.
- `FullTableIterator`: fixed in #2939, guarantee the `value` is valid in the whole life cycle of `Iterator`
- `RemoteWindowIterator`: as `sliding window` copies the rows, we didn't change the current behaviour for now
- For local `Iterator`, we haven't fixed it for now.
**Expected Behavior**
We have to work out a good solution between SQL engine and storage engine to make them have the same assumption.
**Relation Case**
**Steps to Reproduce**
1.
2.
3.
4.
贡献指南
评估
这个 Issue 还没有评估数据。