-
Notifications
You must be signed in to change notification settings - Fork 1.9k
Closed
Labels
Description
Describe the bug
Starting from the version 1.2.28 it seems that Cube Cloud stopped working with Databricks. At least in our setup.
It works fine with 1.2.27.
We've got this error when trying to run something in the Playground (I replaced actual token with <databricks_token>):
Error running static method java.lang.IllegalArgumentException: Multiple entries with same key: pwd=<databricks_token> and pwd=<databricks_token> at com.databricks.internal.google.common.collect.ImmutableMap.conflictException(ImmutableMap.java:382) at com.databricks.internal.google.common.collect.ImmutableMap.checkNoConflict(ImmutableMap.java:376) at com.databricks.internal.google.common.collect.RegularImmutableMap.checkNoConflictInKeyBucket(RegularImmutableMap.java:246) at com.databricks.internal.google.common.collect.RegularImmutableMap.fromEntryArrayCheckingBucketOverflow(RegularImmutableMap.java:133) at com.databricks.internal.google.common.collect.RegularImmutableMap.fromEntryArray(RegularImmutableMap.java:95) at com.databricks.internal.google.common.collect.ImmutableMap$Builder.build(ImmutableMap.java:576) at com.databricks.internal.google.common.collect.ImmutableMap$Builder.buildOrThrow(ImmutableMap.java:604) at com.databricks.internal.google.common.collect.ImmutableMap$Builder.build(ImmutableMap.java:591) at com.databricks.jdbc.api.impl.DatabricksConnectionContext.buildPropertiesMap(DatabricksConnectionContext.java:88) at com.databricks.jdbc.api.impl.DatabricksConnectionContext.parse(DatabricksConnectionContext.java:130) at com.databricks.jdbc.api.impl.DatabricksConnectionContextFactory.create(DatabricksConnectionContextFactory.java:20) at com.databricks.client.jdbc.Driver.connect(Driver.java:59) at java.sql/java.sql.DriverManager.getConnection(DriverManager.java:681) at java.sql/java.sql.DriverManager.getConnection(DriverManager.java:190) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.base/java.lang.reflect.Method.invoke(Method.java:569) at node.MethodCallBaton.invokeMethod9(MethodCallBaton.java:25)
The PWD in URL is deprecated, so when we remove it from the CUBEJS_DB_DATABRICKS_URL environment variable we've got similar error, but with uid key duplication problem:
Error running static method java.lang.IllegalArgumentException: Multiple entries with same key: uid=token and uid=token at
...
Removing further uid from the CUBEJS_DB_DATABRICKS_URL leads to this error:
Error running static method com.databricks.jdbc.exception.DatabricksSQLException: Error initializing the Java Util Logger (JUL) with error:
...
Version:
1.2.28
Additional context
Databricks-related envrionment variables we use:
CUBEJS_DB_TYPE=databricks-jdbc
CUBEJS_DB_DATABRICKS_URL
CUBEJS_DB_DATABRICKS_TOKEN