CubeJs预聚合索引无法编译

问题描述

我想在我的汇总预聚合多维数据集js表上放置一个索引:

  preAggregations: {
    projectDate: {
      type: `rollup`,measureReferences: [count,amount],dimensionReferences: [state,Projects.slug],timeDimensionReference: confirmedAt,granularity: `day`,refreshKey: {
        every: '1 day'
      },indexes: {
        main: {
          columns: [state]
        }
      }
    },}

但是,多维数据集无法编译,并且出现以下错误

Error: Compile errors:
ShopperOrders.js:84
          columns: [state]
                    ^

ReferenceError: state is not defined
    at ShopperOrders.js:84:21
    at Script.runInContext (vm.js:127:20)
    at Script.runInNewContext (vm.js:133:17)
    at Object.runInNewContext (vm.js:299:38)
    at DataSchemaCompiler.compileFile

我的state维度定义明确,当删除索引时,预聚合有效。这是模式:

cube(`ShopperOrders`,{
  sql: `SELECT * FROM shopper_orders`,joins: {
    ShopperOrderLines: {
      sql: `${CUBE}.id = ${ShopperOrderLines}.order_id`,relationship: `hasMany`
    }
  },measures: {
    count: {
      type: `count`
    },amount: {
      sql: `amount`,type: `sum`
    },},dimensions: {
    id: {
      sql: `id`,type: `number`,primaryKey: true
    },state: {
      sql: `state`,type: `string`
    },confirmedAt: {
      sql: `confirmed_at`,type: `time`
    }
  },preAggregations: {
    projectDate: {
      type: `rollup`,index: {
        main: {
          columns: [state]
        }
      }
    },}
});

您知道我可能会误声明或忽略什么吗?

我使用了文档中给出的示例: https://cube.dev/docs/pre-aggregations#indexes

解决方法

能否请您更新版本并重试? 我几乎可以确定您使用的是旧版本的cube.js