@cubejs-backend/databricks-jdbc-driver 0.31.18 → 0.31.21

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.
@@ -7,19 +7,55 @@ import { DriverCapabilities, 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 declare type DatabricksDriverConfiguration = JDBCDriverConfiguration & {
10
+ /**
11
+ * Driver read-only mode flag.
12
+ */
10
13
  readOnly?: boolean;
14
+ /**
15
+ * Export bucket type.
16
+ */
11
17
  bucketType?: string;
18
+ /**
19
+ * Export bucket path.
20
+ */
12
21
  exportBucket?: string;
22
+ /**
23
+ * Export bucket DBFS mount directory.
24
+ */
13
25
  exportBucketMountDir?: string;
26
+ /**
27
+ * Poll interval.
28
+ */
14
29
  pollInterval?: number;
15
30
  /**
16
31
  * The export bucket CSV file escape symbol.
17
32
  */
18
33
  exportBucketCsvEscapeSymbol?: string;
34
+ /**
35
+ * Export bucket AWS account key.
36
+ */
19
37
  awsKey?: string;
38
+ /**
39
+ * Export bucket AWS account secret.
40
+ */
20
41
  awsSecret?: string;
42
+ /**
43
+ * Export bucket AWS account region.
44
+ */
21
45
  awsRegion?: string;
46
+ /**
47
+ * Export bucket Azure account key.
48
+ */
22
49
  azureKey?: string;
50
+ /**
51
+ * Databricks catalog name.
52
+ * https://www.databricks.com/product/unity-catalog
53
+ */
54
+ catalog?: string;
55
+ /**
56
+ * Databricks security token (PWD).
57
+ */
58
+ token?: string;
23
59
  };
24
60
  declare type ShowTableRow = {
25
61
  database: string;
@@ -30,7 +66,13 @@ declare type ShowTableRow = {
30
66
  * Databricks driver class.
31
67
  */
32
68
  export declare class DatabricksDriver extends JDBCDriver {
69
+ /**
70
+ * Show warning message flag.
71
+ */
33
72
  private showSparkProtocolWarn;
73
+ /**
74
+ * Read-only mode flag.
75
+ */
34
76
  protected readonly config: DatabricksDriverConfiguration;
35
77
  static dialectClass(): typeof DatabricksQuery;
36
78
  /**
@@ -50,31 +92,92 @@ export declare class DatabricksDriver extends JDBCDriver {
50
92
  */
51
93
  maxPoolSize?: number;
52
94
  });
95
+ /**
96
+ * @override
97
+ */
53
98
  readOnly(): boolean;
99
+ /**
100
+ * @override
101
+ */
102
+ capabilities(): DriverCapabilities;
103
+ /**
104
+ * @override
105
+ */
54
106
  setLogger(logger: any): void;
107
+ /**
108
+ * @override
109
+ */
110
+ loadPreAggregationIntoTable(preAggregationTableName: string, loadSql: string, params: unknown[], _options: any): Promise<unknown[]>;
111
+ /**
112
+ * @override
113
+ */
114
+ query<R = unknown>(query: string, values: unknown[]): Promise<R[]>;
115
+ /**
116
+ * Returns pre-aggregation schema name.
117
+ */
118
+ getPreaggsSchemaName(): string;
119
+ /**
120
+ * @override
121
+ */
122
+ dropTable(tableName: string, options?: unknown): Promise<unknown>;
55
123
  showDeprecations(): void;
56
124
  /**
57
125
  * @override
58
126
  */
59
127
  protected getCustomClassPath(): Promise<string>;
128
+ /**
129
+ * Execute create schema query.
130
+ */
60
131
  createSchemaIfNotExists(schemaName: string): Promise<unknown[]>;
61
- quoteIdentifier(identifier: string): string;
132
+ /**
133
+ * Returns the list of the tables for the specified schema.
134
+ */
135
+ getTablesQuery(schemaName: string): Promise<{
136
+ 'table_name': string;
137
+ }[]>;
138
+ /**
139
+ * Returns tables meta data object.
140
+ */
141
+ tablesSchema(): Promise<Record<string, Record<string, object>>>;
142
+ /**
143
+ * Returns list of accessible tables.
144
+ */
145
+ getTables(): Promise<ShowTableRow[]>;
146
+ /**
147
+ * Returns table columns types.
148
+ */
62
149
  tableColumnTypes(table: string): Promise<{
63
150
  name: any;
64
151
  type: string;
65
152
  }[]>;
66
- private queryColumnTypes;
67
- getTablesQuery(schemaName: string): Promise<{
68
- table_name: any;
153
+ /**
154
+ * Returns query columns types.
155
+ */
156
+ queryColumnTypes(sql: string, params?: unknown[]): Promise<{
157
+ name: any;
158
+ type: string;
69
159
  }[]>;
70
- protected getTables(): Promise<ShowTableRow[]>;
160
+ /**
161
+ * Returns schema full name.
162
+ */
163
+ getSchemaFullName(schema: string): string;
164
+ /**
165
+ * Returns quoted string.
166
+ */
167
+ quoteIdentifier(identifier: string): string;
168
+ /**
169
+ * Returns the JS type by the Databricks type.
170
+ */
71
171
  toGenericType(columnType: string): string;
72
- tablesSchema(): Promise<Record<string, Record<string, object>>>;
73
172
  /**
74
173
  * Determines whether export bucket feature is configured or no.
75
174
  * @returns {boolean}
76
175
  */
77
176
  isUnloadSupported(): Promise<boolean>;
177
+ /**
178
+ * Returns an object with the links to unloaded to the export bucket
179
+ * data to the Cubestore.
180
+ */
78
181
  unload(tableName: string, options: UnloadOptions): Promise<{
79
182
  exportBucketCsvEscapeSymbol: string | undefined;
80
183
  csvFile: string[];
@@ -85,15 +188,15 @@ export declare class DatabricksDriver extends JDBCDriver {
85
188
  csvNoHeader: boolean;
86
189
  }>;
87
190
  /**
88
- * Create table with query and unload it to bucket
191
+ * Unload data from the SQL query to the export bucket.
89
192
  */
90
193
  private unloadWithSql;
91
194
  /**
92
- * Create table from preaggregation table with location and unload it to bucket
195
+ * Unload data from the temp table to the export bucket.
93
196
  */
94
197
  private unloadWithTable;
95
198
  /**
96
- * return csv files signed URLs array.
199
+ * Returns an array of signed URLs of the unloaded csv files.
97
200
  */
98
201
  private getCsvFiles;
99
202
  /**
@@ -105,7 +208,7 @@ export declare class DatabricksDriver extends JDBCDriver {
105
208
  */
106
209
  private getSignedS3Urls;
107
210
  /**
108
- * Saves specified table to the configured bucket. This requires Databricks
211
+ * Saves specified query to the configured bucket. This requires Databricks
109
212
  * cluster to be configured.
110
213
  *
111
214
  * For Azure blob storage you need to configure account access key in
@@ -122,8 +225,24 @@ export declare class DatabricksDriver extends JDBCDriver {
122
225
  * `fs.s3a.secret.key <aws-secret-key>`
123
226
  */
124
227
  private createExternalTableFromSql;
228
+ /**
229
+ * Saves specified table to the configured bucket. This requires Databricks
230
+ * cluster to be configured.
231
+ *
232
+ * For Azure blob storage you need to configure account access key in
233
+ * Cluster -> Configuration -> Advanced options
234
+ * (https://docs.databricks.com/data/data-sources/azure/azure-storage.html#access-azure-blob-storage-directly)
235
+ *
236
+ * `fs.azure.account.key.<storage-account-name>.blob.core.windows.net <storage-account-access-key>`
237
+ *
238
+ * For S3 bucket storage you need to configure AWS access key and secret in
239
+ * Cluster -> Configuration -> Advanced options
240
+ * (https://docs.databricks.com/data/data-sources/aws/amazon-s3.html#access-s3-buckets-directly)
241
+ *
242
+ * `fs.s3a.access.key <aws-access-key>`
243
+ * `fs.s3a.secret.key <aws-secret-key>`
244
+ */
125
245
  private createExternalTableFromTable;
126
- capabilities(): DriverCapabilities;
127
246
  }
128
247
  export {};
129
248
  //# sourceMappingURL=DatabricksDriver.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"DatabricksDriver.d.ts","sourceRoot":"","sources":["../../src/DatabricksDriver.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAiBH,OAAO,EAAE,kBAAkB,EAAE,aAAa,EAAG,MAAM,6BAA6B,CAAC;AACjF,OAAO,EACL,UAAU,EACV,uBAAuB,EACxB,MAAM,6BAA6B,CAAC;AACrC,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAKpD,oBAAY,6BAA6B,GAAG,uBAAuB,GACjE;IACE,QAAQ,CAAC,EAAE,OAAO,CAAC;IAGnB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,YAAY,CAAC,EAAE,MAAM,CAAC;IAEtB;;OAEG;IACH,2BAA2B,CAAC,EAAE,MAAM,CAAC;IAGrC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IAGnB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB,CAAC;AAYJ,aAAK,YAAY,GAAG;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,OAAO,CAAC;CACtB,CAAC;AA6BF;;GAEG;AACH,qBAAa,gBAAiB,SAAQ,UAAU;IAC9C,OAAO,CAAC,qBAAqB,CAAU;IAEvC,SAAS,CAAC,QAAQ,CAAC,MAAM,EAAE,6BAA6B,CAAC;WAE3C,YAAY;IAI1B;;OAEG;WACW,qBAAqB,IAAI,MAAM;IAI7C;;OAEG;gBAED,IAAI,GAAE,OAAO,CAAC,6BAA6B,CAAC,GAAG;QAC7C;;WAEG;QACH,UAAU,CAAC,EAAE,MAAM,CAAC;QAEpB;;WAEG;QACH,WAAW,CAAC,EAAE,MAAM,CAAC;KACjB;IA6DD,QAAQ;IAIR,SAAS,CAAC,MAAM,EAAE,GAAG;IAKrB,gBAAgB;IAyBvB;;OAEG;cACa,kBAAkB;IAIrB,uBAAuB,CAAC,UAAU,EAAE,MAAM;IAIhD,eAAe,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM;IAIrC,gBAAgB,CAAC,KAAK,EAAE,MAAM;;;;YAkB7B,gBAAgB;IAiBjB,cAAc,CAAC,UAAU,EAAE,MAAM;;;cAQ9B,SAAS,IAAI,OAAO,CAAC,YAAY,EAAE,CAAC;IAiB7C,aAAa,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM;IAInC,YAAY;IAiBzB;;;OAGG;IACU,iBAAiB;IAIjB,MAAM,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,aAAa;;;;;;;;;IAwB7D;;OAEG;YACW,aAAa;IAQ3B;;OAEG;YACW,eAAe;IAS7B;;OAEG;YACW,WAAW;IAmBzB;;OAEG;YACW,kBAAkB;IAiDhC;;OAEG;YACW,eAAe;IAoC7B;;;;;;;;;;;;;;;;OAgBG;YACW,0BAA0B;YAY1B,4BAA4B;IAYnC,YAAY,IAAI,kBAAkB;CAG1C"}
1
+ {"version":3,"file":"DatabricksDriver.d.ts","sourceRoot":"","sources":["../../src/DatabricksDriver.ts"],"names":[],"mappings":"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"}
@@ -49,24 +49,30 @@ class DatabricksDriver extends jdbc_driver_1.JDBCDriver {
49
49
  const dataSource = conf.dataSource ||
50
50
  shared_1.assertDataSource('default');
51
51
  let showSparkProtocolWarn = false;
52
- let url = shared_1.getEnv('databrickUrl', { dataSource });
52
+ let url = (conf === null || conf === void 0 ? void 0 : conf.url) ||
53
+ shared_1.getEnv('databrickUrl', { dataSource }) ||
54
+ shared_1.getEnv('jdbcUrl', { dataSource });
53
55
  if (url.indexOf('jdbc:spark://') !== -1) {
54
56
  showSparkProtocolWarn = true;
55
57
  url = url.replace('jdbc:spark://', 'jdbc:databricks://');
56
58
  }
57
59
  const config = {
58
60
  ...conf,
61
+ url,
59
62
  dbType: 'databricks',
60
63
  drivername: 'com.databricks.client.jdbc.Driver',
61
64
  customClassPath: undefined,
62
65
  properties: {
63
66
  // PWD-parameter passed to the connection string has higher priority,
64
67
  // so we can set this one to an empty string to avoid a Java error.
65
- PWD: shared_1.getEnv('databrickToken', { dataSource }) || '',
68
+ PWD: (conf === null || conf === void 0 ? void 0 : conf.token) ||
69
+ shared_1.getEnv('databrickToken', { dataSource }) ||
70
+ '',
66
71
  UserAgentEntry: `CubeDev+Cube/${version} (Databricks)`,
67
72
  },
73
+ catalog: (conf === null || conf === void 0 ? void 0 : conf.catalog) ||
74
+ shared_1.getEnv('databricksCatalog', { dataSource }),
68
75
  database: shared_1.getEnv('dbName', { required: false, dataSource }),
69
- url,
70
76
  // common export bucket config
71
77
  bucketType: (conf === null || conf === void 0 ? void 0 : conf.bucketType) ||
72
78
  shared_1.getEnv('dbExportBucketType', { supported: ['s3', 'azure'], dataSource }),
@@ -101,13 +107,71 @@ class DatabricksDriver extends jdbc_driver_1.JDBCDriver {
101
107
  static getDefaultConcurrency() {
102
108
  return 2;
103
109
  }
110
+ /**
111
+ * @override
112
+ */
104
113
  readOnly() {
105
114
  return !!this.config.readOnly;
106
115
  }
116
+ /**
117
+ * @override
118
+ */
119
+ capabilities() {
120
+ return { unloadWithoutTempTable: true };
121
+ }
122
+ /**
123
+ * @override
124
+ */
107
125
  setLogger(logger) {
108
126
  super.setLogger(logger);
109
127
  this.showDeprecations();
110
128
  }
129
+ /**
130
+ * @override
131
+ */
132
+ async loadPreAggregationIntoTable(preAggregationTableName, loadSql, params, _options) {
133
+ if (this.config.catalog) {
134
+ const [schema] = preAggregationTableName.split('.');
135
+ return super.loadPreAggregationIntoTable(preAggregationTableName, loadSql.replace(new RegExp(`(?<=\\s)${schema}\\.(?=[^\\s]+)`, 'g'), `${this.config.catalog}.${schema}.`), params, _options);
136
+ }
137
+ else {
138
+ return super.loadPreAggregationIntoTable(preAggregationTableName, loadSql, params, _options);
139
+ }
140
+ }
141
+ /**
142
+ * @override
143
+ */
144
+ async query(query, values) {
145
+ if (this.config.catalog) {
146
+ return super.query(query.replace(new RegExp(`(?<=\\s)${this.getPreaggsSchemaName()}\\.(?=[^\\s]+)`, 'g'), `${this.config.catalog}.${this.getPreaggsSchemaName()}.`), values);
147
+ }
148
+ else {
149
+ return super.query(query, values);
150
+ }
151
+ }
152
+ /**
153
+ * Returns pre-aggregation schema name.
154
+ */
155
+ getPreaggsSchemaName() {
156
+ const schema = shared_1.getEnv('preAggregationsSchema');
157
+ if (schema) {
158
+ return schema;
159
+ }
160
+ else {
161
+ const devMode = process.env.NODE_ENV !== 'production' || shared_1.getEnv('devMode');
162
+ return devMode
163
+ ? 'dev_pre_aggregations'
164
+ : 'prod_pre_aggregations';
165
+ }
166
+ }
167
+ /**
168
+ * @override
169
+ */
170
+ dropTable(tableName, options) {
171
+ var _a;
172
+ const tableFullName = `${((_a = this.config) === null || _a === void 0 ? void 0 : _a.catalog) ? `${this.config.catalog}.` : ''}${tableName}`;
173
+ return super.dropTable(tableFullName, options);
174
+ }
111
175
  showDeprecations() {
112
176
  var _a;
113
177
  if (this.config.url) {
@@ -135,29 +199,86 @@ class DatabricksDriver extends jdbc_driver_1.JDBCDriver {
135
199
  async getCustomClassPath() {
136
200
  return resolveJDBCDriver();
137
201
  }
202
+ /**
203
+ * Execute create schema query.
204
+ */
138
205
  async createSchemaIfNotExists(schemaName) {
139
- return this.query(`CREATE SCHEMA IF NOT EXISTS ${schemaName}`, []);
206
+ return this.query(`CREATE SCHEMA IF NOT EXISTS ${this.getSchemaFullName(schemaName)}`, []);
140
207
  }
141
- quoteIdentifier(identifier) {
142
- return `\`${identifier}\``;
208
+ /**
209
+ * Returns the list of the tables for the specified schema.
210
+ */
211
+ async getTablesQuery(schemaName) {
212
+ const response = await this.query(`SHOW TABLES IN ${this.getSchemaFullName(schemaName)}`, []);
213
+ return response.map((row) => ({
214
+ table_name: row.tableName,
215
+ }));
216
+ }
217
+ /**
218
+ * Returns tables meta data object.
219
+ */
220
+ async tablesSchema() {
221
+ const tables = await this.getTables();
222
+ const metadata = {};
223
+ await Promise.all(tables.map(async ({ database, tableName }) => {
224
+ if (!(database in metadata)) {
225
+ metadata[database] = {};
226
+ }
227
+ const columns = await this.tableColumnTypes(`${database}.${tableName}`);
228
+ metadata[database][tableName] = columns;
229
+ }));
230
+ return metadata;
231
+ }
232
+ /**
233
+ * Returns list of accessible tables.
234
+ */
235
+ async getTables() {
236
+ var _a;
237
+ if (this.config.database) {
238
+ return this.query(`SHOW TABLES IN ${this.getSchemaFullName(this.config.database)}`, []);
239
+ }
240
+ const databases = await this.query(`SHOW DATABASES${((_a = this.config) === null || _a === void 0 ? void 0 : _a.catalog) ? ` IN ${this.quoteIdentifier(this.config.catalog)}`
241
+ : ''}`, []);
242
+ const tables = await Promise.all(databases.map(async ({ databaseName }) => this.query(`SHOW TABLES IN ${this.getSchemaFullName(databaseName)}`, [])));
243
+ return tables.flat();
143
244
  }
245
+ /**
246
+ * Returns table columns types.
247
+ */
144
248
  async tableColumnTypes(table) {
145
- const [schema, tableName] = table.split('.');
249
+ var _a;
250
+ let tableFullName = '';
251
+ const tableArray = table.split('.');
252
+ if (tableArray.length === 3) {
253
+ tableFullName = `${this.quoteIdentifier(tableArray[0])}.${this.quoteIdentifier(tableArray[1])}.${this.quoteIdentifier(tableArray[2])}`;
254
+ }
255
+ else if (tableArray.length === 2 && ((_a = this.config) === null || _a === void 0 ? void 0 : _a.catalog)) {
256
+ tableFullName = `${this.quoteIdentifier(this.config.catalog)}.${this.quoteIdentifier(tableArray[0])}.${this.quoteIdentifier(tableArray[1])}`;
257
+ }
258
+ else {
259
+ tableFullName = `${this.quoteIdentifier(tableArray[0])}.${this.quoteIdentifier(tableArray[1])}`;
260
+ }
146
261
  const result = [];
147
- const response = await this.query(`DESCRIBE ${schema}.${tableName}`, []);
262
+ const response = await this.query(`DESCRIBE ${tableFullName}`, []);
148
263
  for (const column of response) {
149
264
  // Databricks describe additional info by default after empty line.
150
265
  if (column.col_name === '') {
151
266
  break;
152
267
  }
153
- result.push({ name: column.col_name, type: this.toGenericType(column.data_type) });
268
+ result.push({
269
+ name: column.col_name,
270
+ type: this.toGenericType(column.data_type),
271
+ });
154
272
  }
155
273
  return result;
156
274
  }
275
+ /**
276
+ * Returns query columns types.
277
+ */
157
278
  async queryColumnTypes(sql, params) {
158
279
  const result = [];
159
280
  // eslint-disable-next-line camelcase
160
- const response = await this.query(`DESCRIBE QUERY ${sql}`, params);
281
+ const response = await this.query(`DESCRIBE QUERY ${sql}`, params || []);
161
282
  for (const column of response) {
162
283
  // Databricks describe additional info by default after empty line.
163
284
  if (column.col_name === '') {
@@ -167,35 +288,30 @@ class DatabricksDriver extends jdbc_driver_1.JDBCDriver {
167
288
  }
168
289
  return result;
169
290
  }
170
- async getTablesQuery(schemaName) {
171
- const response = await this.query(`SHOW TABLES IN ${this.quoteIdentifier(schemaName)}`, []);
172
- return response.map((row) => ({
173
- table_name: row.tableName,
174
- }));
175
- }
176
- async getTables() {
177
- if (this.config.database) {
178
- return this.query(`SHOW TABLES IN ${this.quoteIdentifier(this.config.database)}`, []);
291
+ /**
292
+ * Returns schema full name.
293
+ */
294
+ getSchemaFullName(schema) {
295
+ var _a;
296
+ if ((_a = this.config) === null || _a === void 0 ? void 0 : _a.catalog) {
297
+ return `${this.quoteIdentifier(this.config.catalog)}.${this.quoteIdentifier(schema)}`;
298
+ }
299
+ else {
300
+ return `${this.quoteIdentifier(schema)}`;
179
301
  }
180
- const databases = await this.query('SHOW DATABASES', []);
181
- const allTables = await Promise.all(databases.map(async ({ databaseName }) => this.query(`SHOW TABLES IN ${this.quoteIdentifier(databaseName)}`, [])));
182
- return allTables.flat();
183
302
  }
303
+ /**
304
+ * Returns quoted string.
305
+ */
306
+ quoteIdentifier(identifier) {
307
+ return `\`${identifier}\``;
308
+ }
309
+ /**
310
+ * Returns the JS type by the Databricks type.
311
+ */
184
312
  toGenericType(columnType) {
185
313
  return DatabricksToGenericType[columnType.toLowerCase()] || super.toGenericType(columnType);
186
314
  }
187
- async tablesSchema() {
188
- const tables = await this.getTables();
189
- const metadata = {};
190
- await Promise.all(tables.map(async ({ database, tableName }) => {
191
- if (!(database in metadata)) {
192
- metadata[database] = {};
193
- }
194
- const columns = await this.tableColumnTypes(`${database}.${tableName}`);
195
- metadata[database][tableName] = columns;
196
- }));
197
- return metadata;
198
- }
199
315
  /**
200
316
  * Determines whether export bucket feature is configured or no.
201
317
  * @returns {boolean}
@@ -203,14 +319,19 @@ class DatabricksDriver extends jdbc_driver_1.JDBCDriver {
203
319
  async isUnloadSupported() {
204
320
  return this.config.exportBucket !== undefined;
205
321
  }
322
+ /**
323
+ * Returns an object with the links to unloaded to the export bucket
324
+ * data to the Cubestore.
325
+ */
206
326
  async unload(tableName, options) {
207
327
  if (!['azure', 's3'].includes(this.config.bucketType)) {
208
328
  throw new Error(`Unsupported export bucket type: ${this.config.bucketType}`);
209
329
  }
330
+ const tableFullName = `${this.config.catalog ? `${this.config.catalog}.` : ''}${tableName}`;
210
331
  const types = options.query ?
211
- await this.unloadWithSql(tableName, options.query.sql, options.query.params) :
212
- await this.unloadWithTable(tableName);
213
- const pathname = `${this.config.exportBucket}/${tableName}.csv`;
332
+ await this.unloadWithSql(tableFullName, options.query.sql, options.query.params) :
333
+ await this.unloadWithTable(tableFullName);
334
+ const pathname = `${this.config.exportBucket}/${tableFullName}.csv`;
214
335
  const csvFile = await this.getCsvFiles(pathname);
215
336
  return {
216
337
  exportBucketCsvEscapeSymbol: this.config.exportBucketCsvEscapeSymbol,
@@ -220,24 +341,24 @@ class DatabricksDriver extends jdbc_driver_1.JDBCDriver {
220
341
  };
221
342
  }
222
343
  /**
223
- * Create table with query and unload it to bucket
344
+ * Unload data from the SQL query to the export bucket.
224
345
  */
225
- async unloadWithSql(tableName, sql, params) {
346
+ async unloadWithSql(tableFullName, sql, params) {
226
347
  const types = await this.queryColumnTypes(sql, params);
227
- await this.createExternalTableFromSql(tableName, sql, params);
348
+ await this.createExternalTableFromSql(tableFullName, sql, params);
228
349
  return types;
229
350
  }
230
351
  /**
231
- * Create table from preaggregation table with location and unload it to bucket
352
+ * Unload data from the temp table to the export bucket.
232
353
  */
233
- async unloadWithTable(tableName) {
234
- const types = await this.tableColumnTypes(tableName);
354
+ async unloadWithTable(tableFullName) {
355
+ const types = await this.tableColumnTypes(tableFullName);
235
356
  const columns = types.map(t => t.name).join(', ');
236
- await this.createExternalTableFromTable(tableName, columns);
357
+ await this.createExternalTableFromTable(tableFullName, columns);
237
358
  return types;
238
359
  }
239
360
  /**
240
- * return csv files signed URLs array.
361
+ * Returns an array of signed URLs of the unloaded csv files.
241
362
  */
242
363
  async getCsvFiles(pathname) {
243
364
  let res;
@@ -320,7 +441,7 @@ class DatabricksDriver extends jdbc_driver_1.JDBCDriver {
320
441
  return csvFile;
321
442
  }
322
443
  /**
323
- * Saves specified table to the configured bucket. This requires Databricks
444
+ * Saves specified query to the configured bucket. This requires Databricks
324
445
  * cluster to be configured.
325
446
  *
326
447
  * For Azure blob storage you need to configure account access key in
@@ -336,25 +457,39 @@ class DatabricksDriver extends jdbc_driver_1.JDBCDriver {
336
457
  * `fs.s3a.access.key <aws-access-key>`
337
458
  * `fs.s3a.secret.key <aws-secret-key>`
338
459
  */
339
- async createExternalTableFromSql(table, sql, params) {
460
+ async createExternalTableFromSql(tableFullName, sql, params) {
340
461
  await this.query(`
341
- CREATE TABLE ${table}_csv_export
342
- USING CSV LOCATION '${this.config.exportBucketMountDir || this.config.exportBucket}/${table}.csv'
462
+ CREATE TABLE ${tableFullName}_csv_export
463
+ USING CSV LOCATION '${this.config.exportBucketMountDir || this.config.exportBucket}/${tableFullName}.csv'
343
464
  OPTIONS (escape = '"')
344
465
  AS (${sql})
345
466
  `, params);
346
467
  }
347
- async createExternalTableFromTable(table, columns) {
468
+ /**
469
+ * Saves specified table to the configured bucket. This requires Databricks
470
+ * cluster to be configured.
471
+ *
472
+ * For Azure blob storage you need to configure account access key in
473
+ * Cluster -> Configuration -> Advanced options
474
+ * (https://docs.databricks.com/data/data-sources/azure/azure-storage.html#access-azure-blob-storage-directly)
475
+ *
476
+ * `fs.azure.account.key.<storage-account-name>.blob.core.windows.net <storage-account-access-key>`
477
+ *
478
+ * For S3 bucket storage you need to configure AWS access key and secret in
479
+ * Cluster -> Configuration -> Advanced options
480
+ * (https://docs.databricks.com/data/data-sources/aws/amazon-s3.html#access-s3-buckets-directly)
481
+ *
482
+ * `fs.s3a.access.key <aws-access-key>`
483
+ * `fs.s3a.secret.key <aws-secret-key>`
484
+ */
485
+ async createExternalTableFromTable(tableFullName, columns) {
348
486
  await this.query(`
349
- CREATE TABLE ${table}_csv_export
350
- USING CSV LOCATION '${this.config.exportBucketMountDir || this.config.exportBucket}/${table}.csv'
487
+ CREATE TABLE ${tableFullName}_csv_export
488
+ USING CSV LOCATION '${this.config.exportBucketMountDir || this.config.exportBucket}/${tableFullName}.csv'
351
489
  OPTIONS (escape = '"')
352
- AS SELECT ${columns} FROM ${table}
490
+ AS SELECT ${columns} FROM ${tableFullName}
353
491
  `, []);
354
492
  }
355
- capabilities() {
356
- return { unloadWithoutTempTable: true };
357
- }
358
493
  }
359
494
  exports.DatabricksDriver = DatabricksDriver;
360
495
  //# sourceMappingURL=DatabricksDriver.js.map
@@ -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":";AAAA;;;;GAIG;;;;;;AAEH,mDAGgC;AAChC,4CAAoB;AACpB,gDAAwB;AACxB,kDAA0D;AAC1D,wEAA6D;AAC7D,sDAM6B;AAE7B,6DAGqC;AACrC,uDAAoD;AACpD,2CAAiD;AAEjD,MAAM,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC,oBAAoB,CAAC,CAAC;AAkElD,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;AAYD,MAAM,uBAAuB,GAA2B;IACtD,eAAe,EAAE,QAAQ;CAC1B,CAAC;AAEF,KAAK,UAAU,iBAAiB;IAC9B,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,8BAAkB,EAAE,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;AAED;;GAEG;AACH,MAAa,gBAAiB,SAAQ,wBAAU;IAsB9C;;OAEG;IACH,YACE,OAUI,EAAE;QAEN,MAAM,UAAU,GACd,IAAI,CAAC,UAAU;YACf,yBAAgB,CAAC,SAAS,CAAC,CAAC;QAE9B,IAAI,qBAAqB,GAAG,KAAK,CAAC;QAClC,IAAI,GAAG,GACL,CAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,GAAG;YACT,eAAM,CAAC,cAAc,EAAE,EAAE,UAAU,EAAE,CAAC;YACtC,eAAM,CAAC,SAAS,EAAE,EAAE,UAAU,EAAE,CAAC,CAAC;QACpC,IAAI,GAAG,CAAC,OAAO,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC,EAAE;YACvC,qBAAqB,GAAG,IAAI,CAAC;YAC7B,GAAG,GAAG,GAAG,CAAC,OAAO,CAAC,eAAe,EAAE,oBAAoB,CAAC,CAAC;SAC1D;QAED,MAAM,MAAM,GAAkC;YAC5C,GAAG,IAAI;YACP,GAAG;YACH,MAAM,EAAE,YAAY;YACpB,UAAU,EAAE,mCAAmC;YAC/C,eAAe,EAAE,SAAS;YAC1B,UAAU,EAAE;gBACV,qEAAqE;gBACrE,mEAAmE;gBACnE,GAAG,EACD,CAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,KAAK;oBACX,eAAM,CAAC,gBAAgB,EAAE,EAAE,UAAU,EAAE,CAAC;oBACxC,EAAE;gBACJ,cAAc,EAAE,gBAAgB,OAAO,eAAe;aACvD;YACD,OAAO,EACL,CAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,OAAO;gBACb,eAAM,CAAC,mBAAmB,EAAE,EAAE,UAAU,EAAE,CAAC;YAC7C,QAAQ,EAAE,eAAM,CAAC,QAAQ,EAAE,EAAE,QAAQ,EAAE,KAAK,EAAE,UAAU,EAAE,CAAC;YAC3D,8BAA8B;YAC9B,UAAU,EACR,CAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,UAAU;gBAChB,eAAM,CAAC,oBAAoB,EAAE,EAAE,SAAS,EAAE,CAAC,IAAI,EAAE,OAAO,CAAC,EAAE,UAAU,EAAE,CAAC;YAC1E,YAAY,EACV,CAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,YAAY;gBAClB,eAAM,CAAC,gBAAgB,EAAE,EAAE,UAAU,EAAE,CAAC;YAC1C,oBAAoB,EAClB,CAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,oBAAoB;gBAC1B,eAAM,CAAC,wBAAwB,EAAE,EAAE,UAAU,EAAE,CAAC;YAClD,YAAY,EAAE,CACZ,CAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,YAAY;gBAClB,eAAM,CAAC,mBAAmB,EAAE,EAAE,UAAU,EAAE,CAAC,CAC5C,GAAG,IAAI;YACR,2BAA2B;YAC3B,MAAM,EACJ,CAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,MAAM;gBACZ,eAAM,CAAC,sBAAsB,EAAE,EAAE,UAAU,EAAE,CAAC;YAChD,SAAS,EACP,CAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,SAAS;gBACf,eAAM,CAAC,yBAAyB,EAAE,EAAE,UAAU,EAAE,CAAC;YACnD,SAAS,EACP,CAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,SAAS;gBACf,eAAM,CAAC,yBAAyB,EAAE,EAAE,UAAU,EAAE,CAAC;YACnD,sBAAsB;YACtB,QAAQ,EACN,CAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,QAAQ;gBACd,eAAM,CAAC,wBAAwB,EAAE,EAAE,UAAU,EAAE,CAAC;YAClD,2BAA2B,EACzB,eAAM,CAAC,+BAA+B,EAAE,EAAE,UAAU,EAAE,CAAC;SAC1D,CAAC;QACF,KAAK,CAAC,MAAM,CAAC,CAAC;QACd,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,qBAAqB,GAAG,qBAAqB,CAAC;IACrD,CAAC;IA9FM,MAAM,CAAC,YAAY;QACxB,OAAO,iCAAe,CAAC;IACzB,CAAC;IAED;;OAEG;IACI,MAAM,CAAC,qBAAqB;QACjC,OAAO,CAAC,CAAC;IACX,CAAC;IAuFD;;OAEG;IACI,QAAQ;QACb,OAAO,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC;IAChC,CAAC;IAED;;OAEG;IACI,YAAY;QACjB,OAAO,EAAE,sBAAsB,EAAE,IAAI,EAAE,CAAC;IAC1C,CAAC;IAED;;OAEG;IACI,SAAS,CAAC,MAAW;QAC1B,KAAK,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;QACxB,IAAI,CAAC,gBAAgB,EAAE,CAAC;IAC1B,CAAC;IAED;;OAEG;IACI,KAAK,CAAC,2BAA2B,CACtC,uBAA+B,EAC/B,OAAe,EACf,MAAiB,EACjB,QAAa;QAEb,IAAI,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE;YACvB,MAAM,CAAC,MAAM,CAAC,GAAG,uBAAuB,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;YACpD,OAAO,KAAK,CAAC,2BAA2B,CACtC,uBAAuB,EACvB,OAAO,CAAC,OAAO,CACb,IAAI,MAAM,CAAC,WAAW,MAAM,gBAAgB,EAAE,GAAG,CAAC,EAClD,GAAG,IAAI,CAAC,MAAM,CAAC,OAAO,IAAI,MAAM,GAAG,CACpC,EACD,MAAM,EACN,QAAQ,CACT,CAAC;SACH;aAAM;YACL,OAAO,KAAK,CAAC,2BAA2B,CACtC,uBAAuB,EACvB,OAAO,EACP,MAAM,EACN,QAAQ,CACT,CAAC;SACH;IACH,CAAC;IAED;;OAEG;IACI,KAAK,CAAC,KAAK,CAChB,KAAa,EACb,MAAiB;QAEjB,IAAI,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE;YACvB,OAAO,KAAK,CAAC,KAAK,CAChB,KAAK,CAAC,OAAO,CACX,IAAI,MAAM,CAAC,WAAW,IAAI,CAAC,oBAAoB,EAAE,gBAAgB,EAAE,GAAG,CAAC,EACvE,GAAG,IAAI,CAAC,MAAM,CAAC,OAAO,IAAI,IAAI,CAAC,oBAAoB,EAAE,GAAG,CACzD,EACD,MAAM,CACP,CAAC;SACH;aAAM;YACL,OAAO,KAAK,CAAC,KAAK,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;SACnC;IACH,CAAC;IAED;;OAEG;IACI,oBAAoB;QACzB,MAAM,MAAM,GAAG,eAAM,CAAC,uBAAuB,CAAC,CAAC;QAC/C,IAAI,MAAM,EAAE;YACV,OAAO,MAAM,CAAC;SACf;aAAM;YACL,MAAM,OAAO,GACX,OAAO,CAAC,GAAG,CAAC,QAAQ,KAAK,YAAY,IAAI,eAAM,CAAC,SAAS,CAAC,CAAC;YAC7D,OAAO,OAAO;gBACZ,CAAC,CAAC,sBAAsB;gBACxB,CAAC,CAAC,uBAAuB,CAAC;SAC7B;IACH,CAAC;IAED;;OAEG;IACI,SAAS,CAAC,SAAiB,EAAE,OAAiB;;QACnD,MAAM,aAAa,GAAG,GACpB,OAAA,IAAI,CAAC,MAAM,0CAAE,OAAO,EAAC,CAAC,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,OAAO,GAAG,CAAC,CAAC,CAAC,EACrD,GAAG,SAAS,EAAE,CAAC;QACf,OAAO,KAAK,CAAC,SAAS,CAAC,aAAa,EAAE,OAAO,CAAC,CAAC;IACjD,CAAC;IAEM,gBAAgB;;QACrB,IAAI,IAAI,CAAC,MAAM,CAAC,GAAG,EAAE;YACnB,MAAM,MAAM,SAAG,IAAI,CAAC,MAAM,CAAC,GAAG;iBAC3B,KAAK,CAAC,GAAG,CAAC;iBACV,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,0CAC/B,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC;YAElB,IAAI,MAAM,EAAE;gBACV,IAAI,CAAC,MAAM,CAAC,gDAAgD,EAAE;oBAC5D,OAAO,EACL,sEAAsE;wBACtE,wEAAwE;iBAC3E,CAAC,CAAC;aACJ;SACF;QACD,IAAI,IAAI,CAAC,qBAAqB,EAAE;YAC9B,IAAI,CAAC,MAAM,CAAC,iCAAiC,EAAE;gBAC7C,OAAO,EACL,kFAAkF;oBAClF,2EAA2E;oBAC3E,6BAA6B;aAChC,CAAC,CAAC;SACJ;IACH,CAAC;IAED;;OAEG;IACO,KAAK,CAAC,kBAAkB;QAChC,OAAO,iBAAiB,EAAE,CAAC;IAC7B,CAAC;IAED;;OAEG;IACI,KAAK,CAAC,uBAAuB,CAAC,UAAkB;QACrD,OAAO,IAAI,CAAC,KAAK,CACf,+BACE,IAAI,CAAC,iBAAiB,CAAC,UAAU,CACnC,EAAE,EACF,EAAE,CACH,CAAC;IACJ,CAAC;IAED;;OAEG;IACI,KAAK,CAAC,cAAc,CAAC,UAAkB;QAC5C,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,KAAK,CAC/B,kBAAkB,IAAI,CAAC,iBAAiB,CAAC,UAAU,CAAC,EAAE,EACtD,EAAE,CACH,CAAC;QACF,OAAO,QAAQ,CAAC,GAAG,CAAC,CAAC,GAAQ,EAAE,EAAE,CAAC,CAAC;YACjC,UAAU,EAAE,GAAG,CAAC,SAAS;SAC1B,CAAC,CAAC,CAAC;IACN,CAAC;IAED;;OAEG;IACI,KAAK,CAAC,YAAY;QACvB,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,SAAS,EAAE,CAAC;QAEtC,MAAM,QAAQ,GAA2C,EAAE,CAAC;QAE5D,MAAM,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,EAAE,EAAE,QAAQ,EAAE,SAAS,EAAE,EAAE,EAAE;YAC7D,IAAI,CAAC,CAAC,QAAQ,IAAI,QAAQ,CAAC,EAAE;gBAC3B,QAAQ,CAAC,QAAQ,CAAC,GAAG,EAAE,CAAC;aACzB;YAED,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,gBAAgB,CAAC,GAAG,QAAQ,IAAI,SAAS,EAAE,CAAC,CAAC;YACxE,QAAQ,CAAC,QAAQ,CAAC,CAAC,SAAS,CAAC,GAAG,OAAO,CAAC;QAC1C,CAAC,CAAC,CAAC,CAAC;QAEJ,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED;;OAEG;IACI,KAAK,CAAC,SAAS;;QACpB,IAAI,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE;YACxB,OAAa,IAAI,CAAC,KAAK,CACrB,kBACE,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAC7C,EAAE,EACF,EAAE,CACH,CAAC;SACH;QAED,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,KAAK,CAChC,iBACE,OAAA,IAAI,CAAC,MAAM,0CAAE,OAAO,EAClB,CAAC,CAAC,OAAO,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE;YACpD,CAAC,CAAC,EACN,EAAE,EACF,EAAE,CACH,CAAC;QAEF,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,GAAG,CAC9B,SAAS,CAAC,GAAG,CAAC,KAAK,EAAE,EAAE,YAAY,EAAE,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,CAClD,kBAAkB,IAAI,CAAC,iBAAiB,CAAC,YAAY,CAAC,EAAE,EACxD,EAAE,CACH,CAAC,CACH,CAAC;QAEF,OAAO,MAAM,CAAC,IAAI,EAAE,CAAC;IACvB,CAAC;IAED;;OAEG;IACI,KAAK,CAAC,gBAAgB,CAAC,KAAa;;QACzC,IAAI,aAAa,GAAG,EAAE,CAAC;QACvB,MAAM,UAAU,GAAG,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAEpC,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC,EAAE;YAC3B,aAAa,GAAG,GACd,IAAI,CAAC,eAAe,CAAC,UAAU,CAAC,CAAC,CAAC,CACpC,IACE,IAAI,CAAC,eAAe,CAAC,UAAU,CAAC,CAAC,CAAC,CACpC,IACE,IAAI,CAAC,eAAe,CAAC,UAAU,CAAC,CAAC,CAAC,CACpC,EAAE,CAAC;SACJ;aAAM,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC,WAAI,IAAI,CAAC,MAAM,0CAAE,OAAO,CAAA,EAAE;YAC1D,aAAa,GAAG,GACd,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAC1C,IACE,IAAI,CAAC,eAAe,CAAC,UAAU,CAAC,CAAC,CAAC,CACpC,IACE,IAAI,CAAC,eAAe,CAAC,UAAU,CAAC,CAAC,CAAC,CACpC,EAAE,CAAC;SACJ;aAAM;YACL,aAAa,GAAG,GACd,IAAI,CAAC,eAAe,CAAC,UAAU,CAAC,CAAC,CAAC,CACpC,IACE,IAAI,CAAC,eAAe,CAAC,UAAU,CAAC,CAAC,CAAC,CACpC,EAAE,CAAC;SACJ;QAED,MAAM,MAAM,GAAG,EAAE,CAAC;QAClB,MAAM,QAAQ,GAAU,MAAM,IAAI,CAAC,KAAK,CAAC,YAAY,aAAa,EAAE,EAAE,EAAE,CAAC,CAAC;QAE1E,KAAK,MAAM,MAAM,IAAI,QAAQ,EAAE;YAC7B,mEAAmE;YACnE,IAAI,MAAM,CAAC,QAAQ,KAAK,EAAE,EAAE;gBAC1B,MAAM;aACP;YACD,MAAM,CAAC,IAAI,CAAC;gBACV,IAAI,EAAE,MAAM,CAAC,QAAQ;gBACrB,IAAI,EAAE,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,SAAS,CAAC;aAC3C,CAAC,CAAC;SACJ;QAED,OAAO,MAAM,CAAC;IAChB,CAAC;IAED;;OAEG;IACI,KAAK,CAAC,gBAAgB,CAC3B,GAAW,EACX,MAAkB;QAElB,MAAM,MAAM,GAAG,EAAE,CAAC;QAClB,qCAAqC;QACrC,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,KAAK,CAC/B,kBAAkB,GAAG,EAAE,EACvB,MAAM,IAAI,EAAE,CACb,CAAC;QAEF,KAAK,MAAM,MAAM,IAAI,QAAQ,EAAE;YAC7B,mEAAmE;YACnE,IAAI,MAAM,CAAC,QAAQ,KAAK,EAAE,EAAE;gBAC1B,MAAM;aACP;YAED,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,MAAM,CAAC,QAAQ,EAAE,IAAI,EAAE,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;SACpF;QAED,OAAO,MAAM,CAAC;IAChB,CAAC;IAED;;OAEG;IACI,iBAAiB,CAAC,MAAc;;QACrC,UAAI,IAAI,CAAC,MAAM,0CAAE,OAAO,EAAE;YACxB,OAAO,GACL,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAC1C,IACE,IAAI,CAAC,eAAe,CAAC,MAAM,CAC7B,EAAE,CAAC;SACJ;aAAM;YACL,OAAO,GAAG,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,EAAE,CAAC;SAC1C;IACH,CAAC;IAED;;OAEG;IACI,eAAe,CAAC,UAAkB;QACvC,OAAO,KAAK,UAAU,IAAI,CAAC;IAC7B,CAAC;IAED;;OAEG;IACI,aAAa,CAAC,UAAkB;QACrC,OAAO,uBAAuB,CAAC,UAAU,CAAC,WAAW,EAAE,CAAC,IAAI,KAAK,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC;IAC9F,CAAC;IAED;;;OAGG;IACI,KAAK,CAAC,iBAAiB;QAC5B,OAAO,IAAI,CAAC,MAAM,CAAC,YAAY,KAAK,SAAS,CAAC;IAChD,CAAC;IAED;;;OAGG;IACI,KAAK,CAAC,MAAM,CAAC,SAAiB,EAAE,OAAsB;QAC3D,IAAI,CAAC,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,UAAoB,CAAC,EAAE;YAC/D,MAAM,IAAI,KAAK,CAAC,mCACd,IAAI,CAAC,MAAM,CAAC,UACd,EAAE,CAAC,CAAC;SACL;QAED,MAAM,aAAa,GAAG,GACpB,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,OAAO,GAAG,CAAC,CAAC,CAAC,EACpD,GAAG,SAAS,EAAE,CAAC;QAEf,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC;YAC3B,MAAM,IAAI,CAAC,aAAa,CAAC,aAAa,EAAE,OAAO,CAAC,KAAK,CAAC,GAAG,EAAE,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC;YAClF,MAAM,IAAI,CAAC,eAAe,CAAC,aAAa,CAAC,CAAC;QAE5C,MAAM,QAAQ,GAAG,GAAG,IAAI,CAAC,MAAM,CAAC,YAAY,IAAI,aAAa,MAAM,CAAC;QACpE,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,WAAW,CACpC,QAAQ,CACT,CAAC;QAEF,OAAO;YACL,2BAA2B,EAAE,IAAI,CAAC,MAAM,CAAC,2BAA2B;YACpE,OAAO;YACP,KAAK;YACL,WAAW,EAAE,IAAI;SAClB,CAAC;IACJ,CAAC;IAED;;OAEG;IACK,KAAK,CAAC,aAAa,CAAC,aAAqB,EAAE,GAAW,EAAE,MAAiB;QAC/E,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,gBAAgB,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;QAEvD,MAAM,IAAI,CAAC,0BAA0B,CAAC,aAAa,EAAE,GAAG,EAAE,MAAM,CAAC,CAAC;QAElE,OAAO,KAAK,CAAC;IACf,CAAC;IAED;;OAEG;IACK,KAAK,CAAC,eAAe,CAAC,aAAqB;QACjD,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,gBAAgB,CAAC,aAAa,CAAC,CAAC;QACzD,MAAM,OAAO,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAElD,MAAM,IAAI,CAAC,4BAA4B,CAAC,aAAa,EAAE,OAAO,CAAC,CAAC;QAEhE,OAAO,KAAK,CAAC;IACf,CAAC;IAED;;OAEG;IACK,KAAK,CAAC,WAAW,CACvB,QAAgB;QAEhB,IAAI,GAAG,CAAC;QACR,QAAQ,IAAI,CAAC,MAAM,CAAC,UAAU,EAAE;YAC9B,KAAK,OAAO;gBACV,GAAG,GAAG,MAAM,IAAI,CAAC,kBAAkB,CAAC,QAAQ,CAAC,CAAC;gBAC9C,MAAM;YACR,KAAK,IAAI;gBACP,GAAG,GAAG,MAAM,IAAI,CAAC,eAAe,CAAC,QAAQ,CAAC,CAAC;gBAC3C,MAAM;YACR;gBACE,MAAM,IAAI,KAAK,CAAC,mCACd,IAAI,CAAC,MAAM,CAAC,UACd,EAAE,CAAC,CAAC;SACP;QACD,OAAO,GAAG,CAAC;IACb,CAAC;IAED;;OAEG;IACK,KAAK,CAAC,kBAAkB,CAC9B,QAAgB;QAEhB,MAAM,OAAO,GAAa,EAAE,CAAC;QAC7B,MAAM,CAAC,SAAS,EAAE,OAAO,CAAC,GACxB,QAAQ,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAC7D,MAAM,UAAU,GACd,QAAQ,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,YAAY,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;QACpD,MAAM,IAAI,GAAG,IAAI,MAAM,CAAC,GAAG,UAAU,cAAc,EAAE,GAAG,CAAC,CAAC;QAE1D,MAAM,UAAU,GAAG,IAAI,yCAA0B,CAC/C,OAAO,EACP,IAAI,CAAC,MAAM,CAAC,QAAkB,CAC/B,CAAC;QACF,MAAM,UAAU,GAAG,IAAI,gCAAiB,CACtC,WAAW,OAAO,wBAAwB,EAC1C,UAAU,CACX,CAAC;QACF,MAAM,eAAe,GAAG,UAAU,CAAC,kBAAkB,CAAC,SAAS,CAAC,CAAC;QACjE,MAAM,SAAS,GAAG,eAAe,CAAC,aAAa,CAAC,EAAE,MAAM,EAAE,UAAU,EAAE,CAAC,CAAC;QACxE,IAAI,KAAK,EAAE,MAAM,IAAI,IAAI,SAAS,EAAE;YAClC,IAAI,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;gBACrC,MAAM,GAAG,GAAG,6CAA8B,CACxC;oBACE,aAAa,EAAE,SAAS;oBACxB,QAAQ,EAAE,IAAI,CAAC,IAAI;oBACnB,WAAW,EAAE,sCAAuB,CAAC,KAAK,CAAC,GAAG,CAAC;oBAC/C,QAAQ,EAAE,IAAI,IAAI,CAAC,IAAI,IAAI,EAAE,CAAC,OAAO,EAAE,CAAC;oBACxC,SAAS,EACP,IAAI,IAAI,CAAC,IAAI,IAAI,EAAE,CAAC,OAAO,EAAE,GAAG,IAAI,GAAG,EAAE,GAAG,EAAE,CAAC;oBACjD,QAAQ,EAAE,0BAAW,CAAC,KAAK;oBAC3B,OAAO,EAAE,YAAY;iBACtB,EACD,UAAU,CACX,CAAC,QAAQ,EAAE,CAAC;gBACb,OAAO,CAAC,IAAI,CAAC,WACX,OACF,0BACE,SACF,IAAI,IAAI,CAAC,IAAI,IAAI,GAAG,EAAE,CAAC,CAAC;aACzB;SACF;QACD,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE;YACxB,MAAM,IAAI,KAAK,CAAC,sDAAsD;gBACpE,gDAAgD,CAAC,CAAC;SACrD;QACD,OAAO,OAAO,CAAC;IACjB,CAAC;IAED;;OAEG;IACK,KAAK,CAAC,eAAe,CAC3B,QAAgB;QAEhB,MAAM,MAAM,GAAG,IAAI,cAAE,CAAC;YACpB,WAAW,EAAE;gBACX,WAAW,EAAE,IAAI,CAAC,MAAM,CAAC,MAAgB;gBACzC,eAAe,EAAE,IAAI,CAAC,MAAM,CAAC,SAAmB;aACjD;YACD,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,SAAS;SAC9B,CAAC,CAAC;QACH,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,QAAQ,CAAC,CAAC;QAC9B,MAAM,IAAI,GAAG,MAAM,MAAM,CAAC,aAAa,CAAC;YACtC,MAAM,EAAE,GAAG,CAAC,IAAI;YAChB,MAAM,EAAE,GAAG,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC;SAC9B,CAAC,CAAC;QACH,IAAI,IAAI,CAAC,QAAQ,KAAK,SAAS,EAAE;YAC/B,MAAM,IAAI,KAAK,CAAC,iCAAiC,QAAQ,EAAE,CAAC,CAAC;SAC9D;QACD,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,GAAG,CAC/B,IAAI,CAAC,QAAQ;aACV,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,GAAG,IAAI,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;aACnD,GAAG,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE;YAClB,MAAM,OAAO,GAAG,IAAI,4BAAgB,CAAC;gBACnC,MAAM,EAAE,GAAG,CAAC,IAAI;gBAChB,GAAG,EAAE,IAAI,CAAC,GAAG;aACd,CAAC,CAAC;YACH,OAAO,mCAAY,CAAC,MAAM,EAAE,OAAO,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QAC5D,CAAC,CAAC,CACL,CAAC;QACF,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE;YACxB,MAAM,IAAI,KAAK,CAAC,sDAAsD;gBACpE,gDAAgD,CAAC,CAAC;SACrD;QACD,OAAO,OAAO,CAAC;IACjB,CAAC;IAED;;;;;;;;;;;;;;;;OAgBG;IACK,KAAK,CAAC,0BAA0B,CAAC,aAAqB,EAAE,GAAW,EAAE,MAAiB;QAC5F,MAAM,IAAI,CAAC,KAAK,CACd;qBACe,aAAa;4BACN,IAAI,CAAC,MAAM,CAAC,oBAAoB,IAAI,IAAI,CAAC,MAAM,CAAC,YAAY,IAAI,aAAa;;YAE7F,GAAG;OACR,EACD,MAAM,CACP,CAAC;IACJ,CAAC;IAED;;;;;;;;;;;;;;;;OAgBG;IACK,KAAK,CAAC,4BAA4B,CAAC,aAAqB,EAAE,OAAe;QAC/E,MAAM,IAAI,CAAC,KAAK,CACd;qBACe,aAAa;4BACN,IAAI,CAAC,MAAM,CAAC,oBAAoB,IAAI,IAAI,CAAC,MAAM,CAAC,YAAY,IAAI,aAAa;;kBAEvF,OAAO,SAAS,aAAa;OACxC,EACD,EAAE,CACH,CAAC;IACJ,CAAC;CACF;AA1oBD,4CA0oBC"}
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": "0.31.18",
5
+ "version": "0.31.21",
6
6
  "license": "Apache-2.0",
7
7
  "repository": {
8
8
  "type": "git",
@@ -31,10 +31,10 @@
31
31
  "@aws-sdk/client-s3": "^3.49.0",
32
32
  "@aws-sdk/s3-request-presigner": "^3.49.0",
33
33
  "@azure/storage-blob": "^12.9.0",
34
- "@cubejs-backend/base-driver": "^0.31.16",
35
- "@cubejs-backend/jdbc-driver": "^0.31.16",
36
- "@cubejs-backend/schema-compiler": "^0.31.18",
37
- "@cubejs-backend/shared": "^0.31.15",
34
+ "@cubejs-backend/base-driver": "^0.31.19",
35
+ "@cubejs-backend/jdbc-driver": "^0.31.19",
36
+ "@cubejs-backend/schema-compiler": "^0.31.21",
37
+ "@cubejs-backend/shared": "^0.31.19",
38
38
  "inquirer": "^8.0.0",
39
39
  "node-fetch": "^2.6.1",
40
40
  "ramda": "^0.27.2",
@@ -61,5 +61,5 @@
61
61
  "jest": {
62
62
  "testEnvironment": "node"
63
63
  },
64
- "gitHead": "eabfd463da8562fa8dd84fb2409ab00454b8d784"
64
+ "gitHead": "c18ef3be37fa5e23abe59bf9743de1f427abb5b6"
65
65
  }