@cubejs-backend/cubestore-driver 0.31.45 → 0.31.47

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.
@@ -0,0 +1,42 @@
1
+ import { QueueDriverInterface, QueueDriverConnectionInterface, QueryStageStateResponse, QueryDef, RetrieveForProcessingResponse, QueueDriverOptions, AddToQueueQuery, AddToQueueOptions, AddToQueueResponse, QueryKey } from '@cubejs-backend/base-driver';
2
+ import { CubeStoreDriver } from './CubeStoreDriver';
3
+ declare class CubestoreQueueDriverConnection implements QueueDriverConnectionInterface {
4
+ protected readonly driver: CubeStoreDriver;
5
+ protected readonly options: QueueDriverOptions;
6
+ constructor(driver: CubeStoreDriver, options: QueueDriverOptions);
7
+ redisHash(queryKey: QueryKey): string;
8
+ protected prefixKey(queryKey: QueryKey): string;
9
+ addToQueue(keyScore: number, queryKey: QueryKey, orphanedTime: any, queryHandler: string, query: AddToQueueQuery, priority: number, options: AddToQueueOptions): Promise<AddToQueueResponse>;
10
+ getQueryAndRemove(queryKey: string): Promise<[QueryDef]>;
11
+ cancelQuery(queryKey: string): Promise<QueryDef | null>;
12
+ freeProcessingLock(_queryKey: string, _processingId: string, _activated: unknown): Promise<void>;
13
+ getActiveQueries(): Promise<string[]>;
14
+ getToProcessQueries(): Promise<string[]>;
15
+ getActiveAndToProcess(): Promise<[active: string[], toProcess: string[]]>;
16
+ getNextProcessingId(): Promise<number | string>;
17
+ getQueryStageState(onlyKeys: boolean): Promise<QueryStageStateResponse>;
18
+ getResult(queryKey: string): Promise<unknown>;
19
+ getStalledQueries(): Promise<string[]>;
20
+ getOrphanedQueries(): Promise<string[]>;
21
+ getQueriesToCancel(): Promise<string[]>;
22
+ protected decodeQueryDefFromRow(row: any): QueryDef;
23
+ getQueryDef(queryKey: string): Promise<QueryDef | null>;
24
+ optimisticQueryUpdate(queryKey: any, toUpdate: any, _processingId: any): Promise<boolean>;
25
+ release(): void;
26
+ retrieveForProcessing(queryKey: string, _processingId: string): Promise<RetrieveForProcessingResponse>;
27
+ getResultBlocking(queryKey: string): Promise<QueryDef | null>;
28
+ setResultAndRemoveQuery(queryKey: string, executionResult: any, _processingId: any): Promise<boolean>;
29
+ updateHeartBeat(queryKey: string): Promise<void>;
30
+ }
31
+ export declare class CubeStoreQueueDriver implements QueueDriverInterface {
32
+ protected readonly driverFactory: () => Promise<CubeStoreDriver>;
33
+ protected readonly options: QueueDriverOptions;
34
+ constructor(driverFactory: () => Promise<CubeStoreDriver>, options: QueueDriverOptions);
35
+ protected connection: CubeStoreDriver | null;
36
+ redisHash(queryKey: QueryKey): string;
37
+ protected getConnection(): Promise<CubeStoreDriver>;
38
+ createConnection(): Promise<CubestoreQueueDriverConnection>;
39
+ release(): void;
40
+ }
41
+ export {};
42
+ //# sourceMappingURL=CubeStoreQueueDriver.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CubeStoreQueueDriver.d.ts","sourceRoot":"","sources":["../../src/CubeStoreQueueDriver.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,252 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.CubeStoreQueueDriver = void 0;
7
+ const crypto_1 = __importDefault(require("crypto"));
8
+ function hashQueryKey(queryKey) {
9
+ return crypto_1.default.createHash('md5').update(JSON.stringify(queryKey)).digest('hex');
10
+ }
11
+ class CubestoreQueueDriverConnection {
12
+ constructor(driver, options) {
13
+ this.driver = driver;
14
+ this.options = options;
15
+ }
16
+ redisHash(queryKey) {
17
+ return hashQueryKey(queryKey);
18
+ }
19
+ prefixKey(queryKey) {
20
+ return `${this.options.redisQueuePrefix}:${queryKey}`;
21
+ }
22
+ async addToQueue(keyScore, queryKey, orphanedTime, queryHandler, query, priority, options) {
23
+ // TODO: Fix sqlparser, support negative number
24
+ priority = priority < 0 ? 0 : priority;
25
+ const data = {
26
+ queryHandler,
27
+ query,
28
+ queryKey,
29
+ stageQueryKey: options.stageQueryKey,
30
+ priority,
31
+ requestId: options.requestId,
32
+ addedToQueueTime: new Date().getTime()
33
+ };
34
+ const rows = await this.driver.query('QUEUE ADD PRIORITY ? ? ?', [
35
+ priority,
36
+ this.prefixKey(this.redisHash(queryKey)),
37
+ JSON.stringify(data)
38
+ ]);
39
+ if (rows && rows.length) {
40
+ return [
41
+ rows[0].added === 'true' ? 1 : 0,
42
+ null,
43
+ null,
44
+ parseInt(rows[0].pending, 10),
45
+ data.addedToQueueTime
46
+ ];
47
+ }
48
+ throw new Error('Empty response on QUEUE ADD');
49
+ }
50
+ // TODO: Looks useless, because we can do it in one step - getQueriesToCancel
51
+ async getQueryAndRemove(queryKey) {
52
+ return [await this.cancelQuery(queryKey)];
53
+ }
54
+ async cancelQuery(queryKey) {
55
+ const rows = await this.driver.query('QUEUE CANCEL ?', [
56
+ this.prefixKey(queryKey)
57
+ ]);
58
+ if (rows && rows.length) {
59
+ return this.decodeQueryDefFromRow(rows[0]);
60
+ }
61
+ return null;
62
+ }
63
+ async freeProcessingLock(_queryKey, _processingId, _activated) {
64
+ // nothing to do
65
+ }
66
+ async getActiveQueries() {
67
+ const rows = await this.driver.query('QUEUE ACTIVE ?', [
68
+ this.options.redisQueuePrefix
69
+ ]);
70
+ return rows.map((row) => row.id);
71
+ }
72
+ async getToProcessQueries() {
73
+ const rows = await this.driver.query('QUEUE PENDING ?', [
74
+ this.options.redisQueuePrefix
75
+ ]);
76
+ return rows.map((row) => row.id);
77
+ }
78
+ async getActiveAndToProcess() {
79
+ const rows = await this.driver.query('QUEUE LIST ?', [
80
+ this.options.redisQueuePrefix
81
+ ]);
82
+ if (rows.length) {
83
+ const active = [];
84
+ const toProcess = [];
85
+ for (const row of rows) {
86
+ if (row.status === 'active') {
87
+ active.push(row.id);
88
+ }
89
+ else {
90
+ toProcess.push(row.id);
91
+ }
92
+ }
93
+ return [
94
+ active,
95
+ toProcess,
96
+ ];
97
+ }
98
+ return [[], []];
99
+ }
100
+ async getNextProcessingId() {
101
+ const rows = await this.driver.query('CACHE INCR ?', [
102
+ `${this.options.redisQueuePrefix}:PROCESSING_COUNTER`
103
+ ]);
104
+ if (rows && rows.length) {
105
+ return rows[0].value;
106
+ }
107
+ throw new Error('Unable to get next processing id');
108
+ }
109
+ async getQueryStageState(onlyKeys) {
110
+ const rows = await this.driver.query(`QUEUE LIST ${onlyKeys ? '?' : 'WITH_PAYLOAD ?'}`, [
111
+ this.options.redisQueuePrefix
112
+ ]);
113
+ const defs = {};
114
+ const toProcess = [];
115
+ const active = [];
116
+ for (const row of rows) {
117
+ if (!onlyKeys) {
118
+ defs[row.id] = this.decodeQueryDefFromRow(row);
119
+ }
120
+ if (row.status === 'pending') {
121
+ toProcess.push(row.id);
122
+ }
123
+ else if (row.status === 'active') {
124
+ active.push(row.id);
125
+ // TODO: getQueryStage is broken for Executing query stage...
126
+ toProcess.push(row.id);
127
+ }
128
+ }
129
+ return [active, toProcess, defs];
130
+ }
131
+ async getResult(queryKey) {
132
+ const rows = await this.driver.query('QUEUE RESULT ?', [
133
+ this.prefixKey(this.redisHash(queryKey)),
134
+ ]);
135
+ if (rows && rows.length) {
136
+ return JSON.parse(rows[0].value);
137
+ }
138
+ return null;
139
+ }
140
+ async getStalledQueries() {
141
+ const rows = await this.driver.query('QUEUE STALLED ? ?', [
142
+ this.options.heartBeatTimeout * 1000,
143
+ this.options.redisQueuePrefix
144
+ ]);
145
+ return rows.map((row) => row.id);
146
+ }
147
+ async getOrphanedQueries() {
148
+ const rows = await this.driver.query('QUEUE ORPHANED ? ?', [
149
+ this.options.orphanedTimeout * 1000,
150
+ this.options.redisQueuePrefix
151
+ ]);
152
+ return rows.map((row) => row.id);
153
+ }
154
+ async getQueriesToCancel() {
155
+ const rows = await this.driver.query('QUEUE TO_CANCEL ? ? ?', [
156
+ this.options.heartBeatTimeout * 1000,
157
+ this.options.orphanedTimeout * 1000,
158
+ this.options.redisQueuePrefix,
159
+ ]);
160
+ return rows.map((row) => row.id);
161
+ }
162
+ decodeQueryDefFromRow(row) {
163
+ const payload = JSON.parse(row.payload);
164
+ if (row.extra) {
165
+ return Object.assign(payload, JSON.parse(row.extra));
166
+ }
167
+ return payload;
168
+ }
169
+ async getQueryDef(queryKey) {
170
+ const rows = await this.driver.query('QUEUE GET ?', [
171
+ this.prefixKey(this.redisHash(queryKey))
172
+ ]);
173
+ if (rows && rows.length) {
174
+ return this.decodeQueryDefFromRow(rows[0]);
175
+ }
176
+ return null;
177
+ }
178
+ async optimisticQueryUpdate(queryKey, toUpdate, _processingId) {
179
+ await this.driver.query('QUEUE MERGE_EXTRA ? ?', [
180
+ this.prefixKey(queryKey),
181
+ JSON.stringify(toUpdate)
182
+ ]);
183
+ return true;
184
+ }
185
+ release() {
186
+ // nothing to release
187
+ }
188
+ async retrieveForProcessing(queryKey, _processingId) {
189
+ const rows = await this.driver.query('QUEUE RETRIEVE CONCURRENCY ? ?', [
190
+ this.options.concurrency,
191
+ this.prefixKey(queryKey),
192
+ ]);
193
+ if (rows && rows.length) {
194
+ const addedCount = 1;
195
+ const active = [this.redisHash(queryKey)];
196
+ const toProcess = 0;
197
+ const lockAcquired = true;
198
+ const def = this.decodeQueryDefFromRow(rows[0]);
199
+ return [
200
+ addedCount, null, active, toProcess, def, lockAcquired
201
+ ];
202
+ }
203
+ return null;
204
+ }
205
+ async getResultBlocking(queryKey) {
206
+ const rows = await this.driver.query('QUEUE RESULT_BLOCKING ? ?', [
207
+ this.options.continueWaitTimeout * 1000,
208
+ this.prefixKey(this.redisHash(queryKey)),
209
+ ]);
210
+ if (rows && rows.length) {
211
+ return this.decodeQueryDefFromRow(rows[0]);
212
+ }
213
+ return null;
214
+ }
215
+ async setResultAndRemoveQuery(queryKey, executionResult, _processingId) {
216
+ await this.driver.query('QUEUE ACK ? ? ', [
217
+ this.prefixKey(queryKey),
218
+ JSON.stringify(executionResult)
219
+ ]);
220
+ return true;
221
+ }
222
+ async updateHeartBeat(queryKey) {
223
+ await this.driver.query('QUEUE HEARTBEAT ?', [
224
+ this.prefixKey(queryKey)
225
+ ]);
226
+ }
227
+ }
228
+ class CubeStoreQueueDriver {
229
+ constructor(driverFactory, options) {
230
+ this.driverFactory = driverFactory;
231
+ this.options = options;
232
+ this.connection = null;
233
+ }
234
+ redisHash(queryKey) {
235
+ return hashQueryKey(queryKey);
236
+ }
237
+ async getConnection() {
238
+ if (this.connection) {
239
+ return this.connection;
240
+ }
241
+ // eslint-disable-next-line no-return-assign
242
+ return this.connection = await this.driverFactory();
243
+ }
244
+ async createConnection() {
245
+ return new CubestoreQueueDriverConnection(await this.getConnection(), this.options);
246
+ }
247
+ release() {
248
+ // nothing to release
249
+ }
250
+ }
251
+ exports.CubeStoreQueueDriver = CubeStoreQueueDriver;
252
+ //# sourceMappingURL=CubeStoreQueueDriver.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CubeStoreQueueDriver.js","sourceRoot":"","sources":["../../src/CubeStoreQueueDriver.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,6 @@
1
1
  export * from './CubeStoreCacheDriver';
