@cubejs-backend/redshift-driver 0.36.6 → 0.36.7
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.
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
* @fileoverview The `RedshiftDriver` and related types declaration.
|
|
5
5
|
*/
|
|
6
6
|
import { PostgresDriver, PostgresDriverConfiguration } from '@cubejs-backend/postgres-driver';
|
|
7
|
-
import { DownloadTableCSVData, DriverCapabilities, UnloadOptions } from '@cubejs-backend/base-driver';
|
|
7
|
+
import { DownloadTableCSVData, DriverCapabilities, StreamOptions, StreamTableDataWithTypes, UnloadOptions } from '@cubejs-backend/base-driver';
|
|
8
8
|
interface RedshiftDriverExportRequiredAWS {
|
|
9
9
|
bucketType: 's3';
|
|
10
10
|
bucketName: string;
|
|
@@ -54,6 +54,9 @@ export declare class RedshiftDriver extends PostgresDriver<RedshiftDriverConfigu
|
|
|
54
54
|
* @override
|
|
55
55
|
*/
|
|
56
56
|
protected getInitialConfiguration(dataSource: string): Partial<RedshiftDriverConfiguration>;
|
|
57
|
+
protected static checkValuesLimit(values?: unknown[]): void;
|
|
58
|
+
stream(query: string, values: unknown[], options: StreamOptions): Promise<StreamTableDataWithTypes>;
|
|
59
|
+
protected queryResponse(query: string, values: unknown[]): Promise<import("pg").QueryResult<any>>;
|
|
57
60
|
protected getExportBucket(dataSource: string): RedshiftDriverExportAWS | undefined;
|
|
58
61
|
loadUserDefinedTypes(): Promise<void>;
|
|
59
62
|
isUnloadSupported(): Promise<boolean>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RedshiftDriver.d.ts","sourceRoot":"","sources":["../../src/RedshiftDriver.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,EAAE,cAAc,EAAE,2BAA2B,EAAE,MAAM,iCAAiC,CAAC;AAC9F,OAAO,
|
|
1
|
+
{"version":3,"file":"RedshiftDriver.d.ts","sourceRoot":"","sources":["../../src/RedshiftDriver.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,EAAE,cAAc,EAAE,2BAA2B,EAAE,MAAM,iCAAiC,CAAC;AAC9F,OAAO,EACL,oBAAoB,EACpB,kBAAkB,EAClB,aAAa,EACb,wBAAwB,EACxB,aAAa,EACd,MAAM,6BAA6B,CAAC;AAGrC,UAAU,+BAA+B;IACvC,UAAU,EAAE,IAAI,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,UAAU,0BAA2B,SAAQ,+BAA+B;IAI1E,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,UAAU,gCAAiC,SAAQ,+BAA+B;IAChF,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,UAAU,uBAAwB,SAAQ,0BAA0B,EAAE,gCAAgC;CACrG;AAED,MAAM,WAAW,2BAA4B,SAAQ,2BAA2B;IAC9E,YAAY,CAAC,EAAE,uBAAuB,CAAC;CACxC;AAED;;GAEG;AACH,qBAAa,cAAe,SAAQ,cAAc,CAAC,2BAA2B,CAAC;IAC7E;;OAEG;WACW,qBAAqB,IAAI,MAAM;IAI7C;;OAEG;gBAED,OAAO,GAAE,2BAA2B,GAAG;QACrC;;WAEG;QACH,UAAU,CAAC,EAAE,MAAM,CAAC;QAEpB;;WAEG;QACH,WAAW,CAAC,EAAE,MAAM,CAAC;QAErB;;;WAGG;QACH,qBAAqB,CAAC,EAAE,MAAM,CAAC;KAC3B;IAKR,SAAS,CAAC,gBAAgB;IAI1B,SAAS,CAAC,gBAAgB;IAI1B;;OAEG;IACH,SAAS,CAAC,uBAAuB,CAC/B,UAAU,EAAE,MAAM,GACjB,OAAO,CAAC,2BAA2B,CAAC;IAQvC,SAAS,CAAC,MAAM,CAAC,gBAAgB,CAAC,MAAM,CAAC,EAAE,OAAO,EAAE;IAU9B,MAAM,CAC1B,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,OAAO,EAAE,EACjB,OAAO,EAAE,aAAa,GACrB,OAAO,CAAC,wBAAwB,CAAC;cAMX,aAAa,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE;IAMvE,SAAS,CAAC,eAAe,CACvB,UAAU,EAAE,MAAM,GACjB,uBAAuB,GAAG,SAAS;IAqDzB,oBAAoB,IAAI,OAAO,CAAC,IAAI,CAAC;IAIrC,iBAAiB;IAQjB,MAAM,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,aAAa,GAAG,OAAO,CAAC,oBAAoB,CAAC;IAsGtF,YAAY,IAAI,kBAAkB;CAK1C"}
|
|
@@ -44,6 +44,23 @@ class RedshiftDriver extends postgres_driver_1.PostgresDriver {
|
|
|
44
44
|
exportBucket: this.getExportBucket(dataSource),
|
|
45
45
|
};
|
|
46
46
|
}
|
|
47
|
+
static checkValuesLimit(values) {
|
|
48
|
+
// Redshift server is not exactly compatible with PostgreSQL protocol
|
|
49
|
+
// And breaks after 32767 parameter values with `there is no parameter $-32768`
|
|
50
|
+
// This is a bug/misbehaviour on server side, nothing we can do besides generate a more meaningful error
|
|
51
|
+
const length = (values?.length ?? 0);
|
|
52
|
+
if (length >= 32768) {
|
|
53
|
+
throw new Error(`Redshift server does not support more than 32767 parameters, but ${length} passed`);
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
async stream(query, values, options) {
|
|
57
|
+
RedshiftDriver.checkValuesLimit(values);
|
|
58
|
+
return super.stream(query, values, options);
|
|
59
|
+
}
|
|
60
|
+
async queryResponse(query, values) {
|
|
61
|
+
RedshiftDriver.checkValuesLimit(values);
|
|
62
|
+
return super.queryResponse(query, values);
|
|
63
|
+
}
|
|
47
64
|
getExportBucket(dataSource) {
|
|
48
65
|
const supportedBucketTypes = ['s3'];
|
|
49
66
|
const requiredExportBucket = {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RedshiftDriver.js","sourceRoot":"","sources":["../../src/RedshiftDriver.ts"],"names":[],"mappings":";AAAA;;;;GAIG;;;;;;AAEH,mDAAgD;AAChD,qEAA8F;
|
|
1
|
+
{"version":3,"file":"RedshiftDriver.js","sourceRoot":"","sources":["../../src/RedshiftDriver.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
"name": "@cubejs-backend/redshift-driver",
|
|
3
3
|
"description": "Cube.js Redshift database driver",
|
|
4
4
|
"author": "Cube Dev, Inc.",
|
|
5
|
-
"version": "0.36.
|
|
5
|
+
"version": "0.36.7",
|
|
6
6
|
"repository": {
|
|
7
7
|
"type": "git",
|
|
8
8
|
"url": "https://github.com/cube-js/cube.git",
|
|
@@ -26,7 +26,7 @@
|
|
|
26
26
|
},
|
|
27
27
|
"dependencies": {
|
|
28
28
|
"@cubejs-backend/base-driver": "^0.36.5",
|
|
29
|
-
"@cubejs-backend/postgres-driver": "^0.36.
|
|
29
|
+
"@cubejs-backend/postgres-driver": "^0.36.7",
|
|
30
30
|
"@cubejs-backend/shared": "^0.36.5"
|
|
31
31
|
},
|
|
32
32
|
"license": "Apache-2.0",
|
|
@@ -43,5 +43,5 @@
|
|
|
43
43
|
"eslintConfig": {
|
|
44
44
|
"extends": "../cubejs-linter"
|
|
45
45
|
},
|
|
46
|
-
"gitHead": "
|
|
46
|
+
"gitHead": "59dd29e564dc91fc587b4f13ec95a2e8b075b865"
|
|
47
47
|
}
|