influxdb-client 2.9.0.pre.6184 → 2.9.0.pre.6326
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/CHANGELOG.md +4 -0
- data/lib/influxdb2/client/client.rb +0 -1
- data/lib/influxdb2/client/flux_csv_parser.rb +2 -2
- data/test/influxdb/flux_csv_parser_test.rb +39 -9
- data/test/influxdb/query_api_test.rb +18 -0
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: b6cb295165aaf2b2c7258a33d5c8b97a304df8d1a57a7922b87add1fa2d80e0d
|
4
|
+
data.tar.gz: b3bbb0e1c859851eae554301a0859dc63ab974e02d91481fede961ccc9174691
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 0e118873cab062084c16c66de8d92bafd7e3dc7d8f0d86186d5966003b9378cfda269ed897e4e9405958f27289490bfedb0cc6cdd4f8dff51f5cc938dd60df02
|
7
|
+
data.tar.gz: 0ebf3f5058918f06247c7c7fe41ca29308a6ba8c219ffa9cabeaf316bd9768f84da8e250290cb4c6f91495944b8efd606d67cb8d49a9ff99375245e7a3dd7fe4
|
data/CHANGELOG.md
CHANGED
@@ -1,5 +1,9 @@
|
|
1
1
|
## 2.9.0 [unreleased]
|
2
2
|
|
3
|
+
### Bug Fixes
|
4
|
+
1. [#123](https://github.com/influxdata/influxdb-client-ruby/pull/123): Duplicate columns warning shows in improper situations
|
5
|
+
1. [#124](https://github.com/influxdata/influxdb-client-ruby/pull/124): Query return type is `Array` instead of `Hash`
|
6
|
+
|
3
7
|
## 2.8.0 [2022-10-27]
|
4
8
|
|
5
9
|
### Features
|
@@ -51,7 +51,6 @@ module InfluxDB2
|
|
51
51
|
# @option options [Logger] :logger Logger used for logging. Disable logging by set to false.
|
52
52
|
# @option options [bool] :debugging Enable debugging for HTTP request/response.
|
53
53
|
# @option options [Hash] :tags Default tags which will be added to each point written by api.
|
54
|
-
# the body line-protocol
|
55
54
|
def initialize(url, token, options = nil)
|
56
55
|
@auto_closeable = []
|
57
56
|
@options = options ? options.dup : {}
|
@@ -60,7 +60,7 @@ module InfluxDB2
|
|
60
60
|
def initialize(response, stream: false, response_mode: InfluxDB2::FluxResponseMode::FULL)
|
61
61
|
@response = response
|
62
62
|
@stream = stream
|
63
|
-
@tables =
|
63
|
+
@tables = []
|
64
64
|
|
65
65
|
@table_index = 0
|
66
66
|
@table_id = -1
|
@@ -188,7 +188,7 @@ module InfluxDB2
|
|
188
188
|
i += 1
|
189
189
|
end
|
190
190
|
|
191
|
-
duplicates = table.columns.group_by
|
191
|
+
duplicates = table.columns.group_by(&:label).select { |_k, v| v.size > 1 }
|
192
192
|
|
193
193
|
warning = "The response contains columns with duplicated names: #{duplicates.keys.join(', ')}
|
194
194
|
You should use the 'FluxRecord.row to access your data instead of 'FluxRecord.values' hash."
|
@@ -516,14 +516,44 @@ class FluxCsvParserErrorTest < MiniTest::Test
|
|
516
516
|
,,0,2022-09-13T06:14:40.469404272Z,2022-09-13T06:24:40.469404272Z,2022-09-13T06:24:39.299Z,my_measurement,Prague,25.3
|
517
517
|
,,0,2022-09-13T06:14:40.469404272Z,2022-09-13T06:24:40.469404272Z,2022-09-13T06:24:40.454Z,my_measurement,Prague,25.3'
|
518
518
|
|
519
|
-
|
520
|
-
|
521
|
-
|
522
|
-
|
523
|
-
|
524
|
-
|
525
|
-
|
526
|
-
|
527
|
-
|
519
|
+
out, = capture_io do
|
520
|
+
tables = InfluxDB2::FluxCsvParser.new(data, stream: false, response_mode: InfluxDB2::FluxResponseMode::ONLY_NAMES)
|
521
|
+
.parse
|
522
|
+
.tables
|
523
|
+
|
524
|
+
assert_equal 1, tables.size
|
525
|
+
assert_equal 8, tables[0].columns.size
|
526
|
+
assert_equal 3, tables[0].records.size
|
527
|
+
assert_equal 7, tables[0].records[0].values.size
|
528
|
+
assert_equal 8, tables[0].records[0].row.size
|
529
|
+
assert_equal 25.3, tables[0].records[0].row[7]
|
530
|
+
end
|
531
|
+
|
532
|
+
assert_match 'The response contains columns with duplicated names: result', out
|
533
|
+
end
|
534
|
+
|
535
|
+
def test_parse_without_duplicates
|
536
|
+
data = '#datatype,string,long,dateTime:RFC3339,dateTime:RFC3339,dateTime:RFC3339,string,string,double
|
537
|
+
#group,false,false,true,true,false,true,true,false
|
538
|
+
#default,_result,,,,,,,
|
539
|
+
,result,table,_start,_stop,_time,_measurement,location,result2
|
540
|
+
,,0,2022-09-13T06:14:40.469404272Z,2022-09-13T06:24:40.469404272Z,2022-09-13T06:24:33.746Z,my_measurement,Prague,25.3
|
541
|
+
,,0,2022-09-13T06:14:40.469404272Z,2022-09-13T06:24:40.469404272Z,2022-09-13T06:24:39.299Z,my_measurement,Prague,25.3
|
542
|
+
,,0,2022-09-13T06:14:40.469404272Z,2022-09-13T06:24:40.469404272Z,2022-09-13T06:24:40.454Z,my_measurement,Prague,25.3'
|
543
|
+
|
544
|
+
out, = capture_io do
|
545
|
+
tables = InfluxDB2::FluxCsvParser.new(data, stream: false, response_mode: InfluxDB2::FluxResponseMode::ONLY_NAMES)
|
546
|
+
.parse
|
547
|
+
.tables
|
548
|
+
|
549
|
+
assert_equal 1, tables.size
|
550
|
+
assert_equal 8, tables[0].columns.size
|
551
|
+
assert_equal 3, tables[0].records.size
|
552
|
+
assert_equal 8, tables[0].records[0].values.size
|
553
|
+
assert_equal 8, tables[0].records[0].row.size
|
554
|
+
assert_equal 25.3, tables[0].records[0].row[7]
|
555
|
+
end
|
556
|
+
|
557
|
+
assert_equal '', out
|
528
558
|
end
|
529
559
|
end
|
@@ -144,4 +144,22 @@ class QueryApiTest < MiniTest::Test
|
|
144
144
|
assert_requested(:post, 'http://localhost:8086/api/v2/query?org=my-org',
|
145
145
|
times: 1, headers: headers)
|
146
146
|
end
|
147
|
+
|
148
|
+
def test_query_result_type
|
149
|
+
stub_request(:post, 'http://localhost:8086/api/v2/query?org=my-org')
|
150
|
+
.to_return(body: SUCCESS_DATA)
|
151
|
+
|
152
|
+
client = InfluxDB2::Client.new('http://localhost:8086', 'my-token',
|
153
|
+
bucket: 'my-bucket',
|
154
|
+
org: 'my-org',
|
155
|
+
use_ssl: false)
|
156
|
+
|
157
|
+
bucket = 'my-bucket'
|
158
|
+
result = client.create_query_api
|
159
|
+
.query(query: "from(bucket:\"#{bucket}\") |> range(start: 1970-01-01T00:00:00.000000001Z) |> last()")
|
160
|
+
|
161
|
+
assert_equal 1, result.length
|
162
|
+
assert_equal 4, result[0].records.length
|
163
|
+
assert_equal Array, result.class
|
164
|
+
end
|
147
165
|
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: influxdb-client
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 2.9.0.pre.
|
4
|
+
version: 2.9.0.pre.6326
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Jakub Bednar
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2022-
|
11
|
+
date: 2022-11-02 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|