Skip to content

[BUG] Unity Catalog name duplicated in schema metadata calls under DataGrip #1687

Description

@crmorton

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

  1. Configure a DataGrip connection using Databricks JDBC Driver 3.4.2.
  2. Connect to an Azure Databricks SQL Warehouse using OAuth (AuthMech=11, Auth_Flow=0).
  3. Set connection parameters: ConnCatalog=ocdao_dev__slv and empty/blank default database parameters.
  4. Successfully authenticate and expand the catalog tree down to a target table (e.g., ocdao_dev__slv.pracsys_ml.drivers_rtw_df_ver_4).
  5. 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

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions