Description
When using the Databricks JDBC Driver (OSS) in DataGrip to connect to an Azure Databricks SQL Warehouse via OAuth, double-clicking a table in the Database Explorer side panel fails to open the data viewer. DataGrip generates a localized SELECT query, but an underlying JDBC metadata or session state loop causes the driver to query a malformed, duplicated path (catalog.catalog) instead of parsing the correct schema path.
This behavior persists despite configuring ConnCatalog and forcing metadata introspection via standard JDBC channels.
Steps to Reproduce
- Configure a DataGrip connection using Databricks JDBC Driver 3.4.2.
- Connect to an Azure Databricks SQL Warehouse using OAuth (
AuthMech=11, Auth_Flow=0).
- Set connection parameters:
ConnCatalog=ocdao_dev__slv and empty/blank default database parameters.
- Successfully authenticate and expand the catalog tree down to a target table (e.g.,
ocdao_dev__slv.pracsys_ml.drivers_rtw_df_ver_4).
- Double-click the table to view its contents.
Expected Behavior
DataGrip should either run a fully qualified query:
SELECT * FROM ocdao_dev__slv.pracsys_ml.drivers_rtw_df_ver_4 LIMIT 501;
Or successfully set the active session catalog/schema boundaries without causing internal evaluation conflicts.
Actual Behavior
DataGrip changes the context tab to ocdao_dev__slv.pracsys_ml> but the underlying connection state crashes with a SCHEMA_NOT_FOUND error because it attempts to look up ocdao_dev__slv.ocdao_dev__slv.
Generated Query in Log:
ocdao_dev__slv.pracsys_ml> SELECT t.*
FROM pracsys_ml.drivers_rtw_df_ver_4 t
LIMIT 501
Returned Exception:
[42704][1003] Operation failed with error: [no error details from server] for statement [01f1b17e-5793-1eb2-a106-cd2d481a09a3], with response [TGetOperationStatusResp(status:TStatus(statusCode:SUCCESS_STATUS), operationState:ERROR_STATE, sqlState:42704, errorCode:0, errorMessage:org.apache.hive.service.cli.HiveSQLException: Error running query: [SCHEMA_NOT_FOUND] org.apache.spark.sql.catalyst.analysis.NoSuchDatabaseException: [SCHEMA_NOT_FOUND] The schema `ocdao_dev__slv.ocdao_dev__slv` cannot be found. Verify the spelling and correctness of the schema and catalog.
If you did not qualify the name with a catalog, verify the current_schema() output, or qualify the name with the correct catalog.
Note: Writing out the exact query manually with a 3-part identifier (select * from ocdao_dev__slv.pracsys_ml.table) in a separate console completely works.
Driver & Environment Info
- Driver Version: 3.4.2 (OSS)
- Deployment: Azure Databricks
- Compute: Databricks SQL Warehouse
- Client: JetBrains DataGrip
- Authentication: OAuth User-to-Machine / Machine-to-Machine
Description
When using the Databricks JDBC Driver (OSS) in DataGrip to connect to an Azure Databricks SQL Warehouse via OAuth, double-clicking a table in the Database Explorer side panel fails to open the data viewer. DataGrip generates a localized
SELECTquery, but an underlying JDBC metadata or session state loop causes the driver to query a malformed, duplicated path (catalog.catalog) instead of parsing the correct schema path.This behavior persists despite configuring
ConnCatalogand forcing metadata introspection via standard JDBC channels.Steps to Reproduce
AuthMech=11,Auth_Flow=0).ConnCatalog=ocdao_dev__slvand empty/blank default database parameters.ocdao_dev__slv.pracsys_ml.drivers_rtw_df_ver_4).Expected Behavior
DataGrip should either run a fully qualified query:
SELECT * FROM ocdao_dev__slv.pracsys_ml.drivers_rtw_df_ver_4 LIMIT 501;Or successfully set the active session catalog/schema boundaries without causing internal evaluation conflicts.
Actual Behavior
DataGrip changes the context tab to
ocdao_dev__slv.pracsys_ml>but the underlying connection state crashes with aSCHEMA_NOT_FOUNDerror because it attempts to look upocdao_dev__slv.ocdao_dev__slv.Generated Query in Log:
Returned Exception:
Note: Writing out the exact query manually with a 3-part identifier (
select * from ocdao_dev__slv.pracsys_ml.table) in a separate console completely works.Driver & Environment Info