You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@phoenix.apache.org by "Chinmay Kulkarni (Jira)" <ji...@apache.org> on 2020/10/15 23:23:00 UTC

[jira] [Created] (PHOENIX-6190) Race condition in view creation may allow conflicting changes for pre-4.15 clients and for scenarios with phoenix.allow.system.catalog.rollback=true

Chinmay Kulkarni created PHOENIX-6190:
-----------------------------------------

             Summary: Race condition in view creation may allow conflicting changes for pre-4.15 clients and for scenarios with phoenix.allow.system.catalog.rollback=true
                 Key: PHOENIX-6190
                 URL: https://issues.apache.org/jira/browse/PHOENIX-6190
             Project: Phoenix
          Issue Type: Bug
    Affects Versions: 4.15.0, 5.0.0
            Reporter: Chinmay Kulkarni
             Fix For: 5.1.0, 4.16.0


For pre-4.15 clients and in scenarios where phoenix.allow.system.catalog.rollback=true, we have to block adding/dropping a column to/from a parent table/view as we no longer lock the parent on the server side while creating a child view to prevent conflicting changes. This is handled on the client side from 4.15 onwards.

However, there is a slight race condition here where a view may be created between the time we find all children of the parent and the time we do this check (see [this|https://github.com/apache/phoenix/blob/264310bd1e6c14996c3cfb11557fc66a012cb01b/phoenix-core/src/main/java/org/apache/phoenix/coprocessor/MetaDataEndpointImpl.java#L2592]).



--
This message was sent by Atlassian Jira
(v8.3.4#803005)