[ 
https://issues.apache.org/jira/browse/PHOENIX-871?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Jesse Yates resolved PHOENIX-871.
---------------------------------

    Resolution: Fixed

Committed to 3.0, 4.0 and master branches.

> Mutable Secondary Indexing can cause a deadlock on exception
> ------------------------------------------------------------
>
>                 Key: PHOENIX-871
>                 URL: https://issues.apache.org/jira/browse/PHOENIX-871
>             Project: Phoenix
>          Issue Type: Bug
>    Affects Versions: 2.2.3, 3.0.0, 4.0.0
>            Reporter: Jesse Yates
>            Assignee: Jesse Yates
>             Fix For: 3.0.0, 4.0.0
>
>         Attachments: phoenix-871-3.0.txt, phoenix-871-master.txt
>
>
> We had a regionserver fail to go down on our internal environment. After 
> digging through the jstacks and logs, it looks like it was because the 
> INDEX_UPDATE_LOCK was held and never released because, we think, and 
> exception writing do the WAL, meaning the postXXXX methods never got called.
> We then realized that we can remove the lock entirely (and the need for the 
> log roll synchronization) by performing the write during postBatchMutate. 
> This avoids an possible hanging locks (from not getting informed of the 
> exception) but still retains the rest of the index correctness since it is 
> performed under the updateLock (which will prevent a cache flush or a log 
> roll).



--
This message was sent by Atlassian JIRA
(v6.2#6252)

Reply via email to