[ https://issues.apache.org/jira/browse/HBASE-9976?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13824468#comment-13824468 ]
Nicolas Liochon commented on HBASE-9976: ---------------------------------------- bq. Did you figure your sync issue? I'm on it. I'm looking at the root cause: why a change in TableName impacts the performance. Partly, there is no root cause: the performances varies a lot it seems. But as well, the code in pretch / metaScan expects the underlying layers to be more efficient than they actually are. For example, for the prefectch it does: - a first remote call to get the "rowOrBefore" - then creates a full HRegionInfo object, including a tableName, just to get the region startKey - then the actual call to prefetch the other regions I can't easily optimize this, because rowOrBefore returns a byte array to be unprotobuffed. The solution I see is using the reverseScan: this would remove the need for the first call, so all this code would just go away. Still digging... > Don't create duplicated TableName objects > ----------------------------------------- > > Key: HBASE-9976 > URL: https://issues.apache.org/jira/browse/HBASE-9976 > Project: HBase > Issue Type: Bug > Components: Client, regionserver > Affects Versions: 0.98.0, 0.96.0 > Reporter: Nicolas Liochon > Assignee: Nicolas Liochon > Fix For: 0.98.0, 0.96.1 > > Attachments: 9976.v1.patch > > > A profiling show that the table name is reponsible for 25% of the memory > needed to keep the region locations. As well, comparisons will be faster if > two identical table names are a single java object. -- This message was sent by Atlassian JIRA (v6.1#6144)