@cubejs-backend/schema-compiler 1.2.13 → 1.2.15

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.
@@ -100,7 +100,7 @@ export class BaseQuery {
100
100
  measureFilters: any;
101
101
  timeDimensions: any;
102
102
  allFilters: any;
103
- join: any;
103
+ useNativeSqlPlanner: any;
104
104
  cubeAliasPrefix: any;
105
105
  preAggregationsSchemaOption: any;
106
106
  externalQueryClass: any;
@@ -116,6 +116,8 @@ export class BaseQuery {
116
116
  alias: string;
117
117
  }[] | undefined;
118
118
  order: any;
119
+ prebuildJoin(): void;
120
+ join: any;
119
121
  cacheValue(key: any, fn: any, { contextPropNames, inputProps, cache }?: {
120
122
  contextPropNames: any;
121
123
  inputProps: any;
@@ -175,6 +177,7 @@ export class BaseQuery {
175
177
  countAllQuery(sql: string): string;
176
178
  regularAndTimeSeriesRollupQuery(regularMeasures: any, multipliedMeasures: any, cumulativeMeasures: any, preAggregationForQuery: any): string;
177
179
  externalPreAggregationQuery(): boolean;
180
+ newQueryWithoutNative(): any;
178
181
  /**
179
182
  * Returns a pair of SQL query string and parameter values for the query.
180
183
  * @param {boolean} [exportAnnotatedSql] - returns annotated sql with not rendered params if true
@@ -581,7 +584,10 @@ export class BaseQuery {
581
584
  };
582
585
  contextSymbolsProxy(symbols: any): any;
583
586
  filtersProxy(): {};
587
+ filtersProxyForRust(usedFilters: any): {};
588
+ filterGroupFunctionForRust(usedFilters: any): (...filterParamArgs: any[]) => string;
584
589
  filterGroupFunction(): (...filterParamArgs: any[]) => string;
590
+ filterGroupFunctionImpl(allFilters: any): (...filterParamArgs: any[]) => string;
585
591
  flattenAllMembers(excludeSegments?: boolean): any[];
586
592
  allBackAliasMembersExceptSegments(): any;
587
593
  allBackAliasMembers(): any;
@@ -1 +1 @@
1
- {"version":3,"file":"BaseQuery.d.ts","sourceRoot":"","sources":["../../../src/adapter/BaseQuery.js"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"BaseQuery.d.ts","sourceRoot":"","sources":["../../../src/adapter/BaseQuery.js"],"names":[],"mappings":"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"}
@@ -265,10 +265,8 @@ class BaseQuery {
265
265
  return dimension;
266
266
  }).filter(ramda_1.default.identity).map(this.newTimeDimension.bind(this));
267
267
  this.allFilters = this.timeDimensions.concat(this.segments).concat(this.filters);
268
- if (!(0, shared_1.getEnv)('nativeSqlPlanner')) {
269
- // Tesseract doesn't require join to be prebuilt and there's a case where single join can't be built for multi-fact query
270
- this.join = this.joinGraph.buildJoin(this.allJoinHints);
271
- }
268
+ this.useNativeSqlPlanner = this.options.useNativeSqlPlanner ?? (0, shared_1.getEnv)('nativeSqlPlanner');
269
+ this.prebuildJoin();
272
270
  this.cubeAliasPrefix = this.options.cubeAliasPrefix;
273
271
  this.preAggregationsSchemaOption = this.options.preAggregationsSchema ?? DEFAULT_PREAGGREGATIONS_SCHEMA;
274
272
  this.externalQueryClass = this.options.externalQueryClass;
@@ -281,6 +279,13 @@ class BaseQuery {
281
279
  this.order = this.options.order ?? this.defaultOrder();
282
280
  this.initUngrouped();
283
281
  }
282
+ prebuildJoin() {
283
+ /* if (!this.useNativeSqlPlanner) { We still need this join for the follback to preaggregation to work properly. This condition should be returned after the tesseract starts working with pre-aggregations
284
+ // Tesseract doesn't require join to be prebuilt and there's a case where single join can't be built for multi-fact query
285
+ this.join = this.joinGraph.buildJoin(this.allJoinHints);
286
+ } */
287
+ this.join = this.joinGraph.buildJoin(this.allJoinHints);
288
+ }
284
289
  cacheValue(key, fn, { contextPropNames, inputProps, cache } = {}) {
285
290
  const currentContext = this.safeEvaluateSymbolContext();
286
291
  if (contextPropNames) {
@@ -343,8 +348,7 @@ class BaseQuery {
343
348
  initUngrouped() {
344
349
  this.ungrouped = this.options.ungrouped;
345
350
  if (this.ungrouped) {
346
- // this.join is not defined for Tesseract
347
- if (!this.options.allowUngroupedWithoutPrimaryKey && !(0, shared_1.getEnv)('nativeSqlPlanner')) {
351
+ if (!this.options.allowUngroupedWithoutPrimaryKey) {
348
352
  const cubes = ramda_1.default.uniq([this.join.root].concat(this.join.joins.map(j => j.originalTo)));
349
353
  const primaryKeyNames = cubes.flatMap(c => this.primaryKeyNames(c));
350
354
  const missingPrimaryKeys = primaryKeyNames.filter(key => !this.dimensions.find(d => d.dimension === key));
@@ -509,23 +513,46 @@ class BaseQuery {
509
513
  }
510
514
  return false;
511
515
  }
516
+ newQueryWithoutNative() {
517
+ const QueryClass = this.constructor;
518
+ return new QueryClass(this.compilers, { ...this.options, useNativeSqlPlanner: false });
519
+ }
512
520
  /**
513
521
  * Returns a pair of SQL query string and parameter values for the query.
514
522
  * @param {boolean} [exportAnnotatedSql] - returns annotated sql with not rendered params if true
515
523
  * @returns {[string, Array<unknown>]}
516
524
  */
517
525
  buildSqlAndParams(exportAnnotatedSql) {
518
- if ((0, shared_1.getEnv)('nativeSqlPlanner')) {
519
- return this.buildSqlAndParamsRust(exportAnnotatedSql);
526
+ if (!this.options.preAggregationQuery && !this.options.disableExternalPreAggregations && this.externalQueryClass) {
527
+ if (this.externalPreAggregationQuery()) { // TODO performance
528
+ return this.externalQuery().buildSqlAndParams(exportAnnotatedSql);
529
+ }
520
530
  }
521
- else {
522
- if (!this.options.preAggregationQuery && !this.options.disableExternalPreAggregations && this.externalQueryClass) {
523
- if (this.externalPreAggregationQuery()) { // TODO performance
524
- return this.externalQuery().buildSqlAndParams(exportAnnotatedSql);
531
+ if (this.useNativeSqlPlanner) {
532
+ let isRelatedToPreAggregation = false;
533
+ if (this.options.preAggregationQuery) {
534
+ isRelatedToPreAggregation = true;
535
+ }
536
+ else if (!this.options.disableExternalPreAggregations && this.externalQueryClass) {
537
+ if (this.externalPreAggregationQuery()) {
538
+ isRelatedToPreAggregation = true;
525
539
  }
526
540
  }
527
- return this.compilers.compiler.withQuery(this, () => this.cacheValue(['buildSqlAndParams', exportAnnotatedSql], () => this.paramAllocator.buildSqlAndParams(this.buildParamAnnotatedSql(), exportAnnotatedSql, this.shouldReuseParams), { cache: this.queryCache }));
541
+ else {
542
+ let preAggForQuery = this.preAggregations.findPreAggregationForQuery();
543
+ if (this.options.disableExternalPreAggregations && preAggForQuery && preAggForQuery.preAggregation.external) {
544
+ preAggForQuery = undefined;
545
+ }
546
+ if (preAggForQuery) {
547
+ isRelatedToPreAggregation = true;
548
+ }
549
+ }
550
+ if (isRelatedToPreAggregation) {
551
+ return this.newQueryWithoutNative().buildSqlAndParams(exportAnnotatedSql);
552
+ }
553
+ return this.buildSqlAndParamsRust(exportAnnotatedSql);
528
554
  }
555
+ return this.compilers.compiler.withQuery(this, () => this.cacheValue(['buildSqlAndParams', exportAnnotatedSql], () => this.paramAllocator.buildSqlAndParams(this.buildParamAnnotatedSql(), exportAnnotatedSql, this.shouldReuseParams), { cache: this.queryCache }));
529
556
  }
530
557
  buildSqlAndParamsRust(exportAnnotatedSql) {
531
558
  const order = this.options.order && ramda_1.default.pipe(ramda_1.default.map((hash) => ((!hash || !hash.id) ? null : hash)), ramda_1.default.reject(ramda_1.default.isNil))(this.options.order);
@@ -2332,6 +2359,7 @@ class BaseQuery {
2332
2359
  return new QueryClass(this.compilers, this.subQueryOptions(options));
2333
2360
  }
2334
2361
  newSubQueryForCube(cube, options) {
2362
+ options = { ...options, useNativeSqlPlanner: false }; // We don't use tesseract for pre-aggregations generation yet
2335
2363
  if (this.options.queryFactory) {
2336
2364
  // When dealing with rollup joins, it's crucial to use the correct parameter allocator for the specific cube in use.
2337
2365
  // By default, we'll use BaseQuery, but it's important to note that different databases (Oracle, PostgreSQL, MySQL, Druid, etc.)
@@ -2353,6 +2381,7 @@ class BaseQuery {
2353
2381
  historyQueries: this.options.historyQueries,
2354
2382
  externalQueryClass: this.options.externalQueryClass,
2355
2383
  queryFactory: this.options.queryFactory,
2384
+ useNativeSqlPlanner: this.options.useNativeSqlPlanner,
2356
2385
  ...options,
2357
2386
  };
2358
2387
  }
@@ -2687,6 +2716,7 @@ class BaseQuery {
2687
2716
  in: '{{ column }} IN ({{ values_concat }}){{ is_null_check }}',
2688
2717
  not_in: '{{ column }} NOT IN ({{ values_concat }}){{ is_null_check }}',
2689
2718
  time_range_filter: '{{ column }} >= {{ from_timestamp }} AND {{ column }} <= {{ to_timestamp }}',
2719
+ time_not_in_range_filter: '{{ column }} < {{ from_timestamp }} OR {{ column }} > {{ to_timestamp }}',
2690
2720
  gt: '{{ column }} > {{ param }}',
2691
2721
  gte: '{{ column }} >= {{ param }}',
2692
2722
  lt: '{{ column }} < {{ param }}',
@@ -3127,6 +3157,16 @@ class BaseQuery {
3127
3157
  const { allFilters } = this;
3128
3158
  return BaseQuery.filterProxyFromAllFilters(allFilters, this.cubeEvaluator, this.paramAllocator.allocateParam.bind(this.paramAllocator), this.newGroupFilter.bind(this));
3129
3159
  }
3160
+ filtersProxyForRust(usedFilters) {
3161
+ const filters = this.extractFiltersAsTree(usedFilters || []);
3162
+ const allFilters = filters.map(this.initFilter.bind(this));
3163
+ return BaseQuery.filterProxyFromAllFilters(allFilters, this.cubeEvaluator, this.paramAllocator.allocateParam.bind(this.paramAllocator), this.newGroupFilter.bind(this));
3164
+ }
3165
+ filterGroupFunctionForRust(usedFilters) {
3166
+ const filters = this.extractFiltersAsTree(usedFilters || []);
3167
+ const allFilters = filters.map(this.initFilter.bind(this));
3168
+ return this.filterGroupFunctionImpl(allFilters);
3169
+ }
3130
3170
  static renderFilterParams(filter, filterParamArgs, allocateParam, newGroupFilter, aliases) {
3131
3171
  if (!filter) {
3132
3172
  return BaseFilter_1.BaseFilter.ALWAYS_TRUE;
@@ -3159,6 +3199,9 @@ class BaseQuery {
3159
3199
  }
3160
3200
  filterGroupFunction() {
3161
3201
  const { allFilters } = this;
3202
+ return this.filterGroupFunctionImpl(allFilters);
3203
+ }
3204
+ filterGroupFunctionImpl(allFilters) {
3162
3205
  const allocateParam = this.paramAllocator.allocateParam.bind(this.paramAllocator);
3163
3206
  const newGroupFilter = this.newGroupFilter.bind(this);
3164
3207
  return (...filterParamArgs) => {