Thomas D'Silva created PHOENIX-1676:
---------------------------------------

             Summary: Set priority of Index Updates correctly 
                 Key: PHOENIX-1676
                 URL: https://issues.apache.org/jira/browse/PHOENIX-1676
             Project: Phoenix
          Issue Type: Bug
            Reporter: Thomas D'Silva


I spoke to Jesse offline about this. 

The priority of index updates isn't being set correctly because of the use of 
CoprocessorHConnection (which all coprocessors use if they create an HTable via 
the CPEnvironment).

Specifically the flow happens like this: the CoprocessorHTableFactory attempts 
to set the connection qos factory, but it is ignored because the 
CoprocessorHConnection is used (instead of a standard HConnection) and the 
#getClient method just goes straight into the rpc scheduler of the 
HRegionServer, if its on the same server. This allows the region to be directly 
accessed, but without actually going over the loopback or serializing any 
information.

However, this means it ignores the configured rpccontroller factory and the 
override setting of the rpc priority. We probably shouldn't be runtime changing 
the configuration - instead we should probably be using some other serialized 
information.

The primary fix would seems to be that the regionserver needs to be configured 
with the IndexQosRpcControllerFactory and then use a static map (or cache of 
the index metadata) to set the qos for the index servers. 



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to