[ https://issues.apache.org/jira/browse/PHOENIX-3974?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16060125#comment-16060125 ]
Samarth Jain commented on PHOENIX-3974: --------------------------------------- Another thing that would be good to confirm would be to whether create a copy of configuration object and set the server rpc controller factory class on it instead? From the commentary on PHOENIX-3360 it is clear that we definitely shouldn't be modifying the region server's configuration object. But I am not sure about a region's configuration object. Should that be copied before creating the HTable here? {code} targetHTable = new HTable(env.getConfiguration(), projectedTable.getPhysicalName().getBytes()); {code} > Create index may issue a distributed dead lock due lack of handlers > ------------------------------------------------------------------- > > Key: PHOENIX-3974 > URL: https://issues.apache.org/jira/browse/PHOENIX-3974 > Project: Phoenix > Issue Type: Bug > Affects Versions: 4.11.0 > Reporter: Sergey Soldatov > Assignee: Sergey Soldatov > Attachments: PHOENIX-3974.patch > > > In PHOENIX-3360 we were trying to avoid using index rpc on client side, > setting controller manually in Indexer. But after we moved index creating to > server side there is another set of RS-RS communication that comes from > UngroupedAggregateRegionObserver with regular priority. That may cause > distributed dead lock when all handlers are occupied by index create scanners > for user table and inside they are trying to send index updates. To prevent > it we need to set controller in UngroupedAggregateRegionObserver in the > similar way like we did in Indexer. -- This message was sent by Atlassian JIRA (v6.4.14#64029)