Releases: keboola/jdbc-driver
Release list
v2.3.0
What's Changed
- feat(jdbc): AJDA-2842 docs & packaging + URL query string support by @sykora-ji in #31
- feat(jdbc): AJDA-3061 tag queries with Snowflake QUERY_TAG for usage tracking by @MiroCillik in #39
New Contributors
- @MiroCillik made their first contribution in #39
Full Changelog: v2.2.4...v2.3.0
What's Changed
- feat(jdbc): AJDA-2842 docs & packaging + URL query string support by @sykora-ji in #31
- feat(jdbc): AJDA-3061 tag queries with Snowflake QUERY_TAG for usage tracking by @MiroCillik in #39
New Contributors
- @MiroCillik made their first contribution in #39
Full Changelog: v2.2.4...v2.3.0
v2.2.4
v2.2.2
What's Changed
- fix(ci): release only the freshly built jar/vsix, not dist/ by @sykora-ji in #30
Full Changelog: v2.2.1...v2.2.2
v2.2.1
What's Changed
- fix(vscode): compile before packaging the VSIX by @sykora-ji in #29
Full Changelog: v2.2.0...v2.2.1
v3.0.3-experimental
What's Changed
Backport fixes from v2.1.4 stable release:
- Fix DATE/TIME/TIMESTAMP display -- Converts Snowflake epoch representations to proper date/time values (#15)
- Fix result pagination -- Results no longer stop at 1000 rows
Download
- JDBC Driver:
keboola-jdbc-driver-3.0.3-experimental.jar(78 MB, includes DuckDB backend)
Acknowledgments
Thanks to @TomasRachunek and Ales Moravec for reporting!
v2.1.4
What's Changed
Bug Fixes
- Fix DATE/TIME/TIMESTAMP display -- Query Service
/resultsendpoint returns Snowflake internal epoch representations (days since 1970 for DATE, seconds.nanoseconds for TIMESTAMP, seconds since midnight for TIME). Both JDBC driver and VSCode extension now convert these to proper human-readable values. (#15) - Fix result pagination -- The Query Service API does not return a
hasMorePagesflag, causing the JDBC driver to stop after the first 1000 rows. Now uses page-size heuristic to fetch all result pages.
Downloads
- JDBC Driver:
keboola-jdbc-driver-2.1.4.jar - VSCode Extension:
sqltools-keboola-driver-2.1.4.vsix
Both attached below.
Acknowledgments
Thanks to @TomasRachunek for reporting the date conversion issue (#15) and to Ales Moravec for additional feedback!
v2.1.3 - VSCode SQLTools Extension
What's New
This release adds the VSCode SQLTools Extension alongside the existing JDBC driver. Both projects now share the same version number.
VSCode SQLTools Extension (NEW)
- Connect to any Keboola stack (AWS US/EU, GCP US/EU, Azure EU, custom/single-tenant)
- QuickPick selection for branch and workspace on first connect (auto-saved to settings)
- Browse buckets, tables, and columns in the sidebar explorer
- Execute SQL queries with async polling and pagination (up to 10,000 rows)
- Virtual
_keboola.*tables: components, events, jobs, tables, buckets KEBOOLA HELP,SHOW HISTORY,USE SCHEMA/DATABASEcommands- Query cancellation from Command Palette
- Schema cache with 60s TTL and stale-on-error fallback
- Autocomplete for SQL keywords, Keboola commands, and virtual tables
- 147 unit tests + 9 integration tests
Install:
code --install-extension sqltools-keboola-driver-2.1.3.vsixRequires SQLTools extension.
JDBC Driver
- Version bump to 2.1.3 (no functional changes from 2.1.2)
Downloads
- JDBC Driver:
keboola-jdbc-driver-2.1.3.jar - VSCode Extension:
sqltools-keboola-driver-2.1.3.vsix
Acknowledgements
VSCode SQLTools extension inspired by @Vfisa's keboola-sqltools-adapter.
v2.1.2
Filter SNOWFLAKE_SAMPLE_DATA from sidebar
Added SNOWFLAKE_SAMPLE_DATA to the list of hidden Snowflake system databases. This demo database is not part of the Keboola project and was cluttering the database navigator in DBeaver/DataGrip.
Now filtered alongside SNOWFLAKE and SNOWFLAKE_LEARNING_DB.
Download
Attach the JAR below to your DBeaver/DataGrip driver configuration.
v2.1.1
What's Changed
Server-side schema/catalog tracking via backendContext
Replaced client-side USE SCHEMA/DATABASE regex parsing (interceptUseCommand) with server-reported backendContext from Query Service result responses. The driver now reads backendContext.catalog and backendContext.schema after each query execution to keep local state in sync with Snowflake.
Falls back to parsing USE commands from SQL when backendContext is not available in the response.
This eliminates the recursion bug root cause (fixed as workaround in 2.1.0) and is more accurate — catches implicit schema changes too (e.g. CREATE SCHEMA automatically switching context).
Initial schema sent as standalone job
When schema connection property is set, a USE SCHEMA command is now sent as a standalone job during connection init, instead of being prepended to the first user query.
Credits
- @davidesner — backendContext integration (PR #5)
Install
Download keboola-jdbc-driver-2.1.1.jar (9.5 MB) and add it as a JDBC driver in DBeaver/DataGrip.
v2.1.0 — Fix setSchema StackOverflow
What's new
Bug fix
Fix StackOverflowError when calling setSchema() or executing USE SCHEMA — the driver entered infinite recursion:
setSchema("in.c-main")
→ execute("USE SCHEMA \"in.c-main\"")
→ interceptUseCommand() detects USE SCHEMA
→ setSchema("in.c-main")
→ execute("USE SCHEMA ...") → ... StackOverflow
Fixed by introducing updateLocalSchema() which only updates the local field without executing SQL. interceptUseCommand() now uses this method.