Skip to content

Commit 550708a

Browse files
authored
Merge branch 'master' into influxdb-java-182
2 parents f91bd4d + e573475 commit 550708a

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

47 files changed

+4286
-613
lines changed

.travis.yml

+11-9
Original file line numberDiff line numberDiff line change
@@ -1,16 +1,18 @@
1-
language: java
21
sudo: required
32

4-
jdk:
5-
- oraclejdk8
6-
7-
addons:
8-
apt:
9-
packages:
10-
- oracle-java8-installer # Updates JDK 8 to the latest available.
11-
123
services:
134
- docker
5+
6+
# We test against all influxdb versions with the most actual JDK.
7+
# Test only the most recent influxdb version with JDK8 which will be legacy soon.
8+
env:
9+
- MAVEN_JAVA_VERSION=3-jdk-10-slim INFLUXDB_VERSION=1.5
10+
- MAVEN_JAVA_VERSION=3-jdk-10-slim INFLUXDB_VERSION=1.4
11+
- MAVEN_JAVA_VERSION=3-jdk-10-slim INFLUXDB_VERSION=1.3
12+
- MAVEN_JAVA_VERSION=3-jdk-10-slim INFLUXDB_VERSION=1.2
13+
- MAVEN_JAVA_VERSION=3-jdk-10-slim INFLUXDB_VERSION=1.1
14+
- MAVEN_JAVA_VERSION=3-jdk-8-slim INFLUXDB_VERSION=1.5
15+
1416
script: ./compile-and-test.sh
1517

1618
after_success:

CHANGELOG.md

+112-60
Original file line numberDiff line numberDiff line change
@@ -1,98 +1,150 @@
1-
## v2.7 [unreleased]
1+
# Changelog
22

3-
#### Features
3+
## 2.11 [unreleased]
44

