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

Hudson commented on HBASE-12128:
--------------------------------

FAILURE: Integrated in HBase-1.0 #503 (See 
[https://builds.apache.org/job/HBase-1.0/503/])
HBASE-12128 Cache configuration and RpcController selection for Table in 
Connection (enis: rev b9dfcd01b8248cecdd8fc06632c738fe863af823)
* hbase-client/src/main/java/org/apache/hadoop/hbase/client/HTable.java
* 
hbase-client/src/main/java/org/apache/hadoop/hbase/client/TableConfiguration.java
* 
hbase-client/src/main/java/org/apache/hadoop/hbase/client/ConnectionManager.java


> Cache configuration and RpcController selection for Table in Connection
> -----------------------------------------------------------------------
>
>                 Key: HBASE-12128
>                 URL: https://issues.apache.org/jira/browse/HBASE-12128
>             Project: HBase
>          Issue Type: Sub-task
>    Affects Versions: 1.0.0, 2.0.0
>            Reporter: Andrew Purtell
>            Assignee: Stephen Yuan Jiang
>             Fix For: 2.0.0, 0.99.2
>
>         Attachments: HBASE-12128.v1-1.0.patch, HBASE-12128.v1-2.0.patch, 
> HBASE-12128.v2-2.0.patch
>
>   Original Estimate: 120h
>          Time Spent: 72h
>  Remaining Estimate: 48h
>
> Creating Table instances should be lightweight. Apps that manage their own 
> Connections are expected to create Tables on demand for each interaction. 
> However we look up values from Hadoop Configuration when constructing Table 
> objects for storing to some of its fields. Configuration is a heavyweight 
> registry that does a lot of string operations and regex matching. Method 
> calls into Configuration account for 48.25% of CPU time when creating the 
> HTable object in 0.98. Another ~48% of CPU is spent constructing the desired 
> RpcController object via reflection in 0.98. Together this can account for 
> ~20% of total on-CPU time of the client. See parent issue for more detail.
> We are using Connection like a factory for Table. We should cache 
> configuration for Table in Connection. We should also create by reflection 
> once and cache the desired RpcController object, and clone it for new Tables.



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

Reply via email to