diff --git a/NEXT_CHANGELOG.md b/NEXT_CHANGELOG.md index c56180872..ea019e959 100644 --- a/NEXT_CHANGELOG.md +++ b/NEXT_CHANGELOG.md @@ -59,6 +59,7 @@ upgrading. These changes do not affect metadata on All-Purpose Clusters. protocol. To revert to native Thrift metadata RPCs, set `UseQueryForMetadata=0`. ### Updated +- Bump `databricks-sdk-java` from 0.69.0 to 0.106.0. The driver's own `AgentDetector` injection in `UserAgentManager.setUserAgent` is removed because SDK 0.106 now natively emits the `agent/` User-Agent token via its built-in `UserAgent.agentProvider()`; keeping both layered produced a duplicate token on every SDK-routed request. The bootstrap `buildUserAgentForConnectorService` path retains its own `AgentDetector` call because it bypasses `UserAgent.asString()`. - `getColumnTypeName()` for DECIMAL columns now preserves precision/scale suffix (e.g., `"DECIMAL(10,2)"`) consistently across both Thrift and SEA backends. - `EnableGeoSpatialSupport` no longer requires `EnableComplexDatatypeSupport=1`. Geospatial types (GEOMETRY, GEOGRAPHY) can now be enabled independently of complex type support (ARRAY, MAP, STRUCT). - Arrow schema deserialization failures (Thrift metadata path) now surface a dedicated driver error code `ARROW_SCHEMA_PARSING_ERROR` (vendor code `22000`) and a proper SQLSTATE `22000` (Data Exception) on the thrown `SQLException`, instead of the generic `RESULT_SET_ERROR` (1004) and the enum name as SQLSTATE. The exception message is unchanged. diff --git a/pom.xml b/pom.xml index 93f56bd4e..16334f4a4 100644 --- a/pom.xml +++ b/pom.xml @@ -69,7 +69,7 @@ 3.18.0 2.15.0 2.14.0 - 0.69.0 + 0.106.0 4.5.14 5.5.2 5.3.6 diff --git a/src/main/java/com/databricks/jdbc/common/util/UserAgentManager.java b/src/main/java/com/databricks/jdbc/common/util/UserAgentManager.java index 446e29df6..201bf6c66 100644 --- a/src/main/java/com/databricks/jdbc/common/util/UserAgentManager.java +++ b/src/main/java/com/databricks/jdbc/common/util/UserAgentManager.java @@ -63,9 +63,6 @@ public static void setUserAgent(IDatabricksConnectionContext connectionContext) } } } - - // Detect AI coding agent and append to user agent - AgentDetector.detect().ifPresent(product -> UserAgent.withOtherInfo(AGENT_KEY, product)); } /**