forked from ClickHouse/clickhouse-java
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathCHANGELOG
350 lines (296 loc) · 10.8 KB
/
CHANGELOG
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
0.3.1
* BREAKING CHANGE - move query from url to request body
* BREAKING CHANGE - always parse SQL(use extended API to skip that)
* BREAKING CHANGE - remove keepAliveTimeout and useNewParser from ClickHouseProperties
* BREAKING CHANGE - exclude RoaringBitmap from shaded jar
* add new connection setting useSharedCookieStore for load balancing
* add new query parameters: allow_experimental_bigint_types, allow_experimental_map_type, and join_algorithm
* add new format: CustomSeparated and RowBinaryWithNamesAndTypes
* fix 400 bad request error when dealing with large query
* fix parser issue when DESC statement contains alias
* support batch processing with arbitrary query - update and delete are not recommended so there'll be warnings
* support multi-statement sql - session will be used automatically and only the last result will be returned
0.3.0
* BREAKING CHANGE - dropped JDK 7 support
* BREAKING CHANGE - removed Guava dependency(and so is UnsignedLong)
* JDBC 4.2 support
* add connection setting client_name for load-balancing and troubleshooting
* add writeBytes & writeUUIDArray and remove UnsignedLong related methods in ClickHouseRowBinaryStream
* support more data types: IPv4, IPv6, Int128, UInt128, Int256, UInt256, Decimal256, DateTime*, and Map
* support ORC/Parquet streaming
* support read/write Bitmap from/into AggregateFunction(groupBitmap, UInt[8-64]) column
* throw SQLException instead of RuntimeException when instantiating ClickHouseConnectionImpl
* fix error when using ClickHouseCompression.none against 19.16
* fix NegativeArraySizeException when dealing with large array
* fix datetime/date display issue caused by timezone differences(between client and column/server)
0.2.6
* add new feature for sending compressed files/streams
* introduce an experimental SQL parser to fix parsing related issues - set connection setting use_new_parser to false to disable
* restore String[] getColumnNames() method for backward compatibility
* retry idempotent operation up to 3 times when server closed connection - set connection setting maxRetries to zero to disable
* return inserted rows(not accurate) when query parameter send_progress_in_http_headers is set to true
* set socket timeout in ClickHouseConnectionImpl.isValid()
* upgrade to lz4-java and improve performance of LZ4 stream
* use HTTP Basic Auth for credentials instead of query parameters
* use static version instead of property-based revision in pom.xml
0.2.5
* bump dependencies and include lz4 in shaded jar
* new API: ClickHouseRowBinaryStream.writeUInt64Array(UnsignedLong[])
* support column comments
* support explain queries
* fix keep-alive timeout issue by reusing validated connection
* fix ResultSet.findColumn(String) issue
* fix the issue of not being able to use NULL constant in PreparedStatement
* fix toLowerCase issue for Turkish
0.2.4
* fix FORMAT clause append for queries, ending with comment
0.2.3
* added support for Decimals in RowBinary protocol
0.2.2
* close certificate keystore
* fix for Boolean data type
0.2.1
* implement some ResultSet metadata methods
* added support for "any_join_distinct_right_table_keys" setting
* nested array support
0.2
* new API for writing streams of data
* deprecation of send* methods in ClickHouseStatement interface
0.1.55
NOTE: behavior for byte[] parameters changed. See https://github.com/yandex/clickhouse-jdbc/pull/352
* support for sending stream of CSV data
* support for 307 redirects and paths in url (when ClickHouse is behind balancer)
* query parameters and types handling improved
* strict ssl fixed
* support for array of decimals
0.1.54
* added error codes
* multi-line statement parsing fixed
* correct class names for arrays
* prepared statements with functions fixed
* max_partitions_per_insert_block, max_insert_block_size, insert_deduplicate, insert_distributed_sync added
* BalancedClickHouseDatasource parameters handling fixed
* DateTime with timezone type support. NOTE: zones in values parsing are not handled
* prepared statements with back quotes fixed
0.1.53
* fixed timezone initialization
* added max_memory_usage_for_user and max_memory_usage_for_all_queries
0.1.52
* fixed executeQuery additionalParams copy
0.1.51
* fixed sendStream
* fixed LEB128 encoding
* cancel by query_id implementation
* improved ResultSetMetadata for Decimal data types
* PreparedStatement single and double quotes support
* NoopHostnameVerifier for sslMode none
0.1.50
* Array(FixedString(N)) insert support
* ENABLE_OPTIMIZE_PREDICATE_EXPRESSION query param
* clearBatch implementation
* getMetadata implementation if query was not executed yet
* setQueryTimeout implementation
* RowBinaryInputStream to support nullability
* test plugins settings updated
0.1.49 skipped
0.1.48
* SELECT_SEQUENTIAL_CONSISTENCY param
* scrollable ResultSet
* metadata updates
* Decimal type
0.1.47
* connection cleaner in daemon mode
* insert-quorum params
0.1.46
* nullable in RowBinaryStream
* fix null in arrays
* database regex (asterisks and dashes allowed)
0.1.45
* added shaded version of the jar
* http authorization header
* setTime implementation
0.1.44
* add public methods to BalancedClickhouseDataSource
* TYPE_NAME without Nullable
* sendRowBinaryStream with additional parameters
* support constant NULL values in prepared statements
* fix parsing parameter at last position of statement
0.1.43
* fix determining statement type in presence of comments
* improved support for prepared statements, including batch inserts
* fix parameters copy
* support for writing UUIDs in binary stream
* removed joda-time dependency
migration node for users of ClickHouseRowBinaryStream:
manually calculate daysSinceEpoch and use method writeUInt16():
for joda-time: Days.daysBetween(LocalDate.parse("1970-01-01"), date).getDays()
for java 8: LocalDate.toEpochDay())
or use conversion to Date:
for joda-time: localDate.toDate()
for java 8: java.sql.Date.valueOf(LocalDate date)
0.1.42
* additional query params for executeBatch
* query preprocessing optimization
* UUID support
* isClosed
* isLast
* isNullable
* default connection config for pooling connection manager
0.1.41
* arbitrary query params
* checksum fix
0.1.40
* fix encoding
* insert array of nullables
* NaN support
* fix checksum calculation
0.1.39
* fix nullable metadata
* fix nested arrays insert
0.1.38
* decompress errors on inserts
* handle comments in bind variables parsing
0.1.37
* writeBytes for binary
* fix for read after last
* zero-valued dates are returned as nul
* column size metadata fixes
0.1.36
* allow send stream in native format
0.1.35
* with totals support
* nullable metadata fixes
* specialize on connection type in balanced data source
0.1.34
* support for select queries starting with "WITH ... SELECT"
* add executeQueryClickhouseResponse
* add session query parameters
0.1.33
* json parse optitimzation
* BalancedClickHouseDataSource url pattern fix
0.1.32
* fix getObject() for DOUBLE
0.1.31
* fix: parse errors compressed and uncompressed
0.1.30
* fix batch insert with 'values' column
0.1.29
* fix for empty long arrays
* use_objects_in_arrays option
* position of missing placeholder in error
* fix selectObject and types for nullable columns
0.1.28
* fix getUpdateCount
* handle null string values correctly
* inner tables in metadata
0.1.27
* setCatalog/getCatalog
* fix `ClickHousePreparedStatement.setObject(int, List<?>)` for Number
0.1.26
NOTE: starting from this release local application timezone is used by default for Date conversions.
Time, Timestamp are converted using server timezone as starting from release 0.1.18.
Set use_server_time_zone_for_dates = true to use server timezone for Date conversions as before.
* use local timezone for Date conversions
* more arrays support
* fix metadata request from system.columns
* pass correct properties to initTimeZone
0.1.25
* binary format fixes
* extremes fix
0.1.24
* max_query_size property
0.1.23
NOTE: default connection timeout had changed to conform with ClickHouse core and support IDEs in default settings.
The setting may be overridden by passing ClickHouseProperties or Properties on connection init.
* default connection timeout 50ms -> 10s
* fixed metadata on mixed-case identifiers
0.1.22
* preferred_block_size_bytes property
0.1.21
* getSchema/setSchema
* table types in database metadata
* BalancedDataSource
* ssl/tls support
* RowBinary format for inserts
0.1.20
* checksum validation when using compress/decompress
* max_memory_usage param
* set boolean params as 0/1
* fix getTableTypes
* extra trace logging
* null values support
0.1.19
* fix getColumns
0.1.18
NOTE: starting from this release server timezone is used by default.
This will work with server version >= 1.1.54159.
Set use_server_time_zone = false and use_time_zone to desired timezone name for using with earlier server versions.
* use server timezone
* is_generatedcolumn support
* fix error parsing
* escaping of non IOS-8859-1 characters
0.1.17
* fix passing additionalDBParams
* add query_id param
* add CH params to executeQuery in preparedStatement
* fix setting properties
* propagate parameters from jdbc url
0.1.16
* fix use Property class for configuration
* Add settings to ClickHouseQueryParam
0.1.15
* lz4 support
* External data support
* Disable extremes for ResultSet query methods
* Consistent charsets and rounding
* Fix for configuration options
0.1.14
* Testing with travis
* Unsigned types support
* Improvement on setMaxRows
* Configuration options for external sort and aggregation
0.1.13
* Lazy init on cleaner executor
* Auto-load meta-file
* Implemented getArray()
* Fix exception specifier
* JDBC compliance improvements
0.1.12
* Fix setArray
* Improve isValid
* Fix single column result set
0.1.11
* Fix exception specifier
* Fix SimpleDateFormat usage
0.1.10
* Support ipv6 jdbc url
* Return correct default value for COLUMN_DEF
* getColumnClassName
0.1.9
* Skip jdbc url to another DB
* Statement to ResultSet
* Correct return value for execute(sql)
* Arrays support
0.1.8
* Improved performance of batch operations
* Don't create cleaner executer for every connection
0.1.7
* Don't set implicit max_execution_time
* LogProxy only for trace
0.1.6
* Don't fail on fetchSize hint
0.1.5
* Nan and inf values support for double
* Fix ClickHouseException
* Database from properties priority over url
0.1.4
* Fix batch support
* Fix timestamp mapping
0.1.3
* Batch support
0.1.2
* BigDecimal support
* Assembly plugin
* Fix isSelect
0.1.1
* Initial release