@cubejs-backend/snowflake-driver 1.7.15 → 1.7.16
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.
- package/dist/src/SnowflakeDriver.d.ts +19 -24
- package/dist/src/SnowflakeDriver.d.ts.map +1 -1
- package/dist/src/SnowflakeDriver.js +159 -113
- package/dist/src/SnowflakeDriver.js.map +1 -1
- package/dist/src/index.d.ts +2 -1
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/index.js +3 -15
- package/dist/src/index.js.map +1 -1
- package/package.json +8 -7
|
@@ -3,10 +3,14 @@
|
|
|
3
3
|
* @license Apache-2.0
|
|
4
4
|
* @fileoverview The `SnowflakeDriver` and related types declaration.
|
|
5
5
|
*/
|
|
6
|
-
|
|
6
|
+
/// <reference types="node" />
|
|
7
|
+
import { CancelablePromise } from '@cubejs-backend/shared';
|
|
8
|
+
import snowflake, { Column, Connection, RowStatement, StatementOption } from 'snowflake-sdk';
|
|
7
9
|
import { BaseDriver, DownloadQueryResultsOptions, DownloadQueryResultsResult, DownloadTableCSVData, DownloadTableMemoryData, DriverCapabilities, DriverInterface, StreamOptions, StreamTableDataWithTypes, TableStructure, UnloadOptions } from '@cubejs-backend/base-driver';
|
|
10
|
+
import { Readable } from 'stream';
|
|
8
11
|
import { HydrationMap } from './HydrationStream';
|
|
9
|
-
|
|
12
|
+
export declare const CANCEL_ACK_TIMEOUT: number;
|
|
13
|
+
export interface SnowflakeDriverExportAWS {
|
|
10
14
|
bucketType: 's3';
|
|
11
15
|
bucketName: string;
|
|
12
16
|
keyId?: string;
|
|
@@ -14,13 +18,13 @@ interface SnowflakeDriverExportAWS {
|
|
|
14
18
|
region: string;
|
|
15
19
|
integrationName?: string;
|
|
16
20
|
}
|
|
17
|
-
interface SnowflakeDriverExportGCS {
|
|
21
|
+
export interface SnowflakeDriverExportGCS {
|
|
18
22
|
bucketType: 'gcs';
|
|
19
23
|
integrationName: string;
|
|
20
24
|
bucketName: string;
|
|
21
25
|
credentials: any;
|
|
22
26
|
}
|
|
23
|
-
interface SnowflakeDriverExportAzure {
|
|
27
|
+
export interface SnowflakeDriverExportAzure {
|
|
24
28
|
bucketType: 'azure';
|
|
25
29
|
bucketName: string;
|
|
26
30
|
azureKey?: string;
|
|
@@ -40,7 +44,7 @@ interface SnowflakeDriverExportAzure {
|
|
|
40
44
|
tokenFilePath?: string;
|
|
41
45
|
}
|
|
42
46
|
export type SnowflakeDriverExportBucket = SnowflakeDriverExportAWS | SnowflakeDriverExportGCS | SnowflakeDriverExportAzure;
|
|
43
|
-
interface SnowflakeDriverOptions {
|
|
47
|
+
export interface SnowflakeDriverOptions {
|
|
44
48
|
host?: string;
|
|
45
49
|
account: string;
|
|
46
50
|
username: string;
|
|
@@ -70,17 +74,7 @@ interface SnowflakeDriverOptions {
|
|
|
70
74
|
exportBucketCsvEscapeSymbol?: string;
|
|
71
75
|
}
|
|
72
76
|
type SessionParameterValue = string | number | boolean | undefined;
|
|
73
|
-
/**
|
|
74
|
-
* Snowflake driver class.
|
|
75
|
-
*
|
|
76
|
-
* Attention:
|
|
77
|
-
* Snowflake is using UPPER_CASE for table, schema and column names
|
|
78
|
-
* Similar to data in response, column_name will be COLUMN_NAME
|
|
79
|
-
*/
|
|
80
77
|
export declare class SnowflakeDriver extends BaseDriver implements DriverInterface {
|
|
81
|
-
/**
|
|
82
|
-
* Returns default concurrency value.
|
|
83
|
-
*/
|
|
84
78
|
static getDefaultConcurrency(): number;
|
|
85
79
|
/**
|
|
86
80
|
* Returns the configurable driver options
|
|
@@ -90,9 +84,6 @@ export declare class SnowflakeDriver extends BaseDriver implements DriverInterfa
|
|
|
90
84
|
static driverEnvVariables(): string[];
|
|
91
85
|
protected connection: Promise<Connection> | null;
|
|
92
86
|
protected readonly config: SnowflakeDriverOptions;
|
|
93
|
-
/**
|
|
94
|
-
* Class constructor.
|
|
95
|
-
*/
|
|
96
87
|
constructor(config?: Partial<SnowflakeDriverOptions> & {
|
|
97
88
|
/**
|
|
98
89
|
* Data source name.
|
|
@@ -146,8 +137,9 @@ export declare class SnowflakeDriver extends BaseDriver implements DriverInterfa
|
|
|
146
137
|
protected getConnection(): Promise<Connection>;
|
|
147
138
|
/**
|
|
148
139
|
* Executes query and returns queried rows.
|
|
140
|
+
* Returns a cancelable promise that will abort the Snowflake statement on cancel.
|
|
149
141
|
*/
|
|
150
|
-
query<R = unknown>(query: string, values?: unknown[]):
|
|
142
|
+
query<R = unknown>(query: string, values?: unknown[]): CancelablePromise<R>;
|
|
151
143
|
/**
|
|
152
144
|
* Determines whether export bucket feature is configured or not.
|
|
153
145
|
*/
|
|
@@ -165,7 +157,7 @@ export declare class SnowflakeDriver extends BaseDriver implements DriverInterfa
|
|
|
165
157
|
/**
|
|
166
158
|
* Returns an array of queried fields meta info.
|
|
167
159
|
*/
|
|
168
|
-
queryColumnTypes(sql: string, params: unknown[]):
|
|
160
|
+
queryColumnTypes(sql: string, params: unknown[]): CancelablePromise<TableStructure>;
|
|
169
161
|
/**
|
|
170
162
|
* Unload data from a temp table to an export bucket.
|
|
171
163
|
*/
|
|
@@ -189,22 +181,25 @@ export declare class SnowflakeDriver extends BaseDriver implements DriverInterfa
|
|
|
189
181
|
* Executes a query and returns either query result memory data or
|
|
190
182
|
* query result stream, depending on options.
|
|
191
183
|
*/
|
|
192
|
-
downloadQueryResults(query: string, values: unknown[], options: DownloadQueryResultsOptions):
|
|
184
|
+
downloadQueryResults(query: string, values: unknown[], options: DownloadQueryResultsOptions): CancelablePromise<DownloadQueryResultsResult>;
|
|
193
185
|
/**
|
|
194
186
|
* Executes query and returns table memory data that includes rows
|
|
195
187
|
* and queried fields types.
|
|
196
188
|
*/
|
|
197
|
-
memory(query: string, values: unknown[]):
|
|
189
|
+
memory(query: string, values: unknown[]): CancelablePromise<DownloadTableMemoryData & {
|
|
198
190
|
types: TableStructure;
|
|
199
191
|
}>;
|
|
200
192
|
/**
|
|
201
193
|
* Returns stream table object that includes query result stream and
|
|
202
194
|
* queried fields types.
|
|
203
195
|
*/
|
|
204
|
-
stream(query: string, values: unknown[], _options: StreamOptions):
|
|
196
|
+
stream(query: string, values: unknown[], _options: StreamOptions): CancelablePromise<StreamTableDataWithTypes>;
|
|
197
|
+
protected buildRowStream(source: Readable, hydrationMap: HydrationMap): Readable;
|
|
205
198
|
private getTypes;
|
|
206
199
|
protected generateHydrationMap(columns: Column[]): HydrationMap;
|
|
207
|
-
protected
|
|
200
|
+
protected cancelStatement(stmt: RowStatement): Promise<void>;
|
|
201
|
+
protected executeCancelable<R>(connectionPromise: Promise<Connection>, options: Omit<StatementOption, 'complete'>, onComplete: (stmt: RowStatement, rows: any[] | undefined) => R | PromiseLike<R>): CancelablePromise<R>;
|
|
202
|
+
protected execute<R = unknown>(connection: Connection | Promise<Connection>, query: string, values?: unknown[], rehydrate?: boolean): CancelablePromise<R>;
|
|
208
203
|
informationSchemaQuery(): string;
|
|
209
204
|
release(): Promise<void>;
|
|
210
205
|
protected toGenericType(columnType: string, precision?: number | null, scale?: number | null): string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SnowflakeDriver.d.ts","sourceRoot":"","sources":["../../src/SnowflakeDriver.ts"],"names":[],"mappings":"AAAA;;;;GAIG;
|
|
1
|
+
{"version":3,"file":"SnowflakeDriver.d.ts","sourceRoot":"","sources":["../../src/SnowflakeDriver.ts"],"names":[],"mappings":"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"}
|
|
@@ -8,7 +8,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
8
8
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
9
9
|
};
|
|
10
10
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
11
|
-
exports.SnowflakeDriver = void 0;
|
|
11
|
+
exports.SnowflakeDriver = exports.CANCEL_ACK_TIMEOUT = void 0;
|
|
12
12
|
const shared_1 = require("@cubejs-backend/shared");
|
|
13
13
|
const snowflake_sdk_1 = __importDefault(require("snowflake-sdk"));
|
|
14
14
|
const base_driver_1 = require("@cubejs-backend/base-driver");
|
|
@@ -17,6 +17,13 @@ const crypto_1 = __importDefault(require("crypto"));
|
|
|
17
17
|
const HydrationStream_1 = require("./HydrationStream");
|
|
18
18
|
const type_parsers_1 = require("./type-parsers");
|
|
19
19
|
const SUPPORTED_BUCKET_TYPES = ['s3', 'gcs', 'azure'];
|
|
20
|
+
exports.CANCEL_ACK_TIMEOUT = 30 * 1000;
|
|
21
|
+
const FETCH_AS_STRING = [
|
|
22
|
+
// It's not possible to store big numbers in Number, It's a common way how to handle it in Cube
|
|
23
|
+
'Number',
|
|
24
|
+
// VARIANT, OBJECT, ARRAY are mapped to JSON type in Snowflake SDK
|
|
25
|
+
'JSON',
|
|
26
|
+
];
|
|
20
27
|
const SnowflakeToGenericType = {
|
|
21
28
|
// It's a limitation for now, because anyway we don't work with JSON objects in Cube Store.
|
|
22
29
|
object: 'HLL_SNOWFLAKE',
|
|
@@ -26,17 +33,7 @@ const SnowflakeToGenericType = {
|
|
|
26
33
|
fixed: 'decimal',
|
|
27
34
|
timestamp_ntz: 'timestamp'
|
|
28
35
|
};
|
|
29
|
-
/**
|
|
30
|
-
* Snowflake driver class.
|
|
31
|
-
*
|
|
32
|
-
* Attention:
|
|
33
|
-
* Snowflake is using UPPER_CASE for table, schema and column names
|
|
34
|
-
* Similar to data in response, column_name will be COLUMN_NAME
|
|
35
|
-
*/
|
|
36
36
|
class SnowflakeDriver extends base_driver_1.BaseDriver {
|
|
37
|
-
/**
|
|
38
|
-
* Returns default concurrency value.
|
|
39
|
-
*/
|
|
40
37
|
static getDefaultConcurrency() {
|
|
41
38
|
return 8;
|
|
42
39
|
}
|
|
@@ -67,9 +64,6 @@ class SnowflakeDriver extends base_driver_1.BaseDriver {
|
|
|
67
64
|
}
|
|
68
65
|
connection = null;
|
|
69
66
|
config;
|
|
70
|
-
/**
|
|
71
|
-
* Class constructor.
|
|
72
|
-
*/
|
|
73
67
|
constructor(config = {}) {
|
|
74
68
|
super({
|
|
75
69
|
testConnectionTimeout: config.testConnectionTimeout,
|
|
@@ -325,9 +319,10 @@ class SnowflakeDriver extends base_driver_1.BaseDriver {
|
|
|
325
319
|
}
|
|
326
320
|
/**
|
|
327
321
|
* Executes query and returns queried rows.
|
|
322
|
+
* Returns a cancelable promise that will abort the Snowflake statement on cancel.
|
|
328
323
|
*/
|
|
329
|
-
|
|
330
|
-
return this.
|
|
324
|
+
query(query, values) {
|
|
325
|
+
return this.execute(this.getConnection(), query, values);
|
|
331
326
|
}
|
|
332
327
|
/**
|
|
333
328
|
* Determines whether export bucket feature is configured or not.
|
|
@@ -402,26 +397,12 @@ class SnowflakeDriver extends base_driver_1.BaseDriver {
|
|
|
402
397
|
/**
|
|
403
398
|
* Returns an array of queried fields meta info.
|
|
404
399
|
*/
|
|
405
|
-
|
|
406
|
-
|
|
407
|
-
return new Promise((resolve, reject) => connection.execute({
|
|
400
|
+
queryColumnTypes(sql, params) {
|
|
401
|
+
return this.executeCancelable(this.getConnection(), {
|
|
408
402
|
sqlText: `${sql} LIMIT 0`,
|
|
409
403
|
binds: params,
|
|
410
|
-
fetchAsString:
|
|
411
|
-
|
|
412
|
-
'Number',
|
|
413
|
-
// VARIANT, OBJECT, ARRAY are mapped to JSON type in Snowflake SDK
|
|
414
|
-
'JSON'
|
|
415
|
-
],
|
|
416
|
-
complete: (err, stmt) => {
|
|
417
|
-
if (err) {
|
|
418
|
-
reject(err);
|
|
419
|
-
return;
|
|
420
|
-
}
|
|
421
|
-
const types = this.getTypes(stmt);
|
|
422
|
-
resolve(types);
|
|
423
|
-
},
|
|
424
|
-
}));
|
|
404
|
+
fetchAsString: FETCH_AS_STRING,
|
|
405
|
+
}, (stmt) => this.getTypes(stmt));
|
|
425
406
|
}
|
|
426
407
|
/**
|
|
427
408
|
* Unload data from a temp table to an export bucket.
|
|
@@ -557,7 +538,7 @@ class SnowflakeDriver extends base_driver_1.BaseDriver {
|
|
|
557
538
|
* Executes a query and returns either query result memory data or
|
|
558
539
|
* query result stream, depending on options.
|
|
559
540
|
*/
|
|
560
|
-
|
|
541
|
+
downloadQueryResults(query, values, options) {
|
|
561
542
|
if (!options.streamImport) {
|
|
562
543
|
return this.memory(query, values);
|
|
563
544
|
}
|
|
@@ -569,81 +550,80 @@ class SnowflakeDriver extends base_driver_1.BaseDriver {
|
|
|
569
550
|
* Executes query and returns table memory data that includes rows
|
|
570
551
|
* and queried fields types.
|
|
571
552
|
*/
|
|
572
|
-
|
|
573
|
-
|
|
574
|
-
return new Promise((resolve, reject) => connection.execute({
|
|
553
|
+
memory(query, values) {
|
|
554
|
+
return this.executeCancelable(this.getConnection(), {
|
|
575
555
|
sqlText: query,
|
|
576
556
|
binds: values,
|
|
577
|
-
fetchAsString:
|
|
578
|
-
|
|
579
|
-
|
|
580
|
-
|
|
581
|
-
|
|
582
|
-
|
|
583
|
-
|
|
584
|
-
|
|
585
|
-
|
|
586
|
-
return;
|
|
587
|
-
}
|
|
588
|
-
const hydrationMap = this.generateHydrationMap(stmt.getColumns() ?? []);
|
|
589
|
-
const types = this.getTypes(stmt);
|
|
590
|
-
if (rows?.length && Object.keys(hydrationMap).length) {
|
|
591
|
-
for (const row of rows) {
|
|
592
|
-
for (const [field, toValue] of Object.entries(hydrationMap)) {
|
|
593
|
-
if (row.hasOwnProperty(field)) {
|
|
594
|
-
row[field] = toValue(row[field]);
|
|
595
|
-
}
|
|
557
|
+
fetchAsString: FETCH_AS_STRING,
|
|
558
|
+
}, (stmt, rows) => {
|
|
559
|
+
const hydrationMap = this.generateHydrationMap(stmt.getColumns() ?? []);
|
|
560
|
+
const types = this.getTypes(stmt);
|
|
561
|
+
if (rows?.length && Object.keys(hydrationMap).length) {
|
|
562
|
+
for (const row of rows) {
|
|
563
|
+
for (const [field, toValue] of Object.entries(hydrationMap)) {
|
|
564
|
+
if (row.hasOwnProperty(field)) {
|
|
565
|
+
row[field] = toValue(row[field]);
|
|
596
566
|
}
|
|
597
567
|
}
|
|
598
568
|
}
|
|
599
|
-
resolve({ types, rows: rows || [] });
|
|
600
569
|
}
|
|
601
|
-
|
|
570
|
+
return { types, rows: rows || [] };
|
|
571
|
+
});
|
|
602
572
|
}
|
|
603
573
|
/**
|
|
604
574
|
* Returns stream table object that includes query result stream and
|
|
605
575
|
* queried fields types.
|
|
606
576
|
*/
|
|
607
|
-
|
|
608
|
-
const
|
|
609
|
-
const stmt = await new Promise((resolve, reject) => connection.execute({
|
|
577
|
+
stream(query, values, _options) {
|
|
578
|
+
const stmtPromise = this.executeCancelable(this.getConnection(), {
|
|
610
579
|
sqlText: query,
|
|
611
580
|
binds: values,
|
|
612
|
-
fetchAsString:
|
|
613
|
-
// It's not possible to store big numbers in Number, It's a common way how to handle it in Cube
|
|
614
|
-
'Number',
|
|
615
|
-
// VARIANT, OBJECT, ARRAY are mapped to JSON type in Snowflake SDK
|
|
616
|
-
'JSON'
|
|
617
|
-
],
|
|
581
|
+
fetchAsString: FETCH_AS_STRING,
|
|
618
582
|
streamResult: true,
|
|
619
|
-
|
|
620
|
-
|
|
621
|
-
|
|
622
|
-
|
|
623
|
-
|
|
624
|
-
|
|
625
|
-
|
|
626
|
-
|
|
627
|
-
|
|
628
|
-
|
|
629
|
-
if (Object.keys(hydrationMap).length) {
|
|
630
|
-
const rowStream = new HydrationStream_1.HydrationStream(hydrationMap);
|
|
631
|
-
stmt.streamRows().pipe(rowStream);
|
|
583
|
+
}, (stmt) => stmt);
|
|
584
|
+
// Reused by release() below. It is idempotent and a no-op once the
|
|
585
|
+
// statement settled, so a stream that finished normally is never
|
|
586
|
+
// needlessly aborted, and release() + cancel() cannot double-abort.
|
|
587
|
+
const abort = stmtPromise.cancel;
|
|
588
|
+
const promise = stmtPromise.then((stmt) => {
|
|
589
|
+
const types = this.getTypes(stmt);
|
|
590
|
+
const hydrationMap = this.generateHydrationMap(stmt.getColumns() ?? []);
|
|
591
|
+
const sourceStream = stmt.streamRows();
|
|
592
|
+
const rowStream = this.buildRowStream(sourceStream, hydrationMap);
|
|
632
593
|
return {
|
|
633
594
|
rowStream,
|
|
634
595
|
types,
|
|
635
596
|
release: async () => {
|
|
636
|
-
//
|
|
637
|
-
|
|
597
|
+
// No-op when the statement already completed, which is the normal
|
|
598
|
+
// path: QueryCache's streamHandler calls release() from
|
|
599
|
+
// rowStream.once('end'). Only reaches Snowflake when the consumer
|
|
600
|
+
// bailed out before the statement finished.
|
|
601
|
+
await abort();
|
|
602
|
+
// .pipe() does not propagate destroy() upstream, so stop the SDK's
|
|
603
|
+
// pull-based chunk downloader explicitly.
|
|
604
|
+
if (!sourceStream.readableEnded) {
|
|
605
|
+
sourceStream.destroy();
|
|
606
|
+
}
|
|
607
|
+
if (rowStream !== sourceStream && !rowStream.readableEnded) {
|
|
608
|
+
rowStream.destroy();
|
|
609
|
+
}
|
|
610
|
+
},
|
|
638
611
|
};
|
|
612
|
+
});
|
|
613
|
+
promise.cancel = abort;
|
|
614
|
+
return promise;
|
|
615
|
+
}
|
|
616
|
+
buildRowStream(source, hydrationMap) {
|
|
617
|
+
if (!Object.keys(hydrationMap).length) {
|
|
618
|
+
return source;
|
|
639
619
|
}
|
|
640
|
-
|
|
641
|
-
|
|
642
|
-
|
|
643
|
-
|
|
644
|
-
|
|
645
|
-
|
|
646
|
-
|
|
620
|
+
const rowStream = new HydrationStream_1.HydrationStream(hydrationMap);
|
|
621
|
+
// Attached before pipe() resumes the source, so no failure can land before
|
|
622
|
+
// anyone is listening. destroy() on an already destroyed stream is a no-op,
|
|
623
|
+
// which is what keeps a failure arriving after release() silent instead of
|
|
624
|
+
// surfacing on a stream the consumer has already finished with.
|
|
625
|
+
source.on('error', (err) => rowStream.destroy(err));
|
|
626
|
+
return source.pipe(rowStream);
|
|
647
627
|
}
|
|
648
628
|
getTypes(stmt) {
|
|
649
629
|
return (stmt.getColumns() ?? []).map((column) => {
|
|
@@ -682,36 +662,102 @@ class SnowflakeDriver extends base_driver_1.BaseDriver {
|
|
|
682
662
|
}
|
|
683
663
|
return hydrationMap;
|
|
684
664
|
}
|
|
685
|
-
|
|
686
|
-
return new Promise((resolve
|
|
687
|
-
|
|
688
|
-
|
|
689
|
-
|
|
690
|
-
//
|
|
691
|
-
|
|
692
|
-
|
|
693
|
-
'JSON'
|
|
694
|
-
],
|
|
695
|
-
complete: (err, stmt, rows) => {
|
|
696
|
-
if (err) {
|
|
697
|
-
reject(err);
|
|
665
|
+
cancelStatement(stmt) {
|
|
666
|
+
return new Promise((resolve) => {
|
|
667
|
+
let timer;
|
|
668
|
+
let settled = false;
|
|
669
|
+
const finish = (warning, error) => {
|
|
670
|
+
// The SDK is free to call back after the timeout has already given up,
|
|
671
|
+
// and a synchronous throw can land after the callback fired.
|
|
672
|
+
if (settled) {
|
|
698
673
|
return;
|
|
699
674
|
}
|
|
700
|
-
|
|
701
|
-
|
|
702
|
-
|
|
703
|
-
|
|
704
|
-
|
|
705
|
-
|
|
706
|
-
|
|
707
|
-
|
|
675
|
+
settled = true;
|
|
676
|
+
if (timer) {
|
|
677
|
+
clearTimeout(timer);
|
|
678
|
+
}
|
|
679
|
+
if (warning && this.logger) {
|
|
680
|
+
this.logger(warning, {
|
|
681
|
+
queryId: stmt.getQueryId(),
|
|
682
|
+
...(error !== undefined && {
|
|
683
|
+
error: (error?.stack || error?.message || error)?.toString(),
|
|
684
|
+
}),
|
|
685
|
+
});
|
|
686
|
+
}
|
|
687
|
+
resolve();
|
|
688
|
+
};
|
|
689
|
+
timer = setTimeout(() => finish('Snowflake statement cancel timeout'), exports.CANCEL_ACK_TIMEOUT);
|
|
690
|
+
try {
|
|
691
|
+
stmt.cancel((err) => finish(err ? 'Snowflake statement cancel error' : undefined, err));
|
|
692
|
+
}
|
|
693
|
+
catch (e) {
|
|
694
|
+
finish('Snowflake statement cancel error', e);
|
|
695
|
+
}
|
|
696
|
+
});
|
|
697
|
+
}
|
|
698
|
+
executeCancelable(connectionPromise, options, onComplete) {
|
|
699
|
+
let stmt;
|
|
700
|
+
let cancelled = false;
|
|
701
|
+
let settled = false;
|
|
702
|
+
const promise = (async () => {
|
|
703
|
+
const connection = await connectionPromise;
|
|
704
|
+
if (cancelled) {
|
|
705
|
+
// Cancelled while we were still connecting - never issue the statement.
|
|
706
|
+
throw new Error('Query was cancelled');
|
|
707
|
+
}
|
|
708
|
+
return new Promise((resolve, reject) => {
|
|
709
|
+
stmt = connection.execute({
|
|
710
|
+
...options,
|
|
711
|
+
complete: (err, statement, rows) => {
|
|
712
|
+
settled = true;
|
|
713
|
+
if (cancelled) {
|
|
714
|
+
// Snowflake reports its own `SQL execution canceled.` here.
|
|
715
|
+
// Normalize it so callers see one consistent message, and so a
|
|
716
|
+
// query that happened to succeed microseconds before the abort
|
|
717
|
+
// landed does not return a result nobody is waiting for anymore.
|
|
718
|
+
reject(new Error('Query was cancelled'));
|
|
719
|
+
return;
|
|
720
|
+
}
|
|
721
|
+
if (err) {
|
|
722
|
+
reject(err);
|
|
723
|
+
return;
|
|
724
|
+
}
|
|
725
|
+
resolve(onComplete(statement, rows));
|
|
726
|
+
},
|
|
727
|
+
});
|
|
728
|
+
});
|
|
729
|
+
})();
|
|
730
|
+
promise.cancel = async () => {
|
|
731
|
+
if (cancelled || settled) {
|
|
732
|
+
return;
|
|
733
|
+
}
|
|
734
|
+
cancelled = true;
|
|
735
|
+
if (stmt) {
|
|
736
|
+
await this.cancelStatement(stmt);
|
|
737
|
+
}
|
|
738
|
+
};
|
|
739
|
+
return promise;
|
|
740
|
+
}
|
|
741
|
+
execute(connection, query, values, rehydrate = true) {
|
|
742
|
+
return this.executeCancelable(Promise.resolve(connection), {
|
|
743
|
+
sqlText: query,
|
|
744
|
+
binds: values,
|
|
745
|
+
fetchAsString: FETCH_AS_STRING,
|
|
746
|
+
}, (stmt, rows) => {
|
|
747
|
+
if (rehydrate && rows?.length) {
|
|
748
|
+
const hydrationMap = this.generateHydrationMap(stmt.getColumns() ?? []);
|
|
749
|
+
if (Object.keys(hydrationMap).length) {
|
|
750
|
+
for (const row of rows) {
|
|
751
|
+
for (const [field, toValue] of Object.entries(hydrationMap)) {
|
|
752
|
+
if (row.hasOwnProperty(field)) {
|
|
753
|
+
row[field] = toValue(row[field]);
|
|
708
754
|
}
|
|
709
755
|
}
|
|
710
756
|
}
|
|
711
757
|
}
|
|
712
|
-
resolve(rows);
|
|
713
758
|
}
|
|
714
|
-
|
|
759
|
+
return rows;
|
|
760
|
+
});
|
|
715
761
|
}
|
|
716
762
|
informationSchemaQuery() {
|
|
717
763
|
return `
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SnowflakeDriver.js","sourceRoot":"","sources":["../../src/SnowflakeDriver.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"SnowflakeDriver.js","sourceRoot":"","sources":["../../src/SnowflakeDriver.ts"],"names":[],"mappings":"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"}
|
package/dist/src/index.d.ts
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { SnowflakeDriver } from './SnowflakeDriver';
|
|
2
|
-
export
|
|
2
|
+
export { SnowflakeDriver } from './SnowflakeDriver';
|
|
3
|
+
export type { SnowflakeDriverOptions, SnowflakeDriverExportBucket, SnowflakeDriverExportAWS, SnowflakeDriverExportGCS, SnowflakeDriverExportAzure, } from './SnowflakeDriver';
|
|
3
4
|
export default SnowflakeDriver;
|
|
4
5
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/src/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAEpD,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAEpD,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAEpD,YAAY,EACV,sBAAsB,EACtB,2BAA2B,EAC3B,wBAAwB,EACxB,wBAAwB,EACxB,0BAA0B,GAC3B,MAAM,mBAAmB,CAAC;AAE3B,eAAe,eAAe,CAAC"}
|
package/dist/src/index.js
CHANGED
|
@@ -1,20 +1,8 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
-
if (k2 === undefined) k2 = k;
|
|
4
|
-
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
-
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
-
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
-
}
|
|
8
|
-
Object.defineProperty(o, k2, desc);
|
|
9
|
-
}) : (function(o, m, k, k2) {
|
|
10
|
-
if (k2 === undefined) k2 = k;
|
|
11
|
-
o[k2] = m[k];
|
|
12
|
-
}));
|
|
13
|
-
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
-
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
-
};
|
|
16
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.SnowflakeDriver = void 0;
|
|
17
4
|
const SnowflakeDriver_1 = require("./SnowflakeDriver");
|
|
18
|
-
|
|
5
|
+
var SnowflakeDriver_2 = require("./SnowflakeDriver");
|
|
6
|
+
Object.defineProperty(exports, "SnowflakeDriver", { enumerable: true, get: function () { return SnowflakeDriver_2.SnowflakeDriver; } });
|
|
19
7
|
exports.default = SnowflakeDriver_1.SnowflakeDriver;
|
|
20
8
|
//# sourceMappingURL=index.js.map
|
package/dist/src/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";;;AAAA,uDAAoD;AAEpD,qDAAoD;AAA3C,kHAAA,eAAe,OAAA;AAUxB,kBAAe,iCAAe,CAAC"}
|
package/package.json
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
"name": "@cubejs-backend/snowflake-driver",
|
|
3
3
|
"description": "Cube.js Snowflake database driver",
|
|
4
4
|
"author": "Cube Dev, Inc.",
|
|
5
|
-
"version": "1.7.
|
|
5
|
+
"version": "1.7.16",
|
|
6
6
|
"repository": {
|
|
7
7
|
"type": "git",
|
|
8
8
|
"url": "https://github.com/cube-js/cube.git",
|
|
@@ -21,15 +21,16 @@
|
|
|
21
21
|
"build": "rm -rf dist && npm run tsc",
|
|
22
22
|
"tsc": "tsc",
|
|
23
23
|
"watch": "tsc -w",
|
|
24
|
-
"
|
|
25
|
-
"integration
|
|
24
|
+
"unit": "vitest run test/unit",
|
|
25
|
+
"integration": "npm run integration:snowflake",
|
|
26
|
+
"integration:snowflake": "vitest run test/SnowflakeDriver.test.ts",
|
|
26
27
|
"lint": "eslint src/* --ext .ts",
|
|
27
28
|
"lint:fix": "eslint --fix src/* --ext .ts"
|
|
28
29
|
},
|
|
29
30
|
"dependencies": {
|
|
30
31
|
"@aws-sdk/client-s3": "^3.726.0",
|
|
31
|
-
"@cubejs-backend/base-driver": "1.7.
|
|
32
|
-
"@cubejs-backend/shared": "1.7.
|
|
32
|
+
"@cubejs-backend/base-driver": "1.7.16",
|
|
33
|
+
"@cubejs-backend/shared": "1.7.16",
|
|
33
34
|
"snowflake-sdk": "^2.4.0"
|
|
34
35
|
},
|
|
35
36
|
"license": "Apache-2.0",
|
|
@@ -40,9 +41,9 @@
|
|
|
40
41
|
"extends": "../cubejs-linter"
|
|
41
42
|
},
|
|
42
43
|
"devDependencies": {
|
|
43
|
-
"@cubejs-backend/linter": "1.7.
|
|
44
|
+
"@cubejs-backend/linter": "1.7.16",
|
|
44
45
|
"typescript": "~5.2.2",
|
|
45
46
|
"vitest": "^4"
|
|
46
47
|
},
|
|
47
|
-
"gitHead": "
|
|
48
|
+
"gitHead": "a433127f6ed00de590a0a37faada816f4bb77b08"
|
|
48
49
|
}
|