apache / apache/iotdb

[Bug] The BETWEEN operator reported an internal error.

Đang mở
#14,142 2 bình luận 0 reaction 0 người được giao 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=DOUBLE compressor=GZIP 'MAX_POINT_NUMBER'='8';
INSERT INTO root.db0(timestamp, t1) VALUES (1676586471999, 0.1);
INSERT INTO root.db0(t1) VALUES (0.2);

# query 1 success
SELECT t1 FROM root.db0 WHERE t1 BETWEEN (0) AND (100.0)

# query 2 error
SELECT t1 FROM root.db0 WHERE 1 BETWEEN (t1) AND (100.0)
```

### What did you expect to see?

Query 1 returned result set: 0.1 and 0.2

Query 2 returned result set: 0.1 and 0.2

### What did you see instead?

Query 1 returned result set: 0.01 and 0.02

Query 2 reported an internal error: Msg: org.apache.iotdb.jdbc.IoTDBSQLException: 305: [INTERNAL_SERVER_ERROR(305)] Exception occurred: "SELECT t1 FROM root.db0 WHERE 1 BETWEEN (t1) AND (100.0)". executeStatement failed. java.lang.Long cannot be cast to java.lang.Double

### Anything else?

Dear IoTDB team, I think this might be a bug. If this functionality is not supported, should relevant information be returned to inform the user of the error reason, instead of a 305 internal error?

### Are you willing to submit a PR?

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

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

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

Hướng nghiên cứu

Bắt đầu bằng cách tái hiện hai truy vấn BETWEEN trong issue trên IoTDB 1.3.3, sau đó lần theo đường đi của truy vấn xử lý các kiểu toán hạng và phép so sánh số. Công việc được xem là hoàn tất khi truy vấn thứ hai trả về các dòng như mong đợi mà không có lỗi nội bộ, đồng thời kết quả số không chính xác trong truy vấn thứ nhất được khắc phục hoặc được báo cáo bằng một lỗi rõ ràng cho người dùng.

Do mô hình lập chỉ mục viết ra từ nội dung của issue.

Đánh giá

Công nghệ
java, sql
Lĩnh vực
databases
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
45/100

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.