From db77db766f9b94916346edde0b6862ef9c645a88 Mon Sep 17 00:00:00 2001 From: Alexandr Romanenko Date: Mon, 28 Jul 2025 15:18:57 +0200 Subject: [PATCH 1/2] fix(cube): Turn off CubeStore rolling window logic based on joins --- .../src/adapter/CubeStoreQuery.ts | 16 ++-------------- 1 file changed, 2 insertions(+), 14 deletions(-) diff --git a/packages/cubejs-schema-compiler/src/adapter/CubeStoreQuery.ts b/packages/cubejs-schema-compiler/src/adapter/CubeStoreQuery.ts index fd6f23a44a666..8003d0c1cbea7 100644 --- a/packages/cubejs-schema-compiler/src/adapter/CubeStoreQuery.ts +++ b/packages/cubejs-schema-compiler/src/adapter/CubeStoreQuery.ts @@ -1,5 +1,5 @@ import moment from 'moment-timezone'; -import { parseSqlInterval, getEnv } from '@cubejs-backend/shared'; +import { parseSqlInterval } from '@cubejs-backend/shared'; import { BaseQuery } from './BaseQuery'; import { BaseFilter } from './BaseFilter'; import { BaseMeasure } from './BaseMeasure'; @@ -32,12 +32,6 @@ type RollingWindow = { }; export class CubeStoreQuery extends BaseQuery { - private readonly cubeStoreRollingWindowJoin: boolean; - - public constructor(compilers, options) { - super(compilers, options); - this.cubeStoreRollingWindowJoin = getEnv('cubeStoreRollingWindowJoin'); - } public newFilter(filter) { return new CubeStoreFilter(this, filter); @@ -64,16 +58,10 @@ export class CubeStoreQuery extends BaseQuery { } public subtractInterval(date: string, interval: string) { - if (this.cubeStoreRollingWindowJoin) { - return super.subtractInterval(date, interval); - } return `DATE_SUB(${date}, INTERVAL ${this.formatInterval(interval)})`; } public addInterval(date: string, interval: string) { - if (this.cubeStoreRollingWindowJoin) { - return super.addInterval(date, interval); - } return `DATE_ADD(${date}, INTERVAL ${this.formatInterval(interval)})`; } @@ -198,7 +186,7 @@ export class CubeStoreQuery extends BaseQuery { cumulativeMeasures: Array<[boolean, BaseMeasure]>, preAggregationForQuery: any ) { - if (this.cubeStoreRollingWindowJoin || !cumulativeMeasures.length) { + if (!cumulativeMeasures.length) { return super.regularAndTimeSeriesRollupQuery(regularMeasures, multipliedMeasures, cumulativeMeasures, preAggregationForQuery); } const cumulativeMeasuresWithoutMultiplied = cumulativeMeasures.map(([_, measure]) => measure); From ffbc44213c8765900b6c876bf4ed4995f6ddd168 Mon Sep 17 00:00:00 2001 From: Alexandr Romanenko Date: Mon, 28 Jul 2025 16:47:00 +0200 Subject: [PATCH 2/2] lint --- packages/cubejs-schema-compiler/src/adapter/CubeStoreQuery.ts | 1 - 1 file changed, 1 deletion(-) diff --git a/packages/cubejs-schema-compiler/src/adapter/CubeStoreQuery.ts b/packages/cubejs-schema-compiler/src/adapter/CubeStoreQuery.ts index 8003d0c1cbea7..7ecc8c1aad79f 100644 --- a/packages/cubejs-schema-compiler/src/adapter/CubeStoreQuery.ts +++ b/packages/cubejs-schema-compiler/src/adapter/CubeStoreQuery.ts @@ -32,7 +32,6 @@ type RollingWindow = { }; export class CubeStoreQuery extends BaseQuery { - public newFilter(filter) { return new CubeStoreFilter(this, filter); }