Skip to content

Commit 1427095

Browse files
committed
param to use new metadata client
1 parent a19c42e commit 1427095

File tree

4 files changed

+17
-2
lines changed

4 files changed

+17
-2
lines changed

src/main/java/com/databricks/jdbc/core/DatabricksSession.java

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@
44
import com.databricks.jdbc.client.DatabricksClientType;
55
import com.databricks.jdbc.client.DatabricksMetadataClient;
66
import com.databricks.jdbc.client.impl.sdk.DatabricksMetadataSdkClient;
7+
import com.databricks.jdbc.client.impl.sdk.DatabricksNewMetadataSdkClient;
78
import com.databricks.jdbc.client.impl.sdk.DatabricksSdkClient;
89
import com.databricks.jdbc.client.impl.thrift.DatabricksThriftServiceClient;
910
import com.databricks.jdbc.core.types.CompressionType;
@@ -52,8 +53,12 @@ public DatabricksSession(IDatabricksConnectionContext connectionContext)
5253
this.databricksMetadataClient = null;
5354
} else {
5455
this.databricksClient = new DatabricksSdkClient(connectionContext);
55-
this.databricksMetadataClient =
56-
new DatabricksMetadataSdkClient((DatabricksSdkClient) databricksClient);
56+
if(connectionContext.getUseLegacyMetadata()) {
57+
this.databricksMetadataClient = new DatabricksMetadataSdkClient((DatabricksSdkClient) databricksClient);
58+
}
59+
else {
60+
this.databricksMetadataClient = new DatabricksNewMetadataSdkClient((DatabricksSdkClient) databricksClient);
61+
}
5762
}
5863
this.isSessionOpen = false;
5964
this.sessionInfo = null;

src/main/java/com/databricks/jdbc/driver/DatabricksConnectionContext.java

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -292,6 +292,12 @@ public DatabricksClientType getClientType() {
292292
return DatabricksClientType.SQL_EXEC;
293293
}
294294

295+
@Override
296+
public Boolean getUseLegacyMetadata() {
297+
return getParameter(DatabricksJdbcConstants.USE_LEGACY_METADATA) != null
298+
&& getParameter(DatabricksJdbcConstants.USE_LEGACY_METADATA).equals("1");
299+
}
300+
295301
private static boolean nullOrEmptyString(String s) {
296302
return s == null || s.isEmpty();
297303
}

src/main/java/com/databricks/jdbc/driver/DatabricksJdbcConstants.java

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -130,4 +130,6 @@ public enum FakeServiceType {
130130
}
131131

132132
public static final String USE_THRIFT_CLIENT = "usethriftclient";
133+
134+
public static final String USE_LEGACY_METADATA = "uselegacymetadata";
133135
}

src/main/java/com/databricks/jdbc/driver/IDatabricksConnectionContext.java

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -117,4 +117,6 @@ public static AuthMech parseAuthMech(String authMech) {
117117
int getAsyncExecPollInterval();
118118

119119
DatabricksClientType getClientType();
120+
121+
Boolean getUseLegacyMetadata();
120122
}

0 commit comments

Comments
 (0)