Skip to content

Commit 6e1c164

Browse files
msrathore-dbclaude
andauthored
Release v3.0.6 (databricks#1133)
## Description Release v3.0.6 ## Changes This release includes: ### Added - Added the EnableTokenFederation url param to enable or disable Token federation feature. By default it is set to 1 - Added the ApiRetriableHttpCodes, ApiRetryTimeout url params to enable retries for specific HTTP codes irrespective of Retry-After header. By default the HTTP codes list is empty. ### Updated - Added validation for positive integer configuration properties (RowsFetchedPerBlock, BatchInsertSize, etc.) to prevent hangs and errors when set to zero or negative values. - Updated Circuit breaker to be triggered by 429 errors too. - Refactored chunk download to keep a sliding window of chunk links. The window advances as the main thread consumes chunks. These changes can be enabled using the connection property EnableStreamingChunkProvider=1. The changes are expected to make chunk download faster and robust. - Added separate circuit breaker to handle 429 from SEA connection creation calls, and fall back to Thrift. ### Fixed - Fix driver crash when using `INTERVAL` types. - Fix connection failure in restricted environments when `LogLevel.OFF` is used. - Fix U2M by including SDK OAuth HTML callback resources. - Fix microsecond precision loss in `PreparedStatement.setTimestamp(int,Timestamp, Calendar)` and address thread-safety issues with global timezone modification. - Fix metadata methods (`getColumns`, `getFunctions`, `getPrimaryKeys`, `getImportedKeys`) to return empty ResultSets instead of throwing exceptions when catalog parameter is NULL, for SEA. ## Testing Version bump and release notes have been updated across all relevant files. OVERRIDE_FREEZE=true SKIP_COVERAGE_CHECK=Flaky test for SEA circuit breaker 🤖 Generated with [Claude Code](https://claude.com/claude-code) --------- Co-authored-by: Claude <noreply@anthropic.com>
1 parent e64310b commit 6e1c164

File tree

14 files changed

+56
-27
lines changed

14 files changed

+56
-27
lines changed

.github/ISSUE_TEMPLATE/bug_report.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@ If available, share redacted client side logs
2626
- OS: [e.g. Windows]
2727
- Java version [e.g. Java 21]
2828
- Java vendor [e.g. OpenJDK]
29-
- Driver Version [e.g. 3.0.5]
29+
- Driver Version [e.g. 3.0.6]
3030
- BI Tool (if used) [e.g. DBeaver]
3131
- BI Tool version (if applicable) [e.g. 24.3.5]
3232

CHANGELOG.md

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,25 @@
11
# Version Changelog
2+
## [v3.0.6] - 2025-12-11
3+
4+
### Added
5+
- Added the EnableTokenFederation url param to enable or disable Token federation feature. By default it is set to 1
6+
- Added the ApiRetriableHttpCodes, ApiRetryTimeout url params to enable retries for specific HTTP codes irrespective of Retry-After header. By default the HTTP codes list is empty.
7+
8+
### Updated
9+
- Added validation for positive integer configuration properties (RowsFetchedPerBlock, BatchInsertSize, etc.) to prevent hangs and errors when set to zero or negative values.
10+
- Updated Circuit breaker to be triggered by 429 errors too.
11+
- Refactored chunk download to keep a sliding window of chunk links. The window advances as the main thread consumes chunks. These changes can be enabled using the connection property EnableStreamingChunkProvider=1. The changes are expected to make chunk download faster and robust.
12+
- Added separate circuit breaker to handle 429 from SQL Exec API connection creation calls, and fall back to Thrift.
13+
14+
### Fixed
15+
- Fix driver crash when using `INTERVAL` types.
16+
- Fix connection failure in restricted environments when `LogLevel.OFF` is used.
17+
- Fix U2M by including SDK OAuth HTML callback resources.
18+
- Fix microsecond precision loss in `PreparedStatement.setTimestamp(int,Timestamp, Calendar)` and address thread-safety issues with global timezone modification.
19+
- Fix metadata methods (`getColumns`, `getFunctions`, `getPrimaryKeys`, `getImportedKeys`) to return empty ResultSets instead of throwing exceptions when catalog parameter is NULL, for SQL Exec API.
20+
21+
---
22+
223
## [v3.0.5] - 2025-11-20
324

425
### Added

NEXT_CHANGELOG.md

Lines changed: 0 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -3,22 +3,10 @@
33
## [Unreleased]
44

55
### Added
6-
- Added the EnableTokenFederation url param to enable or disable Token federation feature. By default it is set to 1
7-
- Added the ApiRetriableHttpCodes, ApiRetryTimeout url params to enable retries for specific HTTP codes irrespective of Retry-After header. By default the HTTP codes list is empty.
86

97
### Updated
10-
- Added validation for positive integer configuration properties (RowsFetchedPerBlock, BatchInsertSize, etc.) to prevent hangs and errors when set to zero or negative values.
11-
- Updated Circuit breaker to be triggered by 429 errors too.
12-
- Refactored chunk download to keep a sliding window of chunk links. The window advances as the main thread consumes chunks. These changes can be enabled using the connection property EnableStreamingChunkProvider=1. The changes are expected to make chunk download faster and robust.
13-
- Added separate circuit breaker to handle 429 from SEA connection creation calls, and fall back to Thrift.
148

159
### Fixed
1610

17-
- Fix driver crash when using `INTERVAL` types.
18-
- Fix connection failure in restricted environments when `LogLevel.OFF` is used.
19-
- Fix U2M by including SDK OAuth HTML callback resources.
20-
- Fix microsecond precision loss in `PreparedStatement.setTimestamp(int,Timestamp, Calendar)` and address thread-safety issues with global timezone modification.
21-
- Fix metadata methods (`getColumns`, `getFunctions`, `getPrimaryKeys`, `getImportedKeys`) to return empty ResultSets instead of throwing exceptions when catalog parameter is NULL, for SEA.
22-
2311
---
2412
*Note: When making changes, please add your change under the appropriate section with a brief description.*

README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@ Add the following dependency to your `pom.xml`:
2020
<dependency>
2121
<groupId>com.databricks</groupId>
2222
<artifactId>databricks-jdbc</artifactId>
23-
<version>3.0.5</version>
23+
<version>3.0.6</version>
2424
</dependency>
2525
```
2626

development/.release-freeze.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
11
{
2-
"freeze": false,
3-
"reason": ""
2+
"freeze": true,
3+
"reason": "Release freeze for v3.0.6"
44
}

pom.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55
<groupId>com.databricks</groupId>
66
<artifactId>databricks-jdbc</artifactId>
77
<!-- This value may be modified by a release script to reflect the current version of the driver. -->
8-
<version>3.0.5</version>
8+
<version>3.0.6</version>
99
<packaging>jar</packaging>
1010
<name>Databricks JDBC Driver</name>
1111
<description>Databricks JDBC Driver.</description>

release-notes.txt

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,26 @@ The release notes summarize enhancements, new features, known issues, workflow c
66

77
Version History ==============================================================
88

9+
3.0.6 ========================================================================
10+
Released 2025-12-11
11+
12+
Enhancements & New Features
13+
14+
* Added the EnableTokenFederation url param to enable or disable Token federation feature. By default it is set to 1
15+
* Added the ApiRetriableHttpCodes, ApiRetryTimeout url params to enable retries for specific HTTP codes irrespective of Retry-After header. By default the HTTP codes list is empty.
16+
* Added validation for positive integer configuration properties (RowsFetchedPerBlock, BatchInsertSize, etc.) to prevent hangs and errors when set to zero or negative values.
17+
* Updated Circuit breaker to be triggered by 429 errors too.
18+
* Refactored chunk download to keep a sliding window of chunk links. The window advances as the main thread consumes chunks. These changes can be enabled using the connection property EnableStreamingChunkProvider=1. The changes are expected to make chunk download faster and robust.
19+
* Added separate circuit breaker to handle 429 from SEA connection creation calls, and fall back to Thrift.
20+
21+
Resolved Issues
22+
23+
* Fix driver crash when using `INTERVAL` types.
24+
* Fix connection failure in restricted environments when `LogLevel.OFF` is used.
25+
* Fix U2M by including SDK OAuth HTML callback resources.
26+
* Fix microsecond precision loss in `PreparedStatement.setTimestamp(int,Timestamp, Calendar)` and address thread-safety issues with global timezone modification.
27+
* Fix metadata methods (`getColumns`, `getFunctions`, `getPrimaryKeys`, `getImportedKeys`) to return empty ResultSets instead of throwing exceptions when catalog parameter is NULL, for SEA.
28+
929
3.0.5 ========================================================================
1030
Released 2025-11-20
1131

src/main/java/com/databricks/jdbc/common/util/DriverUtil.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@
2020
public class DriverUtil {
2121

2222
private static final JdbcLogger LOGGER = JdbcLoggerFactory.getLogger(DriverUtil.class);
23-
private static final String DRIVER_VERSION = "3.0.5";
23+
private static final String DRIVER_VERSION = "3.0.6";
2424
private static final String DRIVER_NAME = "oss-jdbc";
2525
private static final String JDBC_VERSION = "4.3";
2626

src/test/java/com/databricks/jdbc/api/impl/DatabricksDatabaseMetaDataTest.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -813,7 +813,7 @@ public void testGetDriverName() throws SQLException {
813813
@Test
814814
public void testGetDriverVersion() throws SQLException {
815815
String result = metaData.getDriverVersion();
816-
assertEquals("3.0.5", result);
816+
assertEquals("3.0.6", result);
817817
}
818818

819819
@Test

src/test/java/com/databricks/jdbc/common/safe/DatabricksDriverFeatureFlagsContextTest.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -37,7 +37,7 @@ class DatabricksDriverFeatureFlagsContextTest {
3737
@Mock private ObjectMapper objectMapperMock;
3838
private static final String FEATURE_FLAG_NAME = "featureFlagName";
3939
private static final String FEATURE_FLAGS_ENDPOINT =
40-
"https://test-host/api/2.0/connector-service/feature-flags/OSS_JDBC/3.0.5";
40+
"https://test-host/api/2.0/connector-service/feature-flags/OSS_JDBC/3.0.6";
4141

4242
private DatabricksDriverFeatureFlagsContext context;
4343

0 commit comments

Comments
 (0)