[ https://issues.apache.org/jira/browse/HBASE-15716?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15261585#comment-15261585 ]
stack commented on HBASE-15716: ------------------------------- Thank you the helpful review [~ikeda] Do you a fault other than below in this approach? bq. ...and then, the smallest readpoint goes back. Can you say more please? I do not follow how it goes 'back' since we do readPoint = currentReadPoint; at the bottom of the loop. Yes, the readpoint moves independently.... I like the way you think on scannerReadPoints having too much info... Yes, if we miss the close, a reference to the Scanner will be held here. That is a good point. I like your idea too of the skipping out when IL is READ_UNCOMMITTED. Let me do that. Let me look at an implementation using your suggested types.... Thanks again for the review. > HRegion#RegionScannerImpl scannerReadPoints synchronization costs > ----------------------------------------------------------------- > > Key: HBASE-15716 > URL: https://issues.apache.org/jira/browse/HBASE-15716 > Project: HBase > Issue Type: Bug > Components: Performance > Reporter: stack > Assignee: stack > Attachments: 15716.prune.synchronizations.patch, > 15716.prune.synchronizations.v3.patch, 15716.prune.synchronizations.v4.patch, > Screen Shot 2016-04-26 at 2.05.45 PM.png, Screen Shot 2016-04-26 at 2.06.14 > PM.png, Screen Shot 2016-04-26 at 2.07.06 PM.png, Screen Shot 2016-04-26 at > 2.25.26 PM.png, Screen Shot 2016-04-26 at 6.02.29 PM.png, Screen Shot > 2016-04-27 at 9.49.35 AM.png, > current-branch-1.vs.NoSynchronization.vs.Patch.png, hits.png, > remove_cslm.patch > > > Here is a [~lhofhansl] special. > When we construct the region scanner, we get our read point and then store it > with the scanner instance in a Region scoped CSLM. This is done under a > synchronize on the CSLM. > This synchronize on a region-scoped Map creating region scanners is the > outstanding point of lock contention according to flight recorder (My work > load is workload c, random reads). -- This message was sent by Atlassian JIRA (v6.3.4#6332)