[ 
https://issues.apache.org/jira/browse/KYLIN-3085?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16279799#comment-16279799
 ] 

liyang edited comment on KYLIN-3085 at 12/6/17 9:08 AM:
--------------------------------------------------------

Tried a design that let `CubeUpdate` make copy of the pass-in `CubeInstance`, 
thus `CubeManager.updateCube()` will not have access to the original shared 
object any more. While the copy-on-write is the right design, it results a new 
`CubeInstance` object after every update, and the original shared object 
becomes out-of-date and must not be used anymore, which breaks many existing 
code.


was (Author: liyang.g...@gmail.com):
Fixed. Pending code merge.

> CubeManager.updateCube() must not update the cached CubeInstance
> ----------------------------------------------------------------
>
>                 Key: KYLIN-3085
>                 URL: https://issues.apache.org/jira/browse/KYLIN-3085
>             Project: Kylin
>          Issue Type: Bug
>            Reporter: liyang
>            Assignee: liyang
>
> Currently CubeManager.updateCube() modifies the pass-in CubeInstance which is 
> the cache shared object. Causes metadata inconsistency during the period of 
> update, and may leave dirty metadata in memory if update fails.



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)

Reply via email to