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

James Taylor commented on PHOENIX-938:
--------------------------------------

How about this as a plan, [~jesse_yates] and [~apurtell]?
- check-in your patch and document that it fixes the issue for 0.98.3 only 
(assuming it doesn't break Phoenix for 0.98.2- and 0.98.3+).
- work with HBase community to make these APIs public and evolving for 
0.98.<next release>.
- implement solution on top of these public APIs.
I don't think transactions is really going to help with this, so it'd be good 
to get an as-permanent-as-possible solution IMO.


> Use higher priority queue for index updates to prevent deadlock
> ---------------------------------------------------------------
>
>                 Key: PHOENIX-938
>                 URL: https://issues.apache.org/jira/browse/PHOENIX-938
>             Project: Phoenix
>          Issue Type: Bug
>    Affects Versions: 4.0.0, 4.1
>            Reporter: James Taylor
>            Assignee: Jesse Yates
>             Fix For: 5.0.0, 4.1
>
>         Attachments: phoenix-938-4.0-v0.patch, phoenix-938-master-v0.patch, 
> phoenix-938-master-v1.patch
>
>
> With our current global secondary indexing solution, a batched Put of table 
> data causes a RS to do a batch Put to other RSs. This has the potential to 
> lead to a deadlock if all RS are overloaded and unable to process the pending 
> batched Put. To prevent this, we should use a higher priority queue to submit 
> these Puts so that they're always processed before other Puts. This will 
> prevent the potential for a deadlock under high load. Note that this will 
> likely require some HBase 0.98 code changes and would not be feasible to 
> implement for HBase 0.94.



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

Reply via email to