kylin-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "hongbin ma (JIRA)" <>
Subject [jira] [Created] (KYLIN-2198) Add a framework to allow major changes in DimensionEncoding
Date Wed, 16 Nov 2016 06:40:58 GMT
hongbin ma created KYLIN-2198:

             Summary: Add a framework to allow major changes in DimensionEncoding
                 Key: KYLIN-2198
             Project: Kylin
          Issue Type: Improvement
            Reporter: hongbin ma
            Assignee: hongbin ma

Recently a fatal error is found in one of the DimensionEncoding called IntegerDimEnc(KYLIN-2191).
The bug fix will cause cube content differs after applying the bug fix. Such result will confuse

Since major changes on DimensionEncoding is always possible, either due to optimization purpose
or bug fix purpose. A framework that takes into consideration of "DimensionEncoding version"
is necessary. By default all DimensionEncoding has version number 1. Whenever a major change
is applied on a DimensionEncoding subclass (for example IntegerDimEnc), instead of applying
the change directly on the DimensionEncoding subclass (for example IntegerDimEnc), we fork
a new subclass of DimensionEncoding (for example IntegerDimEncV2), which increases the original
class's version number. The "encode name" remains same(for example "integer")

After a DimensionEncoding with newer version is published in a new Kylin release, legacy cubes
can still use the older DimensionEncoding. However they have take the risky of using the old

The web GUI will only prompt users with the latest version of DimensionEncodings. For legacy
cubes, a label of "deprecated" will be shown for out-dated DimensionEncodings.

This message was sent by Atlassian JIRA

View raw message