5-
- Simplify write() methods for use cases writing all points to same database and retention policy [PR #327](https://github.com/influxdata/influxdb-java/pull/327)
5+
- Support dynamic measurement name in InfluxDBResultMapper [PR #423](https://github.com/influxdata/influxdb-java/pull/423)
66

7-
#### Fixes
7+
## 2.10 [2018-04-26]
88

9-
- Replace RuntimeException with InfluxDBException [Issue #323](https://github.com/influxdata/influxdb-java/issues/323)
9+
### Fixes
10+
- Fix IllegalAccessException on setting value to POJOs, InfluxDBResultMapper is now more thread-safe [PR #432](https://github.com/influxdata/influxdb-java/pull/432)
1011

11-
#### Improvements
12+
### Features
1213

13-
- Significant (~35%) performance improvements for write speed with less memory footprint. [PR #330](https://github.com/influxdata/influxdb-java/pull/330)
14-
- Drop guava runtime dependency which reduces jar size from 1MB -> 49KB [PR #322](https://github.com/influxdata/influxdb-java/pull/322)
14+
- Support for parameter binding in queries ("prepared statements") [PR #429](https://github.com/influxdata/influxdb-java/pull/429)
15+
- Allow to figure out whether the Point.Builder has any field or not [PR #434](https://github.com/influxdata/influxdb-java/pull/434)
1516

16-
## v2.6 [2017.06-08]
17+
### Improvements
1718

18-
#### Features
19+
- Performance: use chained StringBuilder calls instead of single calls [PR #426](https://github.com/influxdata/influxdb-java/pull/426)
20+
- Performance: Escape fields and keys more efficiently [PR #424](https://github.com/influxdata/influxdb-java/pull/424)
21+
- Build: Speed up travis build [PR #435](https://github.com/influxdata/influxdb-java/pull/435)
22+
- Test: Update junit from 5.1.0 to 5.1.1 [PR #441](https://github.com/influxdata/influxdb-java/pull/441)
1923

20-
- Switch to Java 1.8
21-
- Support chunking
22-
- Add a databaseExists method to InfluxDB interface
23-
- [Issue #289](https://github.com/influxdata/influxdb-java/issues/289) Batching enhancements: Pending asynchronous writes can be explicitly flushed via `InfluxDB.flush()`.
24-
- Add a listener to notify asynchronous errors during batch flushes [PR #318](https://github.com/influxdata/influxdb-java/pull/318).
24+
## 2.9 [2018-02-27]
2525

26-
#### Fixes
26+
### Features
2727

28-
- [Issue #263](https://github.com/influxdata/influxdb-java/issues/263) Add databaseExists method to InfluxDB interface.
28+
- New extensible API to configure batching properties. [PR #409]
29+
- New configuration property 'jitter interval' to avoid multiple clients hit the server periodically at the same time. [PR #409]
30+
- New strategy on handling errors, client performs retries writes when server gets overloaded [PR #410]
31+
- New exceptions give the client user easier way to classify errors reported by the server. [PR #410]
2932

30-
#### Improvements
33+
## 2.8 [2017-12-06]
3134

32-
- Update retrofit from 2.1 to 2.2
33-
- Update slf4j from 1.7.22 to 1.7.24
34-
- Update okhttp3 from 3.5 to 3.6
35-
- automatically adjust batch processor capacity [PR #282](https://github.com/influxdata/influxdb-java/pull/282)
35+
### Fixes
36+
37+
- InfluxDBResultMapper now is able to process QueryResult created when a GROUP BY clause was used [PR #345](https://github.com/influxdata/influxdb-java/pull/345)
38+
- InfluxDB will now handle the timestamp on its own if none is provided [PR#350](https://github.com/influxdata/influxdb-java/pull/350)
39+
40+
### Features
41+
42+
- API: add InfluxDB#createRetentionPolicy and InfluxDB#dropRetentionPolicy to be able to create and drop Retention Policies [PR #351](https://github.com/influxdata/influxdb-java/pull/351)
43+
- API: add InfluxDB#query that uses callbacks
44+
45+
### Improvements
46+
47+
- Build: all unit and integration test are now running with jdk8 and jdk9.
48+
- Test: migration to junit5
49+
50+
## v2.7 [2017-06-26]
51+
52+
### Features
53+
54+
- Simplify write() methods for use cases writing all points to same database and retention policy [PR #327](https://github.com/influxdata/influxdb-java/pull/327)
55+
- QueryResult to Object mapper added [PR #341](https://github.com/influxdata/influxdb-java/pull/341)
56+
57+
### Fixes
58+
59+
- Replace RuntimeException with InfluxDBException [Issue #323](https://github.com/influxdata/influxdb-java/issues/323)
60+
61+
### Improvements
62+
63+
- Significant (~35%) performance improvements for write speed with less memory footprint. [PR #330](https://github.com/influxdata/influxdb-java/pull/330)
64+
- Drop guava runtime dependency which reduces jar size from 1MB -> 49KB [PR #322](https://github.com/influxdata/influxdb-java/pull/322)
65+
66+
## v2.6 [2017-06-08]
67+
68+
### Features
69+
70+
- Switch to Java 1.8
71+
- Support chunking
72+
- Add a databaseExists method to InfluxDB interface
73+
- [Issue #289](https://github.com/influxdata/influxdb-java/issues/289) Batching enhancements: Pending asynchronous writes can be explicitly flushed via `InfluxDB.flush()`.
74+
- Add a listener to notify asynchronous errors during batch flushes [PR #318](https://github.com/influxdata/influxdb-java/pull/318).
75+
76+
### Fixes
77+
78+
- [Issue #263](https://github.com/influxdata/influxdb-java/issues/263) Add databaseExists method to InfluxDB interface.
79+
80+
### Improvements
81+
82+
- Update retrofit from 2.1 to 2.2
83+
- Update slf4j from 1.7.22 to 1.7.24
84+
- Update okhttp3 from 3.5 to 3.6
85+
- automatically adjust batch processor capacity [PR #282](https://github.com/influxdata/influxdb-java/pull/282)
3686

3787
## v2.5 [2016-12-05]
3888

39-
#### Features
89+
### Features
4090

41-
- Support writing by UDP protocal.
42-
- Support gzip compress for http request body.
43-
- Support setting thread factory for batch processor.
44-
- Support chunking
91+
- Support writing by UDP protocal.
92+
- Support gzip compress for http request body.
93+
- Support setting thread factory for batch processor.
94+
- Support chunking
4595

46-
#### Fixes
96+
### Fixes
4797

48-
- [Issue #162](https://github.com/influxdb/influxdb-java/issues/162) Write point using async batch mode with different rp will use same rp.
49-
- [Issue #214](https://github.com/influxdb/influxdb-java/issues/214) Send multiple queries in one query statement will get only one result.
50-
- Write can't be always async if batch is enabled.
98+
- [Issue #162](https://github.com/influxdb/influxdb-java/issues/162) Write point using async batch mode with different rp will use same rp.
99+
- [Issue #214](https://github.com/influxdb/influxdb-java/issues/214) Send multiple queries in one query statement will get only one result.
100+
- Write can't be always async if batch is enabled.
51101

52-
#### Improvements
102+
### Improvements
53103

54-
- Remove the limit for database name: not contain '-'.
55-
- Support creating influxdb instance without username and password.
56-
- Add time related util methods for converting influxdb timestamp or unix epoch time.
57-
- correct exception type when disable batch twice.
104+
- Remove the limit for database name: not contain '-'.
105+
- Support creating influxdb instance without username and password.
106+
- Add time related util methods for converting influxdb timestamp or unix epoch time.
107+
- correct exception type when disable batch twice.
58108

59109
## v2.4 [2016-10-24]
60-
#### Features
61110

62-
- now uses okhttp3 and retrofit2. As a result, you can now pass an OkHttpClient.Builder to the InfluxDBFactory.connect if you wish to add more interceptors, etc, to OkHttp.
63-
- in InfluxDB 1.0.0, some queries now require a POST instead of GET. There is a flag on Query that allow this to be specified (default is still GET).
111+
### Features
112+
113+
- now uses okhttp3 and retrofit2. As a result, you can now pass an OkHttpClient.Builder to the InfluxDBFactory.connect if you wish to add more interceptors, etc, to OkHttp.
114+
- in InfluxDB 1.0.0, some queries now require a POST instead of GET. There is a flag on Query that allow this to be specified (default is still GET).
64115

65116
## v2.2 [2016-04-11]
66117

67-
#### Features
118+
### Features
119+
120+
- Allow writing of pre-constructed line protocol strings
68121

69-
- Allow writing of pre-constructed line protocol strings
122+
### Fixes
70123

71-
#### Fixes
124+
- Correct escaping of database names for create and delete database actions
125+
- Many bug fixes / improvements in general
72126

73-
- Correct escaping of database names for create and delete database actions
74-
- Many bug fixes / improvements in general
127+
### Other
75128

76-
#### Other
77-
- Deprecated `field()` method in preference for `addField()` methods.
129+
- Deprecated `field()` method in preference for `addField()` methods.
78130

79131
## v2.1 [2015-12-05]
80132

81-
#### Features
133+
### Features
82134

83-
- Extensions to fluent builder classes
84-
- Convenience methods for building Points
85-
- Allow integer types as field values
135+
- Extensions to fluent builder classes
136+
- Convenience methods for building Points
137+
- Allow integer types as field values
86138

87-
#### Fixes
139+
### Fixes
88140

89-
- Fixed escaping of tag and field values
90-
- Always uses nanosecond precision for time
91-
- Uses NumberFormat class for safer formatting of large numbers.
141+
- Fixed escaping of tag and field values
142+
- Always uses nanosecond precision for time
143+
- Uses NumberFormat class for safer formatting of large numbers.
92144

93145
## v2.0 [2015-07-17]
94146

95-
#### Features
147+
### Features
96148

97149
- Compatible with InfluxDB version 0.9+
98150
- Support for lineprotocol
@@ -104,7 +156,7 @@ No major functional changes or improvements. Mainly library updates and code str
104156

105157
## v1.3 [2014-10-22]
106158

107-
#### Features
159+
### Features
108160

109161
- Compatible with InfluxDB Version up to 0.8
110162
- API: add a InfluxDB#createDatabase(DatabaseConfiguration) to be able to create a new Database with ShardSpaces defined.
@@ -117,12 +169,12 @@ No major functional changes or improvements. Mainly library updates and code str
117169

118170
## v1.2 [2014-06-28]
119171

120-
#### Features
172+
### Features
121173

122174
- [Issue #2](https://github.com/influxdb/influxdb-java/issues/2) Implement the last missing api calls ( interfaces, sync, forceCompaction, servers, shards)
123175
- use (http://square.github.io/okhttp/, okhttp) instead of java builtin httpconnection to get failover for the http endpoint.
124176

125-
#### Tasks
177+
### Tasks
126178

127179
- [Issue #8](https://github.com/influxdb/influxdb-java/issues/8) Use com.github.docker-java which replaces com.kpelykh for Integration tests.
128180
- [Issue #6](https://github.com/influxdb/influxdb-java/issues/6) Update Retrofit to 1.6.0
@@ -131,12 +183,12 @@ No major functional changes or improvements. Mainly library updates and code str
131183

132184
## v1.1 [2014-05-31]
133185

134-
#### Features
186+
### Features
135187

136188
- Add InfluxDB#version() to get the InfluxDB Server version information.
137189
- Changed InfluxDB#createDatabase() to match [Issue #489](https://github.com/influxdb/influxdb/issues/489) without replicationFactor.
138190
- Updated Retrofit from 1.5.0 -> 1.5.1
139191

140192
## v1.0 [2014-05-6]
141193

142-
* Initial Release
194+
- Initial Release

LICENSE

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
The MIT License (MIT)
22

3-
Copyright (c) {{{year}}} {{{fullname}}}
3+
Copyright (c) 2014-2017 Stefan Majer
44

55
Permission is hereby granted, free of charge, to any person obtaining a copy
66
of this software and associated documentation files (the "Software"), to deal

0 commit comments

Comments
 (0)