@cubejs-backend/databricks-jdbc-driver 1.2.34 → 1.3.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -3,7 +3,7 @@
3
3
  * @license Apache-2.0
4
4
  * @fileoverview The `DatabricksDriver` and related types declaration.
5
5
  */
6
- import { DriverCapabilities, QueryColumnsResult, QueryOptions, QuerySchemasResult, QueryTablesResult, UnloadOptions, GenericDataBaseType, TableColumn, DatabaseStructure } from '@cubejs-backend/base-driver';
6
+ import { DatabaseStructure, DriverCapabilities, GenericDataBaseType, QueryColumnsResult, QueryOptions, QuerySchemasResult, QueryTablesResult, TableColumn, UnloadOptions } from '@cubejs-backend/base-driver';
7
7
  import { JDBCDriver, JDBCDriverConfiguration } from '@cubejs-backend/jdbc-driver';
8
8
  import { DatabricksQuery } from './DatabricksQuery';
9
9
  export type DatabricksDriverConfiguration = JDBCDriverConfiguration & {
@@ -68,6 +68,10 @@ export type DatabricksDriverConfiguration = JDBCDriverConfiguration & {
68
68
  * Azure service principal client secret
69
69
  */
70
70
  azureClientSecret?: string;
71
+ /**
72
+ * GCS credentials JSON content
73
+ */
74
+ gcsCredentials?: string;
71
75
  };
72
76
  type ColumnInfo = {
73
77
  name: any;
@@ -80,7 +84,7 @@ export declare class DatabricksDriver extends JDBCDriver {
80
84
  /**
81
85
  * Show warning message flag.
82
86
  */
83
- private showSparkProtocolWarn;
87
+ private readonly showSparkProtocolWarn;
84
88
  /**
85
89
  * Driver Configuration.
86
90
  */
@@ -215,16 +219,22 @@ export declare class DatabricksDriver extends JDBCDriver {
215
219
  *
216
220
  * For Azure blob storage you need to configure account access key in
217
221
  * Cluster -> Configuration -> Advanced options
218
- * (https://docs.databricks.com/data/data-sources/azure/azure-storage.html#access-azure-blob-storage-directly)
222
+ * https://docs.databricks.com/data/data-sources/azure/azure-storage.html#access-azure-blob-storage-directly
219
223
  *
220
224
  * `fs.azure.account.key.<storage-account-name>.blob.core.windows.net <storage-account-access-key>`
221
225
  *
222
226
  * For S3 bucket storage you need to configure AWS access key and secret in
223
227
  * Cluster -> Configuration -> Advanced options
224
- * (https://docs.databricks.com/data/data-sources/aws/amazon-s3.html#access-s3-buckets-directly)
228
+ * https://docs.databricks.com/data/data-sources/aws/amazon-s3.html#access-s3-buckets-directly
225
229
  *
226
230
  * `fs.s3a.access.key <aws-access-key>`
227
231
  * `fs.s3a.secret.key <aws-secret-key>`
232
+ *
233
+ * For Google cloud storage you can configure storage credentials and create an external location to access it
234
+ * or configure account service key (legacy)
235
+ * https://docs.databricks.com/gcp/en/connect/unity-catalog/cloud-storage/storage-credentials
236
+ * https://docs.databricks.com/gcp/en/connect/unity-catalog/cloud-storage/external-locations
237
+ * https://docs.databricks.com/aws/en/connect/storage/gcs
228
238
  */
229
239
  private createExternalTableFromSql;
230
240
  /**
@@ -233,16 +243,22 @@ export declare class DatabricksDriver extends JDBCDriver {
233
243
  *
234
244
  * For Azure blob storage you need to configure account access key in
235
245
  * Cluster -> Configuration -> Advanced options
236
- * (https://docs.databricks.com/data/data-sources/azure/azure-storage.html#access-azure-blob-storage-directly)
246
+ * https://docs.databricks.com/data/data-sources/azure/azure-storage.html#access-azure-blob-storage-directly
237
247
  *
238
248
  * `fs.azure.account.key.<storage-account-name>.blob.core.windows.net <storage-account-access-key>`
239
249
  *
240
250
  * For S3 bucket storage you need to configure AWS access key and secret in
241
251
  * Cluster -> Configuration -> Advanced options
242
- * (https://docs.databricks.com/data/data-sources/aws/amazon-s3.html#access-s3-buckets-directly)
252
+ * https://docs.databricks.com/data/data-sources/aws/amazon-s3.html#access-s3-buckets-directly
243
253
  *
244
254
  * `fs.s3a.access.key <aws-access-key>`
245
255
  * `fs.s3a.secret.key <aws-secret-key>`
256
+ *
257
+ * For Google cloud storage you can configure storage credentials and create an external location to access it
258
+ * or configure account service key (legacy)
259
+ * https://docs.databricks.com/gcp/en/connect/unity-catalog/cloud-storage/storage-credentials
260
+ * https://docs.databricks.com/gcp/en/connect/unity-catalog/cloud-storage/external-locations
261
+ * https://docs.databricks.com/aws/en/connect/storage/gcs
246
262
  */
247
263
  private createExternalTableFromTable;
248
264
  }
@@ -1 +1 @@
1
- {"version":3,"file":"DatabricksDriver.d.ts","sourceRoot":"","sources":["../../src/DatabricksDriver.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"DatabricksDriver.d.ts","sourceRoot":"","sources":["../../src/DatabricksDriver.ts"],"names":[],"mappings":"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"}
@@ -10,6 +10,7 @@ const shared_1 = require("@cubejs-backend/shared");
10
10
  const jdbc_driver_1 = require("@cubejs-backend/jdbc-driver");
11
11
  const DatabricksQuery_1 = require("./DatabricksQuery");
12
12
  const helpers_1 = require("./helpers");
13
+ const SUPPORTED_BUCKET_TYPES = ['s3', 'gcs', 'azure'];
13
14
  const DatabricksToGenericType = {
14
15
  binary: 'hll_datasketches',
15
16
  'decimal(10,0)': 'bigint',
@@ -49,19 +50,18 @@ class DatabricksDriver extends jdbc_driver_1.JDBCDriver {
49
50
  showSparkProtocolWarn = true;
50
51
  url = url.replace('jdbc:spark://', 'jdbc:databricks://');
51
52
  }
53
+ const [uid, pwd, cleanedUrl] = (0, helpers_1.extractAndRemoveUidPwdFromJdbcUrl)(url);
52
54
  const config = {
53
55
  ...conf,
54
- url,
56
+ url: cleanedUrl,
55
57
  dbType: 'databricks',
56
58
  drivername: 'com.databricks.client.jdbc.Driver',
57
59
  customClassPath: undefined,
58
60
  properties: {
59
- UID: (0, helpers_1.extractUidFromJdbcUrl)(url),
60
- // PWD-parameter passed to the connection string has higher priority,
61
- // so we can set this one to an empty string to avoid a Java error.
61
+ UID: uid,
62
62
  PWD: conf?.token ||
63
63
  (0, shared_1.getEnv)('databrickToken', { dataSource }) ||
64
- '',
64
+ pwd,
65
65
  UserAgentEntry: 'CubeDev_Cube',
66
66
  },
67
67
  catalog: conf?.catalog ||
@@ -69,7 +69,7 @@ class DatabricksDriver extends jdbc_driver_1.JDBCDriver {
69
69
  database: (0, shared_1.getEnv)('dbName', { required: false, dataSource }),
70
70
  // common export bucket config
71
71
  bucketType: conf?.bucketType ||
72
- (0, shared_1.getEnv)('dbExportBucketType', { supported: ['s3', 'azure'], dataSource }),
72
+ (0, shared_1.getEnv)('dbExportBucketType', { supported: SUPPORTED_BUCKET_TYPES, dataSource }),
73
73
  exportBucket: conf?.exportBucket ||
74
74
  (0, shared_1.getEnv)('dbExportBucket', { dataSource }),
75
75
  exportBucketMountDir: conf?.exportBucketMountDir ||
@@ -94,6 +94,9 @@ class DatabricksDriver extends jdbc_driver_1.JDBCDriver {
94
94
  (0, shared_1.getEnv)('dbExportBucketAzureClientId', { dataSource }),
95
95
  azureClientSecret: conf?.azureClientSecret ||
96
96
  (0, shared_1.getEnv)('dbExportBucketAzureClientSecret', { dataSource }),
97
+ // GCS credentials
98
+ gcsCredentials: conf?.gcsCredentials ||
99
+ (0, shared_1.getEnv)('dbExportGCSCredentials', { dataSource }),
97
100
  };
98
101
  if (config.readOnly === undefined) {
99
102
  // we can set readonly to true if there is no bucket config provided
@@ -223,8 +226,7 @@ class DatabricksDriver extends jdbc_driver_1.JDBCDriver {
223
226
  if (!(database in metadata)) {
224
227
  metadata[database] = {};
225
228
  }
226
- const columns = await this.tableColumnTypes(`${database}.${tableName}`);
227
- metadata[database][tableName] = columns;
229
+ metadata[database][tableName] = await this.tableColumnTypes(`${database}.${tableName}`);
228
230
  }));
229
231
  return metadata;
230
232
  }
@@ -283,7 +285,7 @@ class DatabricksDriver extends jdbc_driver_1.JDBCDriver {
283
285
  * Returns table columns types.
284
286
  */
285
287
  async tableColumnTypes(table) {
286
- let tableFullName = '';
288
+ let tableFullName;
287
289
  const tableArray = table.split('.');
288
290
  if (tableArray.length === 3) {
289
291
  tableFullName = `${this.quoteIdentifier(tableArray[0])}.${this.quoteIdentifier(tableArray[1])}.${this.quoteIdentifier(tableArray[2])}`;
@@ -362,7 +364,7 @@ class DatabricksDriver extends jdbc_driver_1.JDBCDriver {
362
364
  * export bucket data.
363
365
  */
364
366
  async unload(tableName, options) {
365
- if (!['azure', 's3'].includes(this.config.bucketType)) {
367
+ if (!SUPPORTED_BUCKET_TYPES.includes(this.config.bucketType)) {
366
368
  throw new Error(`Unsupported export bucket type: ${this.config.bucketType}`);
367
369
  }
368
370
  const tableFullName = `${this.config.catalog
@@ -424,6 +426,9 @@ class DatabricksDriver extends jdbc_driver_1.JDBCDriver {
424
426
  region: this.config.awsRegion || '',
425
427
  }, url.host, objectSearchPrefix);
426
428
  }
429
+ else if (this.config.bucketType === 'gcs') {
430
+ return this.extractFilesFromGCS({ credentials: this.config.gcsCredentials }, url.host, objectSearchPrefix);
431
+ }
427
432
  else {
428
433
  throw new Error(`Unsupported export bucket type: ${this.config.bucketType}`);
429
434
  }
@@ -446,16 +451,22 @@ class DatabricksDriver extends jdbc_driver_1.JDBCDriver {
446
451
  *
447
452
  * For Azure blob storage you need to configure account access key in
448
453
  * Cluster -> Configuration -> Advanced options
449
- * (https://docs.databricks.com/data/data-sources/azure/azure-storage.html#access-azure-blob-storage-directly)
454
+ * https://docs.databricks.com/data/data-sources/azure/azure-storage.html#access-azure-blob-storage-directly
450
455
  *
451
456
  * `fs.azure.account.key.<storage-account-name>.blob.core.windows.net <storage-account-access-key>`
452
457
  *
453
458
  * For S3 bucket storage you need to configure AWS access key and secret in
454
459
  * Cluster -> Configuration -> Advanced options
455
- * (https://docs.databricks.com/data/data-sources/aws/amazon-s3.html#access-s3-buckets-directly)
460
+ * https://docs.databricks.com/data/data-sources/aws/amazon-s3.html#access-s3-buckets-directly
456
461
  *
457
462
  * `fs.s3a.access.key <aws-access-key>`
458
463
  * `fs.s3a.secret.key <aws-secret-key>`
464
+ *
465
+ * For Google cloud storage you can configure storage credentials and create an external location to access it
466
+ * or configure account service key (legacy)
467
+ * https://docs.databricks.com/gcp/en/connect/unity-catalog/cloud-storage/storage-credentials
468
+ * https://docs.databricks.com/gcp/en/connect/unity-catalog/cloud-storage/external-locations
469
+ * https://docs.databricks.com/aws/en/connect/storage/gcs
459
470
  */
460
471
  async createExternalTableFromSql(tableFullName, sql, params, columns) {
461
472
  let select = sql;
@@ -464,14 +475,14 @@ class DatabricksDriver extends jdbc_driver_1.JDBCDriver {
464
475
  }
465
476
  try {
466
477
  await this.query(`
467
- CREATE TABLE ${tableFullName}
468
- USING CSV LOCATION '${this.config.exportBucketMountDir || this.config.exportBucket}/${tableFullName}.csv'
478
+ CREATE TABLE ${tableFullName}_tmp
479
+ USING CSV LOCATION '${this.config.exportBucketMountDir || this.config.exportBucket}/${tableFullName}'
469
480
  OPTIONS (escape = '"')
470
481
  AS (${select});
471
482
  `, params);
472
483
  }
473
484
  finally {
474
- await this.query(`DROP TABLE IF EXISTS ${tableFullName};`, []);
485
+ await this.query(`DROP TABLE IF EXISTS ${tableFullName}_tmp;`, []);
475
486
  }
476
487
  }
477
488
  /**
@@ -480,28 +491,34 @@ class DatabricksDriver extends jdbc_driver_1.JDBCDriver {
480
491
  *
481
492
  * For Azure blob storage you need to configure account access key in
482
493
  * Cluster -> Configuration -> Advanced options
483
- * (https://docs.databricks.com/data/data-sources/azure/azure-storage.html#access-azure-blob-storage-directly)
494
+ * https://docs.databricks.com/data/data-sources/azure/azure-storage.html#access-azure-blob-storage-directly
484
495
  *
485
496
  * `fs.azure.account.key.<storage-account-name>.blob.core.windows.net <storage-account-access-key>`
486
497
  *
487
498
  * For S3 bucket storage you need to configure AWS access key and secret in
488
499
  * Cluster -> Configuration -> Advanced options
489
- * (https://docs.databricks.com/data/data-sources/aws/amazon-s3.html#access-s3-buckets-directly)
500
+ * https://docs.databricks.com/data/data-sources/aws/amazon-s3.html#access-s3-buckets-directly
490
501
  *
491
502
  * `fs.s3a.access.key <aws-access-key>`
492
503
  * `fs.s3a.secret.key <aws-secret-key>`
504
+ *
505
+ * For Google cloud storage you can configure storage credentials and create an external location to access it
506
+ * or configure account service key (legacy)
507
+ * https://docs.databricks.com/gcp/en/connect/unity-catalog/cloud-storage/storage-credentials
508
+ * https://docs.databricks.com/gcp/en/connect/unity-catalog/cloud-storage/external-locations
509
+ * https://docs.databricks.com/aws/en/connect/storage/gcs
493
510
  */
494
511
  async createExternalTableFromTable(tableFullName, columns) {
495
512
  try {
496
513
  await this.query(`
497
- CREATE TABLE _${tableFullName}
498
- USING CSV LOCATION '${this.config.exportBucketMountDir || this.config.exportBucket}/${tableFullName}.csv'
514
+ CREATE TABLE ${tableFullName}_tmp
515
+ USING CSV LOCATION '${this.config.exportBucketMountDir || this.config.exportBucket}/${tableFullName}'
499
516
  OPTIONS (escape = '"')
500
517
  AS SELECT ${this.generateTableColumnsForExport(columns)} FROM ${tableFullName}
501
518
  `, []);
502
519
  }
503
520
  finally {
504
- await this.query(`DROP TABLE IF EXISTS _${tableFullName};`, []);
521
+ await this.query(`DROP TABLE IF EXISTS ${tableFullName}_tmp;`, []);
505
522
  }
506
523
  }
507
524
  }
@@ -1 +1 @@
1
- {"version":3,"file":"DatabricksDriver.js","sourceRoot":"","sources":["../../src/DatabricksDriver.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"DatabricksDriver.js","sourceRoot":"","sources":["../../src/DatabricksDriver.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,9 @@
1
1
  export declare function resolveJDBCDriver(): Promise<string>;
2
- export declare function extractUidFromJdbcUrl(jdbcUrl: string): string;
2
+ /**
3
+ * Extract if exist UID and PWD from URL and return UID, PWD and URL without these params.
4
+ * New Databricks OSS driver throws an error if UID and PWD are provided in the URL and as a separate params
5
+ * passed to the driver instance. That's why we strip them out from the URL if they exist there.
6
+ * @param jdbcUrl
7
+ */
8
+ export declare function extractAndRemoveUidPwdFromJdbcUrl(jdbcUrl: string): [uid: string, pwd: string, cleanedUrl: string];
3
9
  //# sourceMappingURL=helpers.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"helpers.d.ts","sourceRoot":"","sources":["../../src/helpers.ts"],"names":[],"mappings":"AAeA,wBAAsB,iBAAiB,IAAI,OAAO,CAAC,MAAM,CAAC,CAiBzD;AAED,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAK7D"}
1
+ {"version":3,"file":"helpers.d.ts","sourceRoot":"","sources":["../../src/helpers.ts"],"names":[],"mappings":"AAeA,wBAAsB,iBAAiB,IAAI,OAAO,CAAC,MAAM,CAAC,CAiBzD;AAED;;;;;GAKG;AACH,wBAAgB,iCAAiC,CAAC,OAAO,EAAE,MAAM,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,CAAC,CAYjH"}
@@ -3,7 +3,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
3
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.extractUidFromJdbcUrl = exports.resolveJDBCDriver = void 0;
6
+ exports.extractAndRemoveUidPwdFromJdbcUrl = exports.resolveJDBCDriver = void 0;
7
7
  const fs_1 = __importDefault(require("fs"));
8
8
  const path_1 = __importDefault(require("path"));
9
9
  const installer_1 = require("./installer");
@@ -14,21 +14,31 @@ async function fileExistsOr(fsPath, fn) {
14
14
  return fn();
15
15
  }
16
16
  async function resolveJDBCDriver() {
17
- return fileExistsOr(path_1.default.join(process.cwd(), 'DatabricksJDBC42.jar'), async () => fileExistsOr(path_1.default.join(__dirname, '..', 'download', 'DatabricksJDBC42.jar'), async () => {
17
+ return fileExistsOr(path_1.default.join(process.cwd(), `databricks-jdbc-${installer_1.OSS_DRIVER_VERSION}-oss.jar`), async () => fileExistsOr(path_1.default.join(__dirname, '..', 'download', `databricks-jdbc-${installer_1.OSS_DRIVER_VERSION}-oss.jar`), async () => {
18
18
  const pathOrNull = await (0, installer_1.downloadJDBCDriver)();
19
19
  if (pathOrNull) {
20
20
  return pathOrNull;
21
21
  }
22
- throw new Error('Please download and place DatabricksJDBC42.jar inside your ' +
22
+ throw new Error(`Please download and place databricks-jdbc-${installer_1.OSS_DRIVER_VERSION}-oss.jar inside your ` +
23
23
  'project directory');
24
24
  }));
25
25
  }
26
26
  exports.resolveJDBCDriver = resolveJDBCDriver;
27
- function extractUidFromJdbcUrl(jdbcUrl) {
28
- const { pathname } = new URL(jdbcUrl);
29
- const [_, ...params] = pathname.split(';');
30
- const searchParams = new URLSearchParams(params.join('&'));
31
- return searchParams.get('UID') || 'token';
27
+ /**
28
+ * Extract if exist UID and PWD from URL and return UID, PWD and URL without these params.
29
+ * New Databricks OSS driver throws an error if UID and PWD are provided in the URL and as a separate params
30
+ * passed to the driver instance. That's why we strip them out from the URL if they exist there.
31
+ * @param jdbcUrl
32
+ */
33
+ function extractAndRemoveUidPwdFromJdbcUrl(jdbcUrl) {
34
+ const uidMatch = jdbcUrl.match(/UID=([^;]*)/i);
35
+ const pwdMatch = jdbcUrl.match(/PWD=([^;]*)/i);
36
+ const uid = uidMatch?.[1] || 'token';
37
+ const pwd = pwdMatch?.[1] || '';
38
+ const cleanedUrl = jdbcUrl
39
+ .replace(/;?UID=[^;]*/i, '')
40
+ .replace(/;?PWD=[^;]*/i, '');
41
+ return [uid, pwd, cleanedUrl];
32
42
  }
33
- exports.extractUidFromJdbcUrl = extractUidFromJdbcUrl;
43
+ exports.extractAndRemoveUidPwdFromJdbcUrl = extractAndRemoveUidPwdFromJdbcUrl;
34
44
  //# sourceMappingURL=helpers.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"helpers.js","sourceRoot":"","sources":["../../src/helpers.ts"],"names":[],"mappings":";;;;;;AAAA,4CAAoB;AACpB,gDAAwB;AAExB,2CAAiD;AAEjD,KAAK,UAAU,YAAY,CACzB,MAAc,EACd,EAAyB;IAEzB,IAAI,YAAE,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE;QACzB,OAAO,MAAM,CAAC;KACf;IACD,OAAO,EAAE,EAAE,CAAC;AACd,CAAC;AAEM,KAAK,UAAU,iBAAiB;IACrC,OAAO,YAAY,CACjB,cAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,sBAAsB,CAAC,EAChD,KAAK,IAAI,EAAE,CAAC,YAAY,CACtB,cAAI,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,EAAE,UAAU,EAAE,sBAAsB,CAAC,EAC9D,KAAK,IAAI,EAAE;QACT,MAAM,UAAU,GAAG,MAAM,IAAA,8BAAkB,GAAE,CAAC;QAC9C,IAAI,UAAU,EAAE;YACd,OAAO,UAAU,CAAC;SACnB;QACD,MAAM,IAAI,KAAK,CACb,6DAA6D;YAC7D,mBAAmB,CACpB,CAAC;IACJ,CAAC,CACF,CACF,CAAC;AACJ,CAAC;AAjBD,8CAiBC;AAED,SAAgB,qBAAqB,CAAC,OAAe;IACnD,MAAM,EAAE,QAAQ,EAAE,GAAG,IAAI,GAAG,CAAC,OAAO,CAAC,CAAC;IACtC,MAAM,CAAC,CAAC,EAAE,GAAG,MAAM,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAC3C,MAAM,YAAY,GAAG,IAAI,eAAe,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;IAC3D,OAAO,YAAY,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,OAAO,CAAC;AAC5C,CAAC;AALD,sDAKC"}
1
+ {"version":3,"file":"helpers.js","sourceRoot":"","sources":["../../src/helpers.ts"],"names":[],"mappings":";;;;;;AAAA,4CAAoB;AACpB,gDAAwB;AAExB,2CAAqE;AAErE,KAAK,UAAU,YAAY,CACzB,MAAc,EACd,EAAyB;IAEzB,IAAI,YAAE,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE;QACzB,OAAO,MAAM,CAAC;KACf;IACD,OAAO,EAAE,EAAE,CAAC;AACd,CAAC;AAEM,KAAK,UAAU,iBAAiB;IACrC,OAAO,YAAY,CACjB,cAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,mBAAmB,8BAAkB,UAAU,CAAC,EACzE,KAAK,IAAI,EAAE,CAAC,YAAY,CACtB,cAAI,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,EAAE,UAAU,EAAE,mBAAmB,8BAAkB,UAAU,CAAC,EACvF,KAAK,IAAI,EAAE;QACT,MAAM,UAAU,GAAG,MAAM,IAAA,8BAAkB,GAAE,CAAC;QAC9C,IAAI,UAAU,EAAE;YACd,OAAO,UAAU,CAAC;SACnB;QACD,MAAM,IAAI,KAAK,CACb,6CAA6C,8BAAkB,uBAAuB;YACtF,mBAAmB,CACpB,CAAC;IACJ,CAAC,CACF,CACF,CAAC;AACJ,CAAC;AAjBD,8CAiBC;AAED;;;;;GAKG;AACH,SAAgB,iCAAiC,CAAC,OAAe;IAC/D,MAAM,QAAQ,GAAG,OAAO,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC;IAC/C,MAAM,QAAQ,GAAG,OAAO,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC;IAE/C,MAAM,GAAG,GAAG,QAAQ,EAAE,CAAC,CAAC,CAAC,IAAI,OAAO,CAAC;IACrC,MAAM,GAAG,GAAG,QAAQ,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;IAEhC,MAAM,UAAU,GAAG,OAAO;SACvB,OAAO,CAAC,cAAc,EAAE,EAAE,CAAC;SAC3B,OAAO,CAAC,cAAc,EAAE,EAAE,CAAC,CAAC;IAE/B,OAAO,CAAC,GAAG,EAAE,GAAG,EAAE,UAAU,CAAC,CAAC;AAChC,CAAC;AAZD,8EAYC"}
@@ -1,2 +1,10 @@
1
+ export declare const OSS_DRIVER_VERSION = "1.0.2";
2
+ /**
3
+ * In the beginning of 2025 Databricks released their open-source version of JDBC driver and encourage
4
+ * all users to migrate to it as company plans to focus on improving and evolving it over legacy simba driver.
5
+ * More info about OSS Driver could be found at https://docs.databricks.com/aws/en/integrations/jdbc/oss
6
+ * As of March 2025 To use the Databricks JDBC Driver (OSS), the following requirements must be met:
7
+ * Java Runtime Environment (JRE) 11.0 or above. CI testing is supported on JRE 11, 17, and 21.
8
+ */
1
9
  export declare function downloadJDBCDriver(): Promise<string | null>;
2
10
  //# sourceMappingURL=installer.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"installer.d.ts","sourceRoot":"","sources":["../../src/installer.ts"],"names":[],"mappings":"AAiBA,wBAAsB,kBAAkB,IAAI,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAoBjE"}
1
+ {"version":3,"file":"installer.d.ts","sourceRoot":"","sources":["../../src/installer.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,kBAAkB,UAAU,CAAC;AAE1C;;;;;;GAMG;AACH,wBAAsB,kBAAkB,IAAI,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAmBjE"}
@@ -3,32 +3,29 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
3
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.downloadJDBCDriver = void 0;
6
+ exports.downloadJDBCDriver = exports.OSS_DRIVER_VERSION = void 0;
7
7
  const path_1 = __importDefault(require("path"));
8
8
  const shared_1 = require("@cubejs-backend/shared");
9
- function acceptedByEnv() {
10
- const acceptStatus = (0, shared_1.getEnv)('databrickAcceptPolicy');
11
- if (acceptStatus) {
12
- console.log('You accepted Terms & Conditions for JDBC driver from DataBricks by CUBEJS_DB_DATABRICKS_ACCEPT_POLICY');
13
- }
14
- if (acceptStatus === false) {
15
- console.log('You declined Terms & Conditions for JDBC driver from DataBricks by CUBEJS_DB_DATABRICKS_ACCEPT_POLICY');
16
- console.log('Installation will be skipped');
17
- }
18
- return acceptStatus;
19
- }
9
+ exports.OSS_DRIVER_VERSION = '1.0.2';
10
+ /**
11
+ * In the beginning of 2025 Databricks released their open-source version of JDBC driver and encourage
12
+ * all users to migrate to it as company plans to focus on improving and evolving it over legacy simba driver.
13
+ * More info about OSS Driver could be found at https://docs.databricks.com/aws/en/integrations/jdbc/oss
14
+ * As of March 2025 To use the Databricks JDBC Driver (OSS), the following requirements must be met:
15
+ * Java Runtime Environment (JRE) 11.0 or above. CI testing is supported on JRE 11, 17, and 21.
16
+ */
20
17
  async function downloadJDBCDriver() {
21
- const driverAccepted = acceptedByEnv();
22
- if (driverAccepted) {
23
- console.log('Downloading DatabricksJDBC42-2.6.29.1051');
24
- await (0, shared_1.downloadAndExtractFile)('https://databricks-bi-artifacts.s3.us-east-2.amazonaws.com/simbaspark-drivers/jdbc/2.6.29/DatabricksJDBC42-2.6.29.1051.zip', {
25
- showProgress: true,
26
- cwd: path_1.default.resolve(path_1.default.join(__dirname, '..', 'download')),
27
- });
28
- console.log('Release notes: https://databricks-bi-artifacts.s3.us-east-2.amazonaws.com/simbaspark-drivers/jdbc/2.6.29/docs/release-notes.txt');
29
- return path_1.default.resolve(path_1.default.join(__dirname, '..', 'download', 'DatabricksJDBC42.jar'));
30
- }
31
- return null;
18
+ // TODO: Just to throw a console warning that this ENV is obsolete and could be safely removed
19
+ (0, shared_1.getEnv)('databrickAcceptPolicy');
20
+ console.log(`Downloading databricks-jdbc-${exports.OSS_DRIVER_VERSION}-oss.jar`);
21
+ await (0, shared_1.downloadAndExtractFile)(`https://repo1.maven.org/maven2/com/databricks/databricks-jdbc/${exports.OSS_DRIVER_VERSION}-oss/databricks-jdbc-${exports.OSS_DRIVER_VERSION}-oss.jar`, {
22
+ showProgress: true,
23
+ cwd: path_1.default.resolve(path_1.default.join(__dirname, '..', 'download')),
24
+ skipExtract: true,
25
+ dstFileName: `databricks-jdbc-${exports.OSS_DRIVER_VERSION}-oss.jar`,
26
+ });
27
+ console.log(`Release notes: https://mvnrepository.com/artifact/com.databricks/databricks-jdbc/${exports.OSS_DRIVER_VERSION}-oss`);
28
+ return path_1.default.resolve(path_1.default.join(__dirname, '..', 'download', `databricks-jdbc-${exports.OSS_DRIVER_VERSION}-oss.jar`));
32
29
  }
33
30
  exports.downloadJDBCDriver = downloadJDBCDriver;
34
31
  //# sourceMappingURL=installer.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"installer.js","sourceRoot":"","sources":["../../src/installer.ts"],"names":[],"mappings":";;;;;;AAAA,gDAAwB;AACxB,mDAAwE;AAExE,SAAS,aAAa;IACpB,MAAM,YAAY,GAAG,IAAA,eAAM,EAAC,uBAAuB,CAAC,CAAC;IACrD,IAAI,YAAY,EAAE;QAChB,OAAO,CAAC,GAAG,CAAC,uGAAuG,CAAC,CAAC;KACtH;IAED,IAAI,YAAY,KAAK,KAAK,EAAE;QAC1B,OAAO,CAAC,GAAG,CAAC,uGAAuG,CAAC,CAAC;QACrH,OAAO,CAAC,GAAG,CAAC,8BAA8B,CAAC,CAAC;KAC7C;IAED,OAAO,YAAY,CAAC;AACtB,CAAC;AAEM,KAAK,UAAU,kBAAkB;IACtC,MAAM,cAAc,GAAG,aAAa,EAAE,CAAC;IAEvC,IAAI,cAAc,EAAE;QAClB,OAAO,CAAC,GAAG,CAAC,0CAA0C,CAAC,CAAC;QAExD,MAAM,IAAA,+BAAsB,EAC1B,4HAA4H,EAC5H;YACE,YAAY,EAAE,IAAI;YAClB,GAAG,EAAE,cAAI,CAAC,OAAO,CAAC,cAAI,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,EAAE,UAAU,CAAC,CAAC;SAC1D,CACF,CAAC;QAEF,OAAO,CAAC,GAAG,CAAC,iIAAiI,CAAC,CAAC;QAE/I,OAAO,cAAI,CAAC,OAAO,CAAC,cAAI,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,EAAE,UAAU,EAAE,sBAAsB,CAAC,CAAC,CAAC;KACrF;IAED,OAAO,IAAI,CAAC;AACd,CAAC;AApBD,gDAoBC"}
1
+ {"version":3,"file":"installer.js","sourceRoot":"","sources":["../../src/installer.ts"],"names":[],"mappings":";;;;;;AAAA,gDAAwB;AACxB,mDAAwE;AAE3D,QAAA,kBAAkB,GAAG,OAAO,CAAC;AAE1C;;;;;;GAMG;AACI,KAAK,UAAU,kBAAkB;IACtC,8FAA8F;IAC9F,IAAA,eAAM,EAAC,uBAAuB,CAAC,CAAC;IAEhC,OAAO,CAAC,GAAG,CAAC,+BAA+B,0BAAkB,UAAU,CAAC,CAAC;IAEzE,MAAM,IAAA,+BAAsB,EAC1B,iEAAiE,0BAAkB,wBAAwB,0BAAkB,UAAU,EACvI;QACE,YAAY,EAAE,IAAI;QAClB,GAAG,EAAE,cAAI,CAAC,OAAO,CAAC,cAAI,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,EAAE,UAAU,CAAC,CAAC;QACzD,WAAW,EAAE,IAAI;QACjB,WAAW,EAAE,mBAAmB,0BAAkB,UAAU;KAC7D,CACF,CAAC;IAEF,OAAO,CAAC,GAAG,CAAC,oFAAoF,0BAAkB,MAAM,CAAC,CAAC;IAE1H,OAAO,cAAI,CAAC,OAAO,CAAC,cAAI,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,EAAE,UAAU,EAAE,mBAAmB,0BAAkB,UAAU,CAAC,CAAC,CAAC;AAC/G,CAAC;AAnBD,gDAmBC"}
@@ -1,18 +1,11 @@
1
1
  "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
2
  Object.defineProperty(exports, "__esModule", { value: true });
6
3
  require("source-map-support/register");
7
4
  const shared_1 = require("@cubejs-backend/shared");
8
- const fs_1 = __importDefault(require("fs"));
9
- const path_1 = __importDefault(require("path"));
10
- const installer_1 = require("./installer");
5
+ const helpers_1 = require("./helpers");
11
6
  (async () => {
12
7
  try {
13
- if (!fs_1.default.existsSync(path_1.default.join(__dirname, '..', 'download', 'SparkJDBC42.jar'))) {
14
- await (0, installer_1.downloadJDBCDriver)();
15
- }
8
+ await (0, helpers_1.resolveJDBCDriver)();
16
9
  }
17
10
  catch (e) {
18
11
  await (0, shared_1.displayCLIError)(e, 'Cube.js Databricks JDBC Installer');
@@ -1 +1 @@
1
- {"version":3,"file":"post-install.js","sourceRoot":"","sources":["../../src/post-install.ts"],"names":[],"mappings":";;;;;AAAA,uCAAqC;AAErC,mDAAyD;AAEzD,4CAAoB;AACpB,gDAAwB;AACxB,2CAAiD;AAEjD,CAAC,KAAK,IAAI,EAAE;IACV,IAAI;QACF,IAAI,CAAC,YAAE,CAAC,UAAU,CAAC,cAAI,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,EAAE,UAAU,EAAE,iBAAiB,CAAC,CAAC,EAAE;YAC7E,MAAM,IAAA,8BAAkB,GAAE,CAAC;SAC5B;KACF;IAAC,OAAO,CAAM,EAAE;QACf,MAAM,IAAA,wBAAe,EAAC,CAAC,EAAE,mCAAmC,CAAC,CAAC;KAC/D;AACH,CAAC,CAAC,EAAE,CAAC"}
1
+ {"version":3,"file":"post-install.js","sourceRoot":"","sources":["../../src/post-install.ts"],"names":[],"mappings":";;AAAA,uCAAqC;AAErC,mDAAyD;AACzD,uCAA8C;AAE9C,CAAC,KAAK,IAAI,EAAE;IACV,IAAI;QACF,MAAM,IAAA,2BAAiB,GAAE,CAAC;KAC3B;IAAC,OAAO,CAAM,EAAE;QACf,MAAM,IAAA,wBAAe,EAAC,CAAC,EAAE,mCAAmC,CAAC,CAAC;KAC/D;AACH,CAAC,CAAC,EAAE,CAAC"}
package/package.json CHANGED
@@ -2,7 +2,7 @@
2
2
  "name": "@cubejs-backend/databricks-jdbc-driver",
3
3
  "description": "Cube.js Databricks database driver",
4
4
  "author": "Cube Dev, Inc.",
5
- "version": "1.2.34",
5
+ "version": "1.3.1",
6
6
  "license": "Apache-2.0",
7
7
  "repository": {
8
8
  "type": "git",
@@ -30,20 +30,20 @@
30
30
  "bin"
31
31
  ],
32
32
  "dependencies": {
33
- "@cubejs-backend/base-driver": "1.2.34",
34
- "@cubejs-backend/jdbc-driver": "1.2.34",
35
- "@cubejs-backend/schema-compiler": "1.2.34",
36
- "@cubejs-backend/shared": "1.2.34",
33
+ "@cubejs-backend/base-driver": "1.3.1",
34
+ "@cubejs-backend/jdbc-driver": "1.3.1",
35
+ "@cubejs-backend/schema-compiler": "1.3.1",
36
+ "@cubejs-backend/shared": "1.3.1",
37
37
  "node-fetch": "^2.6.1",
38
38
  "ramda": "^0.27.2",
39
39
  "source-map-support": "^0.5.19",
40
40
  "uuid": "^8.3.2"
41
41
  },
42
42
  "devDependencies": {
43
- "@cubejs-backend/linter": "1.2.34",
43
+ "@cubejs-backend/linter": "1.3.1",
44
44
  "@types/generic-pool": "^3.8.2",
45
45
  "@types/jest": "^27",
46
- "@types/node": "^18",
46
+ "@types/node": "^20",
47
47
  "@types/ramda": "^0.27.34",
48
48
  "@types/uuid": "^8.3.4",
49
49
  "jest": "^27",
@@ -58,5 +58,5 @@
58
58
  "jest": {
59
59
  "testEnvironment": "node"
60
60
  },
61
- "gitHead": "7d65b86c28a3d970057fb347be178730322b8614"
61
+ "gitHead": "78a557da3d86bc40416ced7d034ba829c55ad187"
62
62
  }