Chinmay Kulkarni created PHOENIX-6072:
-----------------------------------------

             Summary: SYSTEM.MUTEX not created with a TTL on a fresh cluster 
connected to by a 4.15+ client
                 Key: PHOENIX-6072
                 URL: https://issues.apache.org/jira/browse/PHOENIX-6072
             Project: Phoenix
          Issue Type: Bug
    Affects Versions: 4.15.0, 5.0.0
            Reporter: Chinmay Kulkarni
             Fix For: 5.1.0, 4.16.0


If you have a fresh cluster that is directly connected to via a 4.15+ client, 
then SYSTEM.MUTEX gets created without a TTL (See 
[this|https://github.com/apache/phoenix/blob/a99db61cd82ae2b83add2a1bd74fd80baa5c91c7/phoenix-core/src/main/java/org/apache/phoenix/query/ConnectionQueryServicesImpl.java#L3335])
 The SYSTEM.MUTEX 
[DDL|https://github.com/apache/phoenix/blob/a99db61cd82ae2b83add2a1bd74fd80baa5c91c7/phoenix-core/src/main/java/org/apache/phoenix/query/QueryConstants.java#L367-L379]
 does not specify a TTL.

This will obviously be a problem when a client does any operation that requires 
writing a cell to SYSTEM.MUTEX via checkAndPut (like add/drop column, create 
view, etc.) and dies/gets disconnected before being able to delete the mutex 
cell. 

After that point, since the cell will stay written and never be TTL’ed, any 
operation which requires a checkAndPut on that cell will always fail with a 
ConcurrentTableMutationException, deeming any further add/drop cols or create 
view for the same name impossible.



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

Reply via email to