蒙德里安 rolap 模式升级器

Mondrian rolap schema upgrader

我有 mondrian xml 模式(3 版)。当我在 mondrian 4 中使用我的模式 (v3) 时 - 它会自动尝试通过 RolapSchemaUpgrader 转换我的模式。但在转换过程中抛出异常:

16:21:20,816 WARN  [RolapSchema] Model is in legacy format
16:21:36,059 ERROR [SecurityAwareConnectionManager] Error connecting: cubetl
java.lang.NullPointerException
    at mondrian.rolap.RolapSchema$PhysLink.deriveSql(RolapSchema.java:2046)
    at mondrian.rolap.RolapSchema$PhysLink.<init>(RolapSchema.java:2004)
    at mondrian.rolap.RolapSchema$PhysSchema.addLink(RolapSchema.java:945)
    at mondrian.rolap.RolapSchemaUpgrader.registerRelation(RolapSchemaUpgrader.java:3013)
    at mondrian.rolap.RolapSchemaUpgrader.convertHierarchy(RolapSchemaUpgrader.java:2800)

我不知道为什么。

我想通了。在我的例子中,我必须为每个 Hierarchy 添加 primaryKey 属性。文档告诉我们:

If not specified, the key of the lowest level is used.

但它对我不起作用。