[ https://issues.apache.org/jira/browse/PHOENIX-938?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14349091#comment-14349091 ]
Jesse Yates commented on PHOENIX-938: ------------------------------------- Yup, that's a bug. Over on PHOENIX-1676 we are tracking down all the issues with the index priority - mind adding your comment over there? At some point I was trying to refactor HBase Rpc Schedulers to handle generic queues so scheduler impls wouldn't have to actually manage their own queues, but alas, that started to get very convoluted and was never finished. > 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-master-v3.patch, phoenix-938-4.0-v0.patch, > phoenix-938-4.0-v0.patch, phoenix-938-master-v0.patch, > phoenix-938-master-v1.patch, phoenix-938-master-v2.patch, > phoenix-938-master-v4.patch, phoenix-938-master-v5.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.3.4#6332)