@cubejs-backend/cubestore-driver 0.31.32 → 0.31.34
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/CubeStoreCacheDriver.d.ts +18 -0
- package/dist/src/CubeStoreCacheDriver.d.ts.map +1 -0
- package/dist/src/CubeStoreCacheDriver.js +74 -0
- package/dist/src/CubeStoreCacheDriver.js.map +1 -0
- package/dist/src/CubeStoreDriver.d.ts +2 -4
- package/dist/src/CubeStoreDriver.d.ts.map +1 -1
- package/dist/src/CubeStoreDriver.js +0 -4
- package/dist/src/CubeStoreDriver.js.map +1 -1
- package/dist/src/index.d.ts +1 -1
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/index.js +1 -1
- package/dist/src/index.js.map +1 -1
- package/index.js +8 -10
- package/package.json +6 -11
- package/dist/src/CubeStoreQuery.d.ts +0 -37
- package/dist/src/CubeStoreQuery.d.ts.map +0 -1
- package/dist/src/CubeStoreQuery.js +0 -211
- package/dist/src/CubeStoreQuery.js.map +0 -1
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { MaybeCancelablePromise } from '@cubejs-backend/shared';
|
|
2
|
+
import { CacheDriverInterface } from '@cubejs-backend/base-driver';
|
|
3
|
+
import { CubeStoreDriver } from './CubeStoreDriver';
|
|
4
|
+
export declare class CubeStoreCacheDriver implements CacheDriverInterface {
|
|
5
|
+
protected readonly connection: CubeStoreDriver;
|
|
6
|
+
constructor(connection: CubeStoreDriver);
|
|
7
|
+
withLock: (key: string, cb: () => MaybeCancelablePromise<any>, expiration?: number, freeAfter?: boolean) => import("@cubejs-backend/shared").CancelablePromise<boolean>;
|
|
8
|
+
get(key: string): Promise<any>;
|
|
9
|
+
set(key: string, value: any, expiration: any): Promise<{
|
|
10
|
+
key: string;
|
|
11
|
+
bytes: number;
|
|
12
|
+
}>;
|
|
13
|
+
remove(key: string): Promise<void>;
|
|
14
|
+
keysStartingWith(prefix: string): Promise<any[]>;
|
|
15
|
+
cleanup(): Promise<void>;
|
|
16
|
+
testConnection(): Promise<void>;
|
|
17
|
+
}
|
|
18
|
+
//# sourceMappingURL=CubeStoreCacheDriver.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"CubeStoreCacheDriver.d.ts","sourceRoot":"","sources":["../../src/CubeStoreCacheDriver.ts"],"names":[],"mappings":"AAAA,OAAO,EAA2B,sBAAsB,EAAE,MAAM,wBAAwB,CAAC;AACzF,OAAO,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAC;AAEnE,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAEpD,qBAAa,oBAAqB,YAAW,oBAAoB;IAE7D,SAAS,CAAC,QAAQ,CAAC,UAAU,EAAE,eAAe;gBAA3B,UAAU,EAAE,eAAe;IAGzC,QAAQ,QACR,MAAM,MACP,MAAM,uBAAuB,GAAG,CAAC,eACzB,MAAM,cACP,OAAO,iEAgCjB;IAEU,GAAG,CAAC,GAAG,EAAE,MAAM;IAWf,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,KAAA,EAAE,UAAU,KAAA;;;;IAUlC,MAAM,CAAC,GAAG,EAAE,MAAM;IAMlB,gBAAgB,CAAC,MAAM,EAAE,MAAM;IAO/B,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAIxB,cAAc,IAAI,OAAO,CAAC,IAAI,CAAC;CAG7C"}
|
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.CubeStoreCacheDriver = void 0;
|
|
4
|
+
const shared_1 = require("@cubejs-backend/shared");
|
|
5
|
+
class CubeStoreCacheDriver {
|
|
6
|
+
constructor(connection) {
|
|
7
|
+
this.connection = connection;
|
|
8
|
+
this.withLock = (key, cb, expiration = 60, freeAfter = true) => shared_1.createCancelablePromise(async (tkn) => {
|
|
9
|
+
var _a;
|
|
10
|
+
if (tkn.isCanceled()) {
|
|
11
|
+
return false;
|
|
12
|
+
}
|
|
13
|
+
const rows = await this.connection.query('CACHE SET NX TTL ? ? ?', [expiration, key, '1']);
|
|
14
|
+
if (rows && rows.length === 1 && ((_a = rows[0]) === null || _a === void 0 ? void 0 : _a.success) === 'true') {
|
|
15
|
+
if (tkn.isCanceled()) {
|
|
16
|
+
if (freeAfter) {
|
|
17
|
+
await this.connection.query('CACHE REMOVE ?', [
|
|
18
|
+
key
|
|
19
|
+
]);
|
|
20
|
+
}
|
|
21
|
+
return false;
|
|
22
|
+
}
|
|
23
|
+
try {
|
|
24
|
+
await tkn.with(cb());
|
|
25
|
+
}
|
|
26
|
+
finally {
|
|
27
|
+
if (freeAfter) {
|
|
28
|
+
await this.connection.query('CACHE REMOVE ?', [
|
|
29
|
+
key
|
|
30
|
+
]);
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
return true;
|
|
34
|
+
}
|
|
35
|
+
return false;
|
|
36
|
+
});
|
|
37
|
+
}
|
|
38
|
+
async get(key) {
|
|
39
|
+
const rows = await this.connection.query('CACHE GET ?', [
|
|
40
|
+
key
|
|
41
|
+
]);
|
|
42
|
+
if (rows && rows.length === 1) {
|
|
43
|
+
return JSON.parse(rows[0].value);
|
|
44
|
+
}
|
|
45
|
+
return null;
|
|
46
|
+
}
|
|
47
|
+
async set(key, value, expiration) {
|
|
48
|
+
const strValue = JSON.stringify(value);
|
|
49
|
+
await this.connection.query('CACHE SET TTL ? ? ?', [expiration, key, strValue]);
|
|
50
|
+
return {
|
|
51
|
+
key,
|
|
52
|
+
bytes: Buffer.byteLength(strValue),
|
|
53
|
+
};
|
|
54
|
+
}
|
|
55
|
+
async remove(key) {
|
|
56
|
+
await this.connection.query('CACHE REMOVE ?', [
|
|
57
|
+
key
|
|
58
|
+
]);
|
|
59
|
+
}
|
|
60
|
+
async keysStartingWith(prefix) {
|
|
61
|
+
const rows = await this.connection.query('CACHE KEYS ?', [
|
|
62
|
+
prefix
|
|
63
|
+
]);
|
|
64
|
+
return rows.map((row) => row.key);
|
|
65
|
+
}
|
|
66
|
+
async cleanup() {
|
|
67
|
+
//
|
|
68
|
+
}
|
|
69
|
+
async testConnection() {
|
|
70
|
+
return this.connection.testConnection();
|
|
71
|
+
}
|
|
72
|
+
}
|
|
73
|
+
exports.CubeStoreCacheDriver = CubeStoreCacheDriver;
|
|
74
|
+
//# sourceMappingURL=CubeStoreCacheDriver.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"CubeStoreCacheDriver.js","sourceRoot":"","sources":["../../src/CubeStoreCacheDriver.ts"],"names":[],"mappings":";;;AAAA,mDAAyF;AAKzF,MAAa,oBAAoB;IAC/B,YACqB,UAA2B;QAA3B,eAAU,GAAV,UAAU,CAAiB;QAGzC,aAAQ,GAAG,CAChB,GAAW,EACX,EAAqC,EACrC,aAAqB,EAAE,EACvB,YAAqB,IAAI,EACzB,EAAE,CAAC,gCAAuB,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE;;YACzC,IAAI,GAAG,CAAC,UAAU,EAAE,EAAE;gBACpB,OAAO,KAAK,CAAC;aACd;YAED,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,wBAAwB,EAAE,CAAC,UAAU,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC;YAC3F,IAAI,IAAI,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,IAAI,OAAA,IAAI,CAAC,CAAC,CAAC,0CAAE,OAAO,MAAK,MAAM,EAAE;gBAC5D,IAAI,GAAG,CAAC,UAAU,EAAE,EAAE;oBACpB,IAAI,SAAS,EAAE;wBACb,MAAM,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,gBAAgB,EAAE;4BAC5C,GAAG;yBACJ,CAAC,CAAC;qBACJ;oBAED,OAAO,KAAK,CAAC;iBACd;gBAED,IAAI;oBACF,MAAM,GAAG,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;iBACtB;wBAAS;oBACR,IAAI,SAAS,EAAE;wBACb,MAAM,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,gBAAgB,EAAE;4BAC5C,GAAG;yBACJ,CAAC,CAAC;qBACJ;iBACF;gBAED,OAAO,IAAI,CAAC;aACb;YAED,OAAO,KAAK,CAAC;QACf,CAAC,CAAC,CAAC;IAtCA,CAAC;IAwCG,KAAK,CAAC,GAAG,CAAC,GAAW;QAC1B,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,aAAa,EAAE;YACtD,GAAG;SACJ,CAAC,CAAC;QACH,IAAI,IAAI,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE;YAC7B,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;SAClC;QAED,OAAO,IAAI,CAAC;IACd,CAAC;IAEM,KAAK,CAAC,GAAG,CAAC,GAAW,EAAE,KAAK,EAAE,UAAU;QAC7C,MAAM,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;QACvC,MAAM,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,qBAAqB,EAAE,CAAC,UAAU,EAAE,GAAG,EAAE,QAAQ,CAAC,CAAC,CAAC;QAEhF,OAAO;YACL,GAAG;YACH,KAAK,EAAE,MAAM,CAAC,UAAU,CAAC,QAAQ,CAAC;SACnC,CAAC;IACJ,CAAC;IAEM,KAAK,CAAC,MAAM,CAAC,GAAW;QAC7B,MAAM,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,gBAAgB,EAAE;YAC5C,GAAG;SACJ,CAAC,CAAC;IACL,CAAC;IAEM,KAAK,CAAC,gBAAgB,CAAC,MAAc;QAC1C,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,cAAc,EAAE;YACvD,MAAM;SACP,CAAC,CAAC;QACH,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IACpC,CAAC;IAEM,KAAK,CAAC,OAAO;QAClB,EAAE;IACJ,CAAC;IAEM,KAAK,CAAC,cAAc;QACzB,OAAO,IAAI,CAAC,UAAU,CAAC,cAAc,EAAE,CAAC;IAC1C,CAAC;CACF;AApFD,oDAoFC"}
|
|
@@ -1,5 +1,4 @@
|
|
|
1
|
-
import { BaseDriver, ExternalCreateTableOptions, DriverInterface, IndexesSQL,
|
|
2
|
-
import { CubeStoreQuery } from './CubeStoreQuery';
|
|
1
|
+
import { BaseDriver, ExternalCreateTableOptions, DriverInterface, IndexesSQL, QueryOptions, ExternalDriverCompatibilities } from '@cubejs-backend/base-driver';
|
|
3
2
|
import { ConnectionConfig } from './types';
|
|
4
3
|
import { WebSocketConnection } from './WebSocketConnection';
|
|
5
4
|
declare type Column = {
|
|
@@ -39,8 +38,7 @@ export declare class CubeStoreDriver extends BaseDriver implements DriverInterfa
|
|
|
39
38
|
private importCsvFile;
|
|
40
39
|
private importStream;
|
|
41
40
|
private importStreamingSource;
|
|
42
|
-
|
|
43
|
-
capabilities(): DriverCapabilities;
|
|
41
|
+
capabilities(): ExternalDriverCompatibilities;
|
|
44
42
|
}
|
|
45
43
|
export {};
|
|
46
44
|
//# sourceMappingURL=CubeStoreDriver.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CubeStoreDriver.d.ts","sourceRoot":"","sources":["../../src/CubeStoreDriver.ts"],"names":[],"mappings":"AAMA,OAAO,EACL,UAAU,EAEV,0BAA0B,EACD,eAAe,EAAE,UAAU,
|
|
1
|
+
{"version":3,"file":"CubeStoreDriver.d.ts","sourceRoot":"","sources":["../../src/CubeStoreDriver.ts"],"names":[],"mappings":"AAMA,OAAO,EACL,UAAU,EAEV,0BAA0B,EACD,eAAe,EAAE,UAAU,EAGpD,YAAY,EACZ,6BAA6B,EAC9B,MAAM,6BAA6B,CAAC;AAKrC,OAAO,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAC;AAC3C,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAQ5D,aAAK,MAAM,GAAG;IACZ,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;CACd,CAAC;AAEF,aAAK,kBAAkB,GAAG;IACxB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,KAAK,CAAC,EAAE,MAAM,EAAE,CAAA;IAChB,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,eAAe,CAAC,EAAE,MAAM,CAAA;IACxB,MAAM,CAAC,EAAE,MAAM,CAAA;CAChB,CAAC;AAEF,qBAAa,eAAgB,SAAQ,UAAW,YAAW,eAAe;IACxE,SAAS,CAAC,QAAQ,CAAC,MAAM,EAAE,GAAG,CAAC;IAE/B,SAAS,CAAC,QAAQ,CAAC,UAAU,EAAE,mBAAmB,CAAC;IAEnD,SAAS,CAAC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;gBAEhB,MAAM,CAAC,EAAE,OAAO,CAAC,gBAAgB,CAAC;IAgBxC,cAAc;IAId,KAAK,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,EAAE,OAAO,CAAC,EAAE,YAAY;IAK1D,OAAO;IAIb,sBAAsB;IAItB,yBAAyB,CAAC,SAAS,KAAA,EAAE,OAAO,KAAA,EAAE,OAAO,EAAE,kBAAkB;IAuCzE,sBAAsB,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE,OAAO,EAAE,kBAAkB,EAAE,eAAe,EAAE,GAAG;IAcxG,cAAc,CAAC,UAAU,KAAA;IAOzB,oBAAoB,CAAC,UAAU,KAAA,EAAE,aAAa,KAAA;IAQpD,eAAe,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM;IAI3C,eAAe,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM;IAI3C,aAAa,CAAC,KAAK,EAAE,GAAG,EAAE,WAAW,EAAE,GAAG;IAepC,sBAAsB,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE,SAAS,EAAE,GAAG,EAAE,UAAU,EAAE,UAAU,EAAE,gBAAgB,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,eAAe,CAAC,EAAE,GAAG,EAAE,eAAe,CAAC,EAAE,0BAA0B;IA0BpN,OAAO,CAAC,iBAAiB;YAQX,UAAU;YA2BV,aAAa;YAeb,YAAY;YAwGZ,qBAAqB;IAkC5B,YAAY,IAAI,6BAA6B;CAMrD"}
|
|
@@ -14,7 +14,6 @@ const base_driver_1 = require("@cubejs-backend/base-driver");
|
|
|
14
14
|
const shared_1 = require("@cubejs-backend/shared");
|
|
15
15
|
const sqlstring_1 = require("sqlstring");
|
|
16
16
|
const node_fetch_1 = __importDefault(require("node-fetch"));
|
|
17
|
-
const CubeStoreQuery_1 = require("./CubeStoreQuery");
|
|
18
17
|
const WebSocketConnection_1 = require("./WebSocketConnection");
|
|
19
18
|
const GenericTypeToCubeStore = {
|
|
20
19
|
string: 'varchar(255)',
|
|
@@ -302,9 +301,6 @@ class CubeStoreDriver extends base_driver_1.BaseDriver {
|
|
|
302
301
|
};
|
|
303
302
|
return this.createTableWithOptions(table, columns, options, queryTracingObj);
|
|
304
303
|
}
|
|
305
|
-
static dialectClass() {
|
|
306
|
-
return CubeStoreQuery_1.CubeStoreQuery;
|
|
307
|
-
}
|
|
308
304
|
capabilities() {
|
|
309
305
|
return {
|
|
310
306
|
csvImport: true,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CubeStoreDriver.js","sourceRoot":"","sources":["../../src/CubeStoreDriver.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"CubeStoreDriver.js","sourceRoot":"","sources":["../../src/CubeStoreDriver.ts"],"names":[],"mappings":"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"}
|
package/dist/src/index.d.ts
CHANGED
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,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,WAAW,CAAC"}
|
package/dist/src/index.js
CHANGED
|
@@ -10,7 +10,7 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
|
10
10
|
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
11
11
|
};
|
|
12
12
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
13
|
-
__exportStar(require("./
|
|
13
|
+
__exportStar(require("./CubeStoreCacheDriver"), exports);
|
|
14
14
|
__exportStar(require("./CubeStoreDriver"), exports);
|
|
15
15
|
__exportStar(require("./CubeStoreDevDriver"), exports);
|
|
16
16
|
__exportStar(require("./rexport"), exports);
|
package/dist/src/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,yDAAuC;AACvC,oDAAkC;AAClC,uDAAqC;AACrC,4CAA0B"}
|
package/index.js
CHANGED
|
@@ -1,17 +1,15 @@
|
|
|
1
|
+
const fromExports = require('./dist/src');
|
|
1
2
|
const { CubeStoreDriver } = require('./dist/src/CubeStoreDriver');
|
|
2
|
-
const { CubeStoreDevDriver } = require('./dist/src/CubeStoreDevDriver');
|
|
3
|
-
const { isCubeStoreSupported, CubeStoreHandler } = require('./dist/src/rexport');
|
|
4
3
|
|
|
5
4
|
/**
|
|
6
5
|
* After 5 years working with TypeScript, now I know
|
|
7
6
|
* that commonjs and nodejs require is not compatibility with using export default
|
|
8
7
|
*/
|
|
9
|
-
|
|
8
|
+
const toExport = CubeStoreDriver;
|
|
10
9
|
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
module.exports
|
|
17
|
-
module.exports.CubeStoreHandler = CubeStoreHandler;
|
|
10
|
+
// eslint-disable-next-line no-restricted-syntax
|
|
11
|
+
for (const [key, module] of Object.entries(fromExports)) {
|
|
12
|
+
toExport[key] = module;
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
module.exports = toExport;
|
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.
|
|
5
|
+
"version": "0.31.34",
|
|
6
6
|
"repository": {
|
|
7
7
|
"type": "git",
|
|
8
8
|
"url": "https://github.com/cube-js/cube.js.git",
|
|
@@ -23,16 +23,12 @@
|
|
|
23
23
|
"tsc": "tsc",
|
|
24
24
|
"watch": "tsc -w",
|
|
25
25
|
"lint": "eslint src/*.ts",
|
|
26
|
-
"lint:fix": "eslint --fix src/*.ts"
|
|
27
|
-
"test": "yarn integration",
|
|
28
|
-
"integration": "jest",
|
|
29
|
-
"integration:cubestore": "jest"
|
|
26
|
+
"lint:fix": "eslint --fix src/*.ts"
|
|
30
27
|
},
|
|
31
28
|
"dependencies": {
|
|
32
|
-
"@cubejs-backend/base-driver": "^0.31.
|
|
33
|
-
"@cubejs-backend/cubestore": "^0.31.
|
|
34
|
-
"@cubejs-backend/
|
|
35
|
-
"@cubejs-backend/shared": "^0.31.32",
|
|
29
|
+
"@cubejs-backend/base-driver": "^0.31.33",
|
|
30
|
+
"@cubejs-backend/cubestore": "^0.31.34",
|
|
31
|
+
"@cubejs-backend/shared": "^0.31.33",
|
|
36
32
|
"csv-write-stream": "^2.0.0",
|
|
37
33
|
"flatbuffers": "^1.12.0",
|
|
38
34
|
"fs-extra": "^9.1.0",
|
|
@@ -46,7 +42,6 @@
|
|
|
46
42
|
},
|
|
47
43
|
"devDependencies": {
|
|
48
44
|
"@cubejs-backend/linter": "^0.31.0",
|
|
49
|
-
"@cubejs-backend/testing-shared": "^0.31.32",
|
|
50
45
|
"@types/flatbuffers": "^1.10.0",
|
|
51
46
|
"@types/generic-pool": "^3.1.9",
|
|
52
47
|
"@types/mysql": "^2.15.17",
|
|
@@ -67,5 +62,5 @@
|
|
|
67
62
|
"eslintConfig": {
|
|
68
63
|
"extends": "../cubejs-linter"
|
|
69
64
|
},
|
|
70
|
-
"gitHead": "
|
|
65
|
+
"gitHead": "7a9df9866b494d2abba4ad265766cf8051582f20"
|
|
71
66
|
}
|
|
@@ -1,37 +0,0 @@
|
|
|
1
|
-
import { BaseFilter, BaseQuery, BaseMeasure } from '@cubejs-backend/schema-compiler';
|
|
2
|
-
declare class CubeStoreFilter extends BaseFilter {
|
|
3
|
-
likeIgnoreCase(column: any, not: any, param: any, type: string): string;
|
|
4
|
-
}
|
|
5
|
-
declare type RollingWindow = {
|
|
6
|
-
trailing?: string | 'unbounded';
|
|
7
|
-
leading?: string | 'unbounded';
|
|
8
|
-
offset?: 'start' | 'end';
|
|
9
|
-
};
|
|
10
|
-
export declare class CubeStoreQuery extends BaseQuery {
|
|
11
|
-
newFilter(filter: any): CubeStoreFilter;
|
|
12
|
-
convertTz(field: any): string;
|
|
13
|
-
timeStampParam(): string;
|
|
14
|
-
timeStampCast(value: any): string;
|
|
15
|
-
timestampFormat(): string;
|
|
16
|
-
dateTimeCast(value: any): string;
|
|
17
|
-
subtractInterval(date: any, interval: any): string;
|
|
18
|
-
addInterval(date: any, interval: any): string;
|
|
19
|
-
timeGroupedColumn(granularity: any, dimension: any): string;
|
|
20
|
-
escapeColumnName(name: any): string;
|
|
21
|
-
seriesSql(timeDimension: any): any;
|
|
22
|
-
concatStringsSql(strings: any): string;
|
|
23
|
-
unixTimestampSql(): string;
|
|
24
|
-
wrapSegmentForDimensionSelect(sql: any): string;
|
|
25
|
-
hllMerge(sql: any): string;
|
|
26
|
-
hllCardinalityMerge(sql: any): string;
|
|
27
|
-
hllCardinality(sql: any): string;
|
|
28
|
-
castToString(sql: any): string;
|
|
29
|
-
countDistinctApprox(sql: any): string;
|
|
30
|
-
regularAndTimeSeriesRollupQuery(regularMeasures: BaseMeasure[], multipliedMeasures: BaseMeasure[], cumulativeMeasures: Array<[boolean, BaseMeasure]>, preAggregationForQuery: any): any;
|
|
31
|
-
overTimeSeriesSelectRollup(cumulativeMeasures: any, otherMeasures: any, baseQuery: any, baseQueryAlias: any, timeDimension: any, preAggregationForQuery: any): string;
|
|
32
|
-
toInterval(interval: any): string;
|
|
33
|
-
maxRollingWindow(a: RollingWindow, b: RollingWindow): RollingWindow;
|
|
34
|
-
overTimeSeriesForSelectRollup(cumulativeMeasures: any, otherMeasures: any, timeDimension: any, preAggregationForQuery: any): any;
|
|
35
|
-
}
|
|
36
|
-
export {};
|
|
37
|
-
//# sourceMappingURL=CubeStoreQuery.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"CubeStoreQuery.d.ts","sourceRoot":"","sources":["../../src/CubeStoreQuery.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,iCAAiC,CAAC;AAarF,cAAM,eAAgB,SAAQ,UAAU;IAC/B,cAAc,CAAC,MAAM,KAAA,EAAE,GAAG,KAAA,EAAE,KAAK,KAAA,EAAE,IAAI,EAAE,MAAM;CAKvD;AAED,aAAK,aAAa,GAAG;IACnB,QAAQ,CAAC,EAAE,MAAM,GAAG,WAAW,CAAC;IAChC,OAAO,CAAC,EAAE,MAAM,GAAG,WAAW,CAAC;IAC/B,MAAM,CAAC,EAAE,OAAO,GAAG,KAAK,CAAC;CAC1B,CAAC;AAEF,qBAAa,cAAe,SAAQ,SAAS;IACpC,SAAS,CAAC,MAAM,KAAA;IAIhB,SAAS,CAAC,KAAK,KAAA;IAIf,cAAc;IAId,aAAa,CAAC,KAAK,KAAA;IAInB,eAAe;IAIf,YAAY,CAAC,KAAK,KAAA;IAIlB,gBAAgB,CAAC,IAAI,KAAA,EAAE,QAAQ,KAAA;IAI/B,WAAW,CAAC,IAAI,KAAA,EAAE,QAAQ,KAAA;IAI1B,iBAAiB,CAAC,WAAW,KAAA,EAAE,SAAS,KAAA;IAIxC,gBAAgB,CAAC,IAAI,KAAA;IAIrB,SAAS,CAAC,aAAa,KAAA;IAOvB,gBAAgB,CAAC,OAAO,KAAA;IAIxB,gBAAgB;IAIhB,6BAA6B,CAAC,GAAG,KAAA;IAIjC,QAAQ,CAAC,GAAG,KAAA;IAIZ,mBAAmB,CAAC,GAAG,KAAA;IAIvB,cAAc,CAAC,GAAG,KAAA;IAIlB,YAAY,CAAC,GAAG,KAAA;IAIhB,mBAAmB,CAAC,GAAG,KAAA;IAKvB,+BAA+B,CACpC,eAAe,EAAE,WAAW,EAAE,EAC9B,kBAAkB,EAAE,WAAW,EAAE,EACjC,kBAAkB,EAAE,KAAK,CAAC,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC,EACjD,sBAAsB,EAAE,GAAG;IA4CtB,0BAA0B,CAAC,kBAAkB,KAAA,EAAE,aAAa,KAAA,EAAE,SAAS,KAAA,EAAE,cAAc,KAAA,EAAE,aAAa,KAAA,EAAE,sBAAsB,KAAA;IAW9H,UAAU,CAAC,QAAQ,KAAA;IAQnB,gBAAgB,CAAC,CAAC,EAAE,aAAa,EAAE,CAAC,EAAE,aAAa,GAAG,aAAa;IAyCnE,6BAA6B,CAAC,kBAAkB,KAAA,EAAE,aAAa,KAAA,EAAE,aAAa,KAAA,EAAE,sBAAsB,KAAA;CA8C9G"}
|
|
@@ -1,211 +0,0 @@
|
|
|
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.CubeStoreQuery = void 0;
|
|
7
|
-
const moment_timezone_1 = __importDefault(require("moment-timezone"));
|
|
8
|
-
const schema_compiler_1 = require("@cubejs-backend/schema-compiler");
|
|
9
|
-
const GRANULARITY_TO_INTERVAL = {
|
|
10
|
-
day: 'day',
|
|
11
|
-
week: 'week',
|
|
12
|
-
hour: 'hour',
|
|
13
|
-
minute: 'minute',
|
|
14
|
-
second: 'second',
|
|
15
|
-
month: 'month',
|
|
16
|
-
quarter: 'quarter',
|
|
17
|
-
year: 'year'
|
|
18
|
-
};
|
|
19
|
-
class CubeStoreFilter extends schema_compiler_1.BaseFilter {
|
|
20
|
-
likeIgnoreCase(column, not, param, type) {
|
|
21
|
-
const p = (!type || type === 'contains' || type === 'ends') ? '%' : '';
|
|
22
|
-
const s = (!type || type === 'contains' || type === 'starts') ? '%' : '';
|
|
23
|
-
return `${column}${not ? ' NOT' : ''} ILIKE CONCAT('${p}', ${this.allocateParam(param)}, '${s}')`;
|
|
24
|
-
}
|
|
25
|
-
}
|
|
26
|
-
class CubeStoreQuery extends schema_compiler_1.BaseQuery {
|
|
27
|
-
newFilter(filter) {
|
|
28
|
-
return new CubeStoreFilter(this, filter);
|
|
29
|
-
}
|
|
30
|
-
convertTz(field) {
|
|
31
|
-
return `CONVERT_TZ(${field}, '${moment_timezone_1.default().tz(this.timezone).format('Z')}')`;
|
|
32
|
-
}
|
|
33
|
-
timeStampParam() {
|
|
34
|
-
return 'to_timestamp(?)';
|
|
35
|
-
}
|
|
36
|
-
timeStampCast(value) {
|
|
37
|
-
return `CAST(${value} as TIMESTAMP)`; // TODO
|
|
38
|
-
}
|
|
39
|
-
timestampFormat() {
|
|
40
|
-
return moment_timezone_1.default.HTML5_FMT.DATETIME_LOCAL_MS;
|
|
41
|
-
}
|
|
42
|
-
dateTimeCast(value) {
|
|
43
|
-
return `to_timestamp(${value})`;
|
|
44
|
-
}
|
|
45
|
-
subtractInterval(date, interval) {
|
|
46
|
-
return `DATE_SUB(${date}, INTERVAL '${interval}')`;
|
|
47
|
-
}
|
|
48
|
-
addInterval(date, interval) {
|
|
49
|
-
return `DATE_ADD(${date}, INTERVAL '${interval}')`;
|
|
50
|
-
}
|
|
51
|
-
timeGroupedColumn(granularity, dimension) {
|
|
52
|
-
return `date_trunc('${GRANULARITY_TO_INTERVAL[granularity]}', ${dimension})`;
|
|
53
|
-
}
|
|
54
|
-
escapeColumnName(name) {
|
|
55
|
-
return `\`${name}\``;
|
|
56
|
-
}
|
|
57
|
-
seriesSql(timeDimension) {
|
|
58
|
-
const values = timeDimension.timeSeries().map(([from, to]) => `select to_timestamp('${from}') date_from, to_timestamp('${to}') date_to`).join(' UNION ALL ');
|
|
59
|
-
return values;
|
|
60
|
-
}
|
|
61
|
-
concatStringsSql(strings) {
|
|
62
|
-
return `CONCAT(${strings.join(', ')})`;
|
|
63
|
-
}
|
|
64
|
-
unixTimestampSql() {
|
|
65
|
-
return 'UNIX_TIMESTAMP()';
|
|
66
|
-
}
|
|
67
|
-
wrapSegmentForDimensionSelect(sql) {
|
|
68
|
-
return `IF(${sql}, 1, 0)`;
|
|
69
|
-
}
|
|
70
|
-
hllMerge(sql) {
|
|
71
|
-
return `merge(${sql})`;
|
|
72
|
-
}
|
|
73
|
-
hllCardinalityMerge(sql) {
|
|
74
|
-
return `cardinality(merge(${sql}))`;
|
|
75
|
-
}
|
|
76
|
-
hllCardinality(sql) {
|
|
77
|
-
return `cardinality(${sql})`;
|
|
78
|
-
}
|
|
79
|
-
castToString(sql) {
|
|
80
|
-
return `CAST(${sql} as VARCHAR)`;
|
|
81
|
-
}
|
|
82
|
-
countDistinctApprox(sql) {
|
|
83
|
-
// TODO: We should throw an error, but this gets called even when only `hllMerge` result is used.
|
|
84
|
-
return `approx_distinct_is_unsupported_in_cubestore(${sql}))`;
|
|
85
|
-
}
|
|
86
|
-
regularAndTimeSeriesRollupQuery(regularMeasures, multipliedMeasures, cumulativeMeasures, preAggregationForQuery) {
|
|
87
|
-
var _a;
|
|
88
|
-
if (!cumulativeMeasures.length) {
|
|
89
|
-
return super.regularAndTimeSeriesRollupQuery(regularMeasures, multipliedMeasures, cumulativeMeasures, preAggregationForQuery);
|
|
90
|
-
}
|
|
91
|
-
const cumulativeMeasuresWithoutMultiplied = cumulativeMeasures.map(([_, measure]) => measure);
|
|
92
|
-
const allMeasures = regularMeasures.concat(multipliedMeasures).concat(cumulativeMeasuresWithoutMultiplied);
|
|
93
|
-
const timeDimension = this.timeDimensions.find(d => d.granularity);
|
|
94
|
-
const baseQueryAlias = this.cubeAlias('base');
|
|
95
|
-
const maxRollingWindow = cumulativeMeasuresWithoutMultiplied.reduce((a, b) => this.maxRollingWindow(a, b.rollingWindowDefinition()), null);
|
|
96
|
-
const commonDateCondition = this.rollingWindowDateJoinCondition(maxRollingWindow.trailing, maxRollingWindow.leading, maxRollingWindow.offset);
|
|
97
|
-
const filters = this.segments.concat(this.filters).concat((timeDimension === null || timeDimension === void 0 ? void 0 : timeDimension.dateRange) && this.dateFromStartToEndConditionSql(commonDateCondition, true, true) || []);
|
|
98
|
-
const rollupGranularity = ((_a = this.preAggregations) === null || _a === void 0 ? void 0 : _a.castGranularity(preAggregationForQuery.preAggregation.granularity)) || 'day';
|
|
99
|
-
const granularityOverride = timeDimension &&
|
|
100
|
-
cumulativeMeasuresWithoutMultiplied.reduce((a, b) => this.minGranularity(a, b.windowGranularity()), timeDimension.granularity) || rollupGranularity;
|
|
101
|
-
return this.evaluateSymbolSqlWithContext(() => this.overTimeSeriesSelectRollup(cumulativeMeasuresWithoutMultiplied, regularMeasures.concat(multipliedMeasures), this.evaluateSymbolSqlWithContext(() => { var _a; return (_a = this.preAggregations) === null || _a === void 0 ? void 0 : _a.rollupPreAggregation(preAggregationForQuery, allMeasures, false, filters); }, {
|
|
102
|
-
granularityOverride,
|
|
103
|
-
overTimeSeriesAggregate: true
|
|
104
|
-
}), baseQueryAlias, timeDimension, preAggregationForQuery), {
|
|
105
|
-
wrapQuery: true,
|
|
106
|
-
wrappedGranularity: (timeDimension === null || timeDimension === void 0 ? void 0 : timeDimension.granularity) || rollupGranularity,
|
|
107
|
-
rollupGranularity: granularityOverride,
|
|
108
|
-
topLevelMerge: false,
|
|
109
|
-
renderedReference: timeDimension ? {
|
|
110
|
-
[timeDimension.dimension]: timeDimension.cumulativeSelectColumns()[0]
|
|
111
|
-
} : undefined
|
|
112
|
-
});
|
|
113
|
-
}
|
|
114
|
-
overTimeSeriesSelectRollup(cumulativeMeasures, otherMeasures, baseQuery, baseQueryAlias, timeDimension, preAggregationForQuery) {
|
|
115
|
-
const cumulativeDimensions = this.dimensions.map(s => s.cumulativeSelectColumns()).filter(c => !!c).join(', ');
|
|
116
|
-
const partitionByClause = this.dimensions.length ? `PARTITION BY ${cumulativeDimensions}` : '';
|
|
117
|
-
const groupByDimensionClause = otherMeasures.length && timeDimension ? ` GROUP BY DIMENSION ${timeDimension.dimensionSql()}` : '';
|
|
118
|
-
const rollingWindowOrGroupByClause = timeDimension ?
|
|
119
|
-
` ROLLING_WINDOW DIMENSION ${timeDimension.aliasName()}${partitionByClause}${groupByDimensionClause} FROM ${this.timeGroupedColumn(timeDimension.granularity, timeDimension.localDateTimeFromOrBuildRangeParam())} TO ${this.timeGroupedColumn(timeDimension.granularity, timeDimension.localDateTimeToOrBuildRangeParam())} EVERY INTERVAL '1 ${timeDimension.granularity}'` :
|
|
120
|
-
this.groupByClause();
|
|
121
|
-
const forSelect = this.overTimeSeriesForSelectRollup(cumulativeMeasures, otherMeasures, timeDimension, preAggregationForQuery);
|
|
122
|
-
return `SELECT ${forSelect} FROM (${baseQuery}) ${baseQueryAlias}${rollingWindowOrGroupByClause}`;
|
|
123
|
-
}
|
|
124
|
-
toInterval(interval) {
|
|
125
|
-
if (interval === 'unbounded') {
|
|
126
|
-
return 'UNBOUNDED';
|
|
127
|
-
}
|
|
128
|
-
else {
|
|
129
|
-
return `INTERVAL '${interval}'`;
|
|
130
|
-
}
|
|
131
|
-
}
|
|
132
|
-
maxRollingWindow(a, b) {
|
|
133
|
-
if (!a) {
|
|
134
|
-
return b;
|
|
135
|
-
}
|
|
136
|
-
if (!b) {
|
|
137
|
-
return a;
|
|
138
|
-
}
|
|
139
|
-
let trailing;
|
|
140
|
-
if (a.trailing === 'unbounded' || b.trailing === 'unbounded') {
|
|
141
|
-
trailing = 'unbounded';
|
|
142
|
-
}
|
|
143
|
-
else if (!a.trailing) {
|
|
144
|
-
trailing = b.trailing;
|
|
145
|
-
}
|
|
146
|
-
else if (!b.trailing) {
|
|
147
|
-
trailing = a.trailing;
|
|
148
|
-
}
|
|
149
|
-
else {
|
|
150
|
-
trailing = this.parseSecondDuration(a.trailing) > this.parseSecondDuration(b.trailing) ? a.trailing : b.trailing;
|
|
151
|
-
}
|
|
152
|
-
let leading;
|
|
153
|
-
if (a.leading === 'unbounded' || b.leading === 'unbounded') {
|
|
154
|
-
leading = 'unbounded';
|
|
155
|
-
}
|
|
156
|
-
else if (!a.leading) {
|
|
157
|
-
leading = b.leading;
|
|
158
|
-
}
|
|
159
|
-
else if (!b.leading) {
|
|
160
|
-
leading = a.leading;
|
|
161
|
-
}
|
|
162
|
-
else {
|
|
163
|
-
leading = this.parseSecondDuration(a.leading) > this.parseSecondDuration(b.leading) ? a.leading : b.leading;
|
|
164
|
-
}
|
|
165
|
-
if ((a.offset || 'end') !== (b.offset || 'end')) {
|
|
166
|
-
// TODO introduce virtual 'both' offset and return it if max receives 'start' and 'end'
|
|
167
|
-
throw new Error('Mixed offset rolling window querying is not supported');
|
|
168
|
-
}
|
|
169
|
-
return {
|
|
170
|
-
trailing,
|
|
171
|
-
leading,
|
|
172
|
-
offset: a.offset
|
|
173
|
-
};
|
|
174
|
-
}
|
|
175
|
-
overTimeSeriesForSelectRollup(cumulativeMeasures, otherMeasures, timeDimension, preAggregationForQuery) {
|
|
176
|
-
var _a;
|
|
177
|
-
const rollupMeasures = (_a = this.preAggregations) === null || _a === void 0 ? void 0 : _a.rollupMeasures(preAggregationForQuery);
|
|
178
|
-
const renderedReference = rollupMeasures.map(measure => {
|
|
179
|
-
const m = this.newMeasure(measure);
|
|
180
|
-
const renderSql = () => {
|
|
181
|
-
if (timeDimension && m.isCumulative()) {
|
|
182
|
-
const measureSql = m.cumulativeMeasureSql();
|
|
183
|
-
const rollingWindow = m.rollingWindowDefinition();
|
|
184
|
-
const preceding = rollingWindow.trailing ? `${this.toInterval(rollingWindow.trailing)} PRECEDING` : '';
|
|
185
|
-
const following = rollingWindow.leading ? `${this.toInterval(rollingWindow.leading)} FOLLOWING` : '';
|
|
186
|
-
const offset = ` OFFSET ${rollingWindow.offset || 'end'}`;
|
|
187
|
-
const rollingMeasure = `ROLLING(${measureSql} ${preceding && following ? 'RANGE BETWEEN ' : 'RANGE '}${preceding}${preceding && following ? ' ' : ''}${following}${offset})`;
|
|
188
|
-
return this.topAggregateWrap(m.measureDefinition(), rollingMeasure);
|
|
189
|
-
}
|
|
190
|
-
else {
|
|
191
|
-
const conditionFn = m.isCumulative() ? this.dateFromStartToEndConditionSql(m.dateJoinCondition(), true, true)[0] : timeDimension;
|
|
192
|
-
return this.evaluateSymbolSqlWithContext(() => {
|
|
193
|
-
const aliasName = m.aliasName();
|
|
194
|
-
return this.aggregateOnGroupedColumn(m.measureDefinition(), aliasName, true, m.measure);
|
|
195
|
-
}, {
|
|
196
|
-
cumulativeMeasureFilters: { [m.measure]: conditionFn }
|
|
197
|
-
});
|
|
198
|
-
}
|
|
199
|
-
};
|
|
200
|
-
return {
|
|
201
|
-
[measure]: renderSql()
|
|
202
|
-
};
|
|
203
|
-
}).reduce((a, b) => ({ ...a, ...b }), {});
|
|
204
|
-
return this.evaluateSymbolSqlWithContext(() => this.dimensions.concat(this.timeDimensions.filter(d => d.granularity)).map(s => s.cumulativeSelectColumns()).concat(this.measures.map(m => m.selectColumns())).filter(c => !!c)
|
|
205
|
-
.join(', '), {
|
|
206
|
-
renderedReference
|
|
207
|
-
});
|
|
208
|
-
}
|
|
209
|
-
}
|
|
210
|
-
exports.CubeStoreQuery = CubeStoreQuery;
|
|
211
|
-
//# sourceMappingURL=CubeStoreQuery.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"CubeStoreQuery.js","sourceRoot":"","sources":["../../src/CubeStoreQuery.ts"],"names":[],"mappings":"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"}
|