Skip to content

1.16.0

Latest

Choose a tag to compare

@peco-release-bot peco-release-bot released this 15 Jun 13:29
1e892cf
  • New: optional kernel backend (useKernel: true). Adds an alternative connection path backed by the native @databricks/databricks-sql-kernel client (a Rust core exposed via napi-rs), shipped as prebuilt per-platform packages (linux x64/arm64 gnu+musl, macOS x64/arm64, Windows x64/arm64) pulled in automatically as optional dependencies. The kernel talks to Databricks over the SEA (Statement Execution API) HTTP transport — not Thrift — with CloudFetch and inline-Arrow result fetching, through the same DBSQLClient surface. Supports PAT and OAuth (M2M/U2M) auth. Requires Node >= 18; on older Node the binding is not loaded and useKernel: true raises a clear error directing you to the Thrift backend. The default backend remains Thrift — opt in per connection. (#378, #380, #409, #410, #411, #412, #416, #428, #434 by @msrathore-db)
  • Kernel backend behavior is aligned with Thrift so application code works the same either way: named/positional query parameters, metadata calls, TLS/mTLS with a custom CA, custom headers and user-agent, HTTP/SOCKS proxy and socket timeout, configurable retry/backoff, session query tags, async submit + cancel(), operation id/schema, and INTERVAL/type parity. Kernel logs surface through the same DBSQLLogger sink. (#417, #420, #421, #426, #430, #431 by @msrathore-db)
  • Make retry-policy knobs (max attempts, min/max backoff, overall timeout) configurable via connect() for both backends (#433 by @msrathore-db)
  • Retry transient network errors and fix a CloudFetch prefetch promise-rejection leak (#424 by @msrathore-db)
  • Telemetry: emit sql_operation, auth_type, and driver_connection_params (#396 by @samikshya-db)