apache / apache/iotdb

[Bug] SQL aggregate functions return null value exceptions under specific predicate expressions.

Đang mở
#14,216 2 bình luận 0 reaction 1 người được giao Được @JackieTien97 nhận Xem trên GitHub
Ngôn ngữ chính
Java
Star
6.4k
Fork
1.2k
Merge trung bình
1 ngày 23 giờ
Pull request đã merge (30 ngày)
115

Mô tả

### Search before asking

- [X] I searched in the [issues](https://github.com/apache/iotdb/issues) and found nothing similar.

### Version

version 1.3.3 (Build: ad95a7e)

### Describe the bug and provide the minimal reproduce step

```
DROP DATABASE root.db0
CREATE DATABASE root.db0

CREATE TIMESERIES root.db0.t1 WITH datatype=INT32;
INSERT INTO root.db0(timestamp, t1) VALUES (1641024000000, 1);

# query 1
SELECT COUNT(t1) AS ref0 FROM root.db0 WHERE t1 < -1 GROUP BY ([1641024000000, 1641024002000),1s,1s);

# query 2
SELECT COUNT(t1) AS ref0 FROM root.db0 WHERE FALSE GROUP BY ([1641024000000, 1641024002000),1s,1s);
```

### What did you expect to see?

Query 1 returned result set: 0 and 0

Query 2 returned result set: 0 and 0

### What did you see instead?

Query 1 returned result set: 0 and 0

Query 2 returned result set: **Empty set.**

### Anything else?

Dear IoTDB team, After filtering through predicate expressions, both Query 1 and Query 2 are expected to result in empty result sets. However, Query 1 can return a null value when there are no input rows or all values are null, while Query 2 returns an **Empty set**, which does not align with the expectation. This issue also exists with other aggregate function expressions. It may cause confusion for users in downsampling query scenarios.

### Are you willing to submit a PR?

- [ ] I'm willing to submit a PR!

Hướng dẫn đóng góp

Mở hướng dẫn đóng góp

Đánh giá

Issue này chưa được đánh giá.

Nhận issue mới trong hộp thư của bạn

Bản tóm tắt ngắn những issue GitHub phù hợp với người mới.