influxdata / influxdata/influxdb-java

Does influxdb-java has limitation for the # of select queries in one query() call?

Đang mở
#930 2 bình luận 0 reaction 0 người được giao Xem trên GitHub

Chưa có ai nhận issue này.

Ngôn ngữ chính
Java
Star
1.2k
Fork
469
Chỉ số merge pull request
Không có pull request nào được merge trong 30 ngày

Mô tả

# Environment
```
java 1.8
SpringBoot 2.4.3
SpringCloud 3.0.5
Influxdb-java 2.20
Influxdb 1.8
```

# Platform
```
client app: windows 10
influxdb server: centos 7
```

# Question
My influxdb database stores the data from May 2nd to May 5th, and the query string is as below, which contains 5 select:
```
SELECT metricsA FROM measurementA WHERE time >= '2023-05-02T10:10:30.78+08:00' AND time < '2023-05-20T08:20:30.78+08:00' AND ((uniqId = 'cadd3c08082f07740c459d4366b91002' AND sign=~/.*/) OR (uniqId = 'c0c0250e096735acc6b6dc341b47504a' AND sign=~/1.1|1.2/)) GROUP BY uniqId,sign tz('Etc/GMT-8');
SELECT metricsB FROM measurementB WHERE time >= '2023-05-02T10:10:30.78+08:00' AND time < '2023-05-20T08:20:30.78+08:00' AND ((uniqId = 'cadd3c08082f07740c459d4366b91002' AND sign=~/.*/) OR (uniqId = 'c0c0250e096735acc6b6dc341b47504a' AND sign=~/1.1|1.2/)) GROUP BY uniqId,sign tz('Etc/GMT-8');
SELECT metricsC,metricsD FROM measurementC WHERE time >= '2023-05-02T10:10:30.78+08:00' AND time < '2023-05-20T08:20:30.78+08:00' AND ((uniqId = 'cadd3c08082f07740c459d4366b91002' AND sign=~/.*/) OR (uniqId = 'c0c0250e096735acc6b6dc341b47504a' AND sign=~/1.1|1.2/)) GROUP BY uniqId,sign tz('Etc/GMT-8');
SELECT metricsE FROM measurementD WHERE time >= '2023-05-02T10:10:30.78+08:00' AND time < '2023-05-20T08:20:30.78+08:00' AND ((uniqId = 'cadd3c08082f07740c459d4366b91002') OR (uniqId = 'c0c0250e096735acc6b6dc341b47504a')) GROUP BY uniqId tz('Etc/GMT-8');
SELECT metricsF FROM measurementE WHERE time >= '2023-05-02T10:10:30.78+08:00' AND time < '2023-05-20T08:20:30.78+08:00' AND ((uniqId = 'cadd3c08082f07740c459d4366b91002' AND sign=~/.*/) OR (uniqId = 'c0c0250e096735acc6b6dc341b47504a' AND sign=~/1.1|1.2/)) GROUP BY uniqId,sign tz('Etc/GMT-8');
```
I'm calling InfluxDB.query() to execute it, but only the first 3 select query returns QueryResult. The Json format of QueryResult is:
```
"result":[
{
"series": [
{
"name": "measurementA",
"tags": {
"sign": "1.1",
"uniqId": "c0c0250e096735acc6b6dc341b47504a",
"IP": "4.4.4.4"
},
"columns": [
"time",
"PSUIn"
],
"values": [
[
"2023-05-03T08:04:00+08:00",
900.0
],
...
]
}
]
},
{...},
{...}
]
```

When I execute each select query seperately, they can all return QueryResults. And there is more, which is when I narrowed down the time range to { 2023-05-02T10:10:30.78+08:00 ---- 2023-05-04T10:10:30.78+08:00 } instead of { 2023-05-02T10:10:30.78+08:00 ---- 2023-05-20T08:20:30.78+08:00 }, it works just fine and gives all the results for 5 queries.

I had no clue why this happened. Is there any constrants for the number of select query in one query() call?

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

Chưa lập chỉ mục được hướng dẫn đóng góp cho kho mã nguồn này

Bắt đầu từ đâu

  1. Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
  2. Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
  3. Fork repository và làm thay đổi trên một nhánh.
  4. Mở pull request có tham chiếu số hiệu của issue.

Hướng nghiên cứu

Bắt đầu bằng cách tái hiện năm câu lệnh thông qua InfluxDB.query() với cả hai khoảng thời gian, sau đó so sánh QueryResult được trả về với các lỗi của máy chủ và máy khách, nếu có. Kiểm tra xem các kết quả bị thiếu bắt nguồn từ máy khách Java hay từ cơ chế xử lý multi-statement của InfluxDB; công việc được xem là hoàn tất khi xác định được thành phần giới hạn và ghi lại một lời giải thích có thể tái hiện.

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
Lĩnh vực
databases
Loại issue
Lỗi
Độ khó
4/5
Thời gian dự kiến
3-5 ngày
Mức độ hoạt động
Đình trệ
Độ rõ ràng
Cần làm rõ
Mức phù hợp với người mới
25/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.