@cubejs-backend/duckdb-driver 0.34.21 → 0.34.23
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,7 +7,7 @@ export type DuckDBDriverConfiguration = {
|
|
|
7
7
|
schema?: string;
|
|
8
8
|
};
|
|
9
9
|
type InitPromise = {
|
|
10
|
-
|
|
10
|
+
defaultConnection: Connection;
|
|
11
11
|
db: Database;
|
|
12
12
|
};
|
|
13
13
|
export declare class DuckDBDriver extends BaseDriver implements DriverInterface {
|
|
@@ -19,9 +19,8 @@ export declare class DuckDBDriver extends BaseDriver implements DriverInterface
|
|
|
19
19
|
protected init(): Promise<InitPromise>;
|
|
20
20
|
informationSchemaQuery(): string;
|
|
21
21
|
getSchemasQuery(): string;
|
|
22
|
-
protected
|
|
22
|
+
protected getInitiatedState(): Promise<InitPromise>;
|
|
23
23
|
static dialectClass(): typeof DuckDBQuery;
|
|
24
|
-
protected handleQuery<R>(connection: Connection, query: string, values?: unknown[], _options?: QueryOptions): Promise<R[]>;
|
|
25
24
|
query<R = unknown>(query: string, values?: unknown[], _options?: QueryOptions): Promise<R[]>;
|
|
26
25
|
stream(query: string, values: unknown[], { highWaterMark }: StreamOptions): Promise<StreamTableData>;
|
|
27
26
|
testConnection(): Promise<void>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DuckDBDriver.d.ts","sourceRoot":"","sources":["../../src/DuckDBDriver.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,UAAU,EACV,eAAe,EACf,aAAa,EACb,YAAY,EACZ,eAAe,EACf,mBAAmB,EACpB,MAAM,6BAA6B,CAAC;
|
|
1
|
+
{"version":3,"file":"DuckDBDriver.d.ts","sourceRoot":"","sources":["../../src/DuckDBDriver.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,UAAU,EACV,eAAe,EACf,aAAa,EACb,YAAY,EACZ,eAAe,EACf,mBAAmB,EACpB,MAAM,6BAA6B,CAAC;AAIrC,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,QAAQ,CAAC;AAE9C,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAG5C,MAAM,MAAM,yBAAyB,GAAG;IACtC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB,CAAC;AAEF,KAAK,WAAW,GAAG;IACjB,iBAAiB,EAAE,UAAU,CAAC;IAC9B,EAAE,EAAE,QAAQ,CAAC;CACd,CAAC;AASF,qBAAa,YAAa,SAAQ,UAAW,YAAW,eAAe;IAMnE,SAAS,CAAC,QAAQ,CAAC,MAAM,EAAE,yBAAyB;IALtD,SAAS,CAAC,WAAW,EAAE,OAAO,CAAC,WAAW,CAAC,GAAG,IAAI,CAAQ;IAE1D,OAAO,CAAC,MAAM,CAAS;gBAGF,MAAM,GAAE,yBAA8B;IAOpD,aAAa,CAAC,UAAU,EAAE,MAAM,GAAG,mBAAmB;cAQ7C,IAAI,IAAI,OAAO,CAAC,WAAW,CAAC;IA6F5B,sBAAsB,IAAI,MAAM;IAQhC,eAAe,IAAI,MAAM;cAYzB,iBAAiB,IAAI,OAAO,CAAC,WAAW,CAAC;WAc3C,YAAY;IAIb,KAAK,CAAC,CAAC,GAAG,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,GAAE,OAAO,EAAO,EAAE,QAAQ,CAAC,EAAE,YAAY,GAAG,OAAO,CAAC,CAAC,EAAE,CAAC;IAYhG,MAAM,CACjB,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,OAAO,EAAE,EACjB,EAAE,aAAa,EAAE,EAAE,aAAa,GAC/B,OAAO,CAAC,eAAe,CAAC;IA0Bd,cAAc,IAAI,OAAO,CAAC,IAAI,CAAC;IAIrC,QAAQ;IAIF,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;CAStC"}
|
package/dist/src/DuckDBDriver.js
CHANGED
|
@@ -28,7 +28,6 @@ const base_driver_1 = require("@cubejs-backend/base-driver");
|
|
|
28
28
|
const shared_1 = require("@cubejs-backend/shared");
|
|
29
29
|
const util_1 = require("util");
|
|
30
30
|
const stream = __importStar(require("stream"));
|
|
31
|
-
// eslint-disable-next-line import/no-extraneous-dependencies
|
|
32
31
|
const duckdb_1 = require("duckdb");
|
|
33
32
|
const DuckDBQuery_1 = require("./DuckDBQuery");
|
|
34
33
|
const HydrationStream_1 = require("./HydrationStream");
|
|
@@ -54,9 +53,11 @@ class DuckDBDriver extends base_driver_1.BaseDriver {
|
|
|
54
53
|
async init() {
|
|
55
54
|
const token = (0, shared_1.getEnv)('duckdbMotherDuckToken', this.config);
|
|
56
55
|
const db = new duckdb_1.Database(token ? `md:?motherduck_token=${token}` : ':memory:');
|
|
57
|
-
|
|
56
|
+
// Under the hood all methods of Database uses internal default connection, but there is no way to expose it
|
|
57
|
+
const defaultConnection = db.connect();
|
|
58
|
+
const execAsync = (0, util_1.promisify)(defaultConnection.exec).bind(defaultConnection);
|
|
58
59
|
try {
|
|
59
|
-
await
|
|
60
|
+
await execAsync('INSTALL httpfs');
|
|
60
61
|
}
|
|
61
62
|
catch (e) {
|
|
62
63
|
if (this.logger) {
|
|
@@ -68,7 +69,7 @@ class DuckDBDriver extends base_driver_1.BaseDriver {
|
|
|
68
69
|
throw e;
|
|
69
70
|
}
|
|
70
71
|
try {
|
|
71
|
-
await
|
|
72
|
+
await execAsync('LOAD httpfs');
|
|
72
73
|
}
|
|
73
74
|
catch (e) {
|
|
74
75
|
if (this.logger) {
|
|
@@ -108,7 +109,7 @@ class DuckDBDriver extends base_driver_1.BaseDriver {
|
|
|
108
109
|
for (const { key, value } of configuration) {
|
|
109
110
|
if (value) {
|
|
110
111
|
try {
|
|
111
|
-
await
|
|
112
|
+
await execAsync(`SET ${key}='${value}'`);
|
|
112
113
|
}
|
|
113
114
|
catch (e) {
|
|
114
115
|
if (this.logger) {
|
|
@@ -121,7 +122,7 @@ class DuckDBDriver extends base_driver_1.BaseDriver {
|
|
|
121
122
|
}
|
|
122
123
|
if (this.config.initSql) {
|
|
123
124
|
try {
|
|
124
|
-
await
|
|
125
|
+
await execAsync(this.config.initSql);
|
|
125
126
|
}
|
|
126
127
|
catch (e) {
|
|
127
128
|
if (this.logger) {
|
|
@@ -132,7 +133,7 @@ class DuckDBDriver extends base_driver_1.BaseDriver {
|
|
|
132
133
|
}
|
|
133
134
|
}
|
|
134
135
|
return {
|
|
135
|
-
|
|
136
|
+
defaultConnection,
|
|
136
137
|
db
|
|
137
138
|
};
|
|
138
139
|
}
|
|
@@ -153,13 +154,12 @@ class DuckDBDriver extends base_driver_1.BaseDriver {
|
|
|
153
154
|
}
|
|
154
155
|
return super.getSchemasQuery();
|
|
155
156
|
}
|
|
156
|
-
async
|
|
157
|
+
async getInitiatedState() {
|
|
157
158
|
if (!this.initPromise) {
|
|
158
159
|
this.initPromise = this.init();
|
|
159
160
|
}
|
|
160
161
|
try {
|
|
161
|
-
|
|
162
|
-
return connection;
|
|
162
|
+
return await this.initPromise;
|
|
163
163
|
}
|
|
164
164
|
catch (e) {
|
|
165
165
|
this.initPromise = null;
|
|
@@ -169,24 +169,36 @@ class DuckDBDriver extends base_driver_1.BaseDriver {
|
|
|
169
169
|
static dialectClass() {
|
|
170
170
|
return DuckDBQuery_1.DuckDBQuery;
|
|
171
171
|
}
|
|
172
|
-
handleQuery(connection, query, values = [], _options) {
|
|
173
|
-
const executeQuery = (0, util_1.promisify)(connection.all).bind(connection);
|
|
174
|
-
return executeQuery(query, ...values);
|
|
175
|
-
}
|
|
176
172
|
async query(query, values = [], _options) {
|
|
177
|
-
const
|
|
173
|
+
const { defaultConnection } = await this.getInitiatedState();
|
|
174
|
+
const fetchAsync = (0, util_1.promisify)(defaultConnection.all).bind(defaultConnection);
|
|
175
|
+
const result = await fetchAsync(query, ...values);
|
|
178
176
|
return result.map((item) => {
|
|
179
177
|
(0, HydrationStream_1.transformRow)(item);
|
|
180
178
|
return item;
|
|
181
179
|
});
|
|
182
180
|
}
|
|
183
181
|
async stream(query, values, { highWaterMark }) {
|
|
184
|
-
const
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
182
|
+
const { db } = await this.getInitiatedState();
|
|
183
|
+
// new connection, because stream can break with
|
|
184
|
+
// Attempting to execute an unsuccessful or closed pending query result
|
|
185
|
+
// PreAggregation queue has a concurrency limit, it's why pool is not needed here
|
|
186
|
+
const connection = db.connect();
|
|
187
|
+
const closeAsync = (0, util_1.promisify)(connection.close).bind(connection);
|
|
188
|
+
try {
|
|
189
|
+
const asyncIterator = connection.stream(query, ...(values || []));
|
|
190
|
+
const rowStream = stream.Readable.from(asyncIterator, { highWaterMark }).pipe(new HydrationStream_1.HydrationStream());
|
|
191
|
+
return {
|
|
192
|
+
rowStream,
|
|
193
|
+
release: async () => {
|
|
194
|
+
await closeAsync();
|
|
195
|
+
}
|
|
196
|
+
};
|
|
197
|
+
}
|
|
198
|
+
catch (e) {
|
|
199
|
+
await closeAsync();
|
|
200
|
+
throw e;
|
|
201
|
+
}
|
|
190
202
|
}
|
|
191
203
|
async testConnection() {
|
|
192
204
|
await this.query('SELECT 1', []);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DuckDBDriver.js","sourceRoot":"","sources":["../../src/DuckDBDriver.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,6DAOqC;AACrC,mDAAgD;AAChD,+BAAiC;AACjC,+CAAiC;AACjC,
|
|
1
|
+
{"version":3,"file":"DuckDBDriver.js","sourceRoot":"","sources":["../../src/DuckDBDriver.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
"name": "@cubejs-backend/duckdb-driver",
|
|
3
3
|
"description": "Cube DuckDB database driver",
|
|
4
4
|
"author": "Cube Dev, Inc.",
|
|
5
|
-
"version": "0.34.
|
|
5
|
+
"version": "0.34.23",
|
|
6
6
|
"repository": {
|
|
7
7
|
"type": "git",
|
|
8
8
|
"url": "https://github.com/cube-js/cube.git",
|
|
@@ -28,17 +28,15 @@
|
|
|
28
28
|
},
|
|
29
29
|
"dependencies": {
|
|
30
30
|
"@cubejs-backend/base-driver": "^0.34.20",
|
|
31
|
-
"@cubejs-backend/schema-compiler": "^0.34.
|
|
32
|
-
"@cubejs-backend/shared": "^0.34.20"
|
|
33
|
-
|
|
34
|
-
"optionalDependencies": {
|
|
35
|
-
"duckdb": "^0.9.1"
|
|
31
|
+
"@cubejs-backend/schema-compiler": "^0.34.23",
|
|
32
|
+
"@cubejs-backend/shared": "^0.34.20",
|
|
33
|
+
"duckdb": "^0.9.2"
|
|
36
34
|
},
|
|
37
35
|
"license": "Apache-2.0",
|
|
38
36
|
"devDependencies": {
|
|
39
37
|
"@cubejs-backend/linter": "^0.34.0",
|
|
40
|
-
"@cubejs-backend/testing-shared": "^0.34.
|
|
41
|
-
"@types/jest": "^26
|
|
38
|
+
"@cubejs-backend/testing-shared": "^0.34.23",
|
|
39
|
+
"@types/jest": "^26",
|
|
42
40
|
"@types/node": "^14",
|
|
43
41
|
"jest": "^26.6.3",
|
|
44
42
|
"typescript": "~5.2.2"
|
|
@@ -49,5 +47,5 @@
|
|
|
49
47
|
"eslintConfig": {
|
|
50
48
|
"extends": "../cubejs-linter"
|
|
51
49
|
},
|
|
52
|
-
"gitHead": "
|
|
50
|
+
"gitHead": "f7859cad6c0ead1f05f62ea6a46d0d809e424979"
|
|
53
51
|
}
|