2
2
  export * from './CubeStoreDriver';
3
3
  export * from './CubeStoreDevDriver';
4
+ export * from './CubeStoreQueueDriver';
4
5
  export * from './rexport';
5
6
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,wBAAwB,CAAC;AACvC,cAAc,mBAAmB,CAAC;AAClC,cAAc,sBAAsB,CAAC;AACrC,cAAc,WAAW,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,wBAAwB,CAAC;AACvC,cAAc,mBAAmB,CAAC;AAClC,cAAc,sBAAsB,CAAC;AACrC,cAAc,wBAAwB,CAAC;AACvC,cAAc,WAAW,CAAC"}
package/dist/src/index.js CHANGED
@@ -13,5 +13,6 @@ Object.defineProperty(exports, "__esModule", { value: true });
13
13
  __exportStar(require("./CubeStoreCacheDriver"), exports);
14
14
  __exportStar(require("./CubeStoreDriver"), exports);
15
15
  __exportStar(require("./CubeStoreDevDriver"), exports);
16
+ __exportStar(require("./CubeStoreQueueDriver"), exports);
16
17
  __exportStar(require("./rexport"), exports);
17
18
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,yDAAuC;AACvC,oDAAkC;AAClC,uDAAqC;AACrC,4CAA0B"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,yDAAuC;AACvC,oDAAkC;AAClC,uDAAqC;AACrC,yDAAuC;AACvC,4CAA0B"}
package/package.json CHANGED
@@ -2,7 +2,7 @@
2
2
  "name": "@cubejs-backend/cubestore-driver",
