4paradigm / 4paradigm/OpenMLDB
When window is open, ts=0, calculation error
- Ngôn ngữ chính
- C++
- Star
- 1.7k
- Fork
- 331
- Merge trung bình
- 12 ngày 12 giờ
- Pull request đã merge (30 ngày)
- 1
Mô tả
**Bug Description**
When window is open, ts=0, calculation error
+ case
```yaml
- id: 1
desc: ts列的值为0
inputs:
- columns: [ "c1 string","c3 int","c4 bigint","c5 float","c6 double","c7 timestamp","c8 date" ]
indexs: [ "index1:c1:c7" ]
rows:
- [ "aa",20,30,1.1,2.1,0,"2020-05-01" ]
- [ "aa",21,31,1.2,2.2,0,"2020-05-02" ]
- [ "aa",22,32,1.3,2.3,1590738992000,"2020-05-03" ]
- [ "aa",23,33,1.4,2.4,1590738993000,"2020-05-04" ]
- [ "bb",24,34,1.5,2.5,1590738994000,"2020-05-05" ]
sql: |
SELECT c1, c3, sum(c4) OVER w1 as w1_c4_sum FROM {0} WINDOW w1 AS (PARTITION BY {0}.c1 ORDER BY {0}.c7 ROWS_RANGE BETWEEN 2s PRECEDING AND 0s OPEN PRECEDING EXCLUDE CURRENT_TIME);
expect:
order: c3
columns: [ "c1 string","c3 int","w1_c4_sum bigint" ]
rows:
- [ "aa",20,null ]
- [ "aa",21,null ]
- [ "aa",22,null ]
- [ "aa",23,32 ]
- [ "bb",24,null ]
```
**Expected Behavior**

**Relation Case**
test_current_row.yaml id:13
Hướng dẫn đóng góp
Hướng nghiên cứu
The issue includes a failing YAML test case for a window function with ts=0. Look at the test file 'test_current_row.yaml' id:13 and the related SQL execution logic for window aggregation. The bug likely involves timestamp handling in the window frame calculation when the timestamp is zero. Start by running the provided test case to reproduce the error, then examine the window function implementation in the C++ codebase.
Do mô hình lập chỉ mục viết ra từ nội dung của issue.
Đánh giá
- Công nghệ
- sql
- Lĩnh vực
- databases, machine-learning
- Loại issue
- Lỗi
- Độ khó
- 3/5
- Thời gian dự kiến
- 1-2 ngày
- Mức độ hoạt động
- Đình trệ
- Độ rõ ràng
- Khá rõ ràng
- Mức phù hợp với người mới
- 40/100