3
3
  "description": "Cube Store driver",
4
4
  "author": "Cube Dev, Inc.",
5
- "version": "0.31.45",
5
+ "version": "0.31.47",
6
6
  "repository": {
7
7
  "type": "git",
8
8
  "url": "https://github.com/cube-js/cube.js.git",
@@ -26,17 +26,16 @@
26
26
  "lint:fix": "eslint --fix src/*.ts"
27
27
  },
28
28
  "dependencies": {
29
- "@cubejs-backend/base-driver": "^0.31.42",
30
- "@cubejs-backend/cubestore": "^0.31.45",
29
+ "@cubejs-backend/base-driver": "^0.31.46",
30
+ "@cubejs-backend/cubestore": "^0.31.47",
31
31
  "@cubejs-backend/shared": "^0.31.42",
32
32
  "csv-write-stream": "^2.0.0",
33
33
  "flatbuffers": "^1.12.0",
34
34
  "fs-extra": "^9.1.0",
35
35
  "generic-pool": "^3.6.0",
36
36
  "moment-timezone": "^0.5.31",
37
- "mysql": "^2.16.0",
38
37
  "node-fetch": "^2.6.1",
39
- "sqlstring": "^2.3.2",
38
+ "sqlstring": "^2.3.3",
40
39
  "tempy": "^1.0.1",
41
40
  "uuid": "^8.3.2",
42
41
  "ws": "^7.4.3"
@@ -45,7 +44,6 @@
45
44
  "@cubejs-backend/linter": "^0.31.0",
46
45
  "@types/flatbuffers": "^1.10.0",
47
46
  "@types/generic-pool": "^3.1.9",
48
- "@types/mysql": "^2.15.17",
49
47
  "@types/ws": "^7.4.0",
50
48
  "jest": "^26.6.3",
51
49
  "typescript": "~4.1.5"
@@ -63,5 +61,5 @@
63
61
  "eslintConfig": {
64
62
  "extends": "../cubejs-linter"
65
63
  },
66
- "gitHead": "59a8848692520bc94eb7fb43bd3872fc69b22c19"
64
+ "gitHead": "15181f5acda64d20755a86e2faebaf9ee87c4459"
67
65
  }