Uploaded image for project: 'HBase'
  1. HBase
  2. HBASE-15716

HRegion#RegionScannerImpl scannerReadPoints synchronization constrains random read

    XMLWordPrintableJSON

    Details

    • Type: Bug
    • Status: Patch Available
    • Priority: Major
    • Resolution: Unresolved
    • Affects Version/s: None
    • Fix Version/s: None
    • Component/s: Performance
    • Labels:
      None

      Description

      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).

        Attachments

        1. 15716.implementation.using.ScannerReadPoints.branch-1.patch
          13 kB
          Michael Stack
        2. 15716.prune.synchronizations.patch
          4 kB
          Michael Stack
        3. 15716.prune.synchronizations.v3.patch
          5 kB
          Michael Stack
        4. 15716.prune.synchronizations.v4.patch
          5 kB
          Michael Stack
        5. 15716.prune.synchronizations.v4.patch
          5 kB
          Michael Stack
        6. 15716.wip.more_to_be_done.patch
          4 kB
          Michael Stack
        7. before_after.png
          19 kB
          Michael Stack
        8. current-branch-1.vs.NoSynchronization.vs.Patch.png
          114 kB
          Michael Stack
        9. HBASE-15716.branch-1.001.patch
          11 kB
          Michael Stack
        10. HBASE-15716.branch-1.002.patch
          14 kB
          Michael Stack
        11. HBASE-15716.branch-1.003.patch
          16 kB
          Michael Stack
        12. HBASE-15716.branch-1.004.patch
          16 kB
          Michael Stack
        13. HBASE-15716.branch-1.005.patch
          16 kB
          Michael Stack
        14. hits.png
          25 kB
          Michael Stack
        15. remove_cslm.patch
          2 kB
          Michael Stack
        16. remove.locks.patch
          10 kB
          Michael Stack
        17. ScannerReadPoints.java
          7 kB
          Hiroshi Ikeda
        18. ScannerReadPoints.v2.java
          8 kB
          Hiroshi Ikeda
        19. Screen Shot 2016-04-26 at 2.05.45 PM.png
          225 kB
          Michael Stack
        20. Screen Shot 2016-04-26 at 2.06.14 PM.png
          228 kB
          Michael Stack
        21. Screen Shot 2016-04-26 at 2.07.06 PM.png
          371 kB
          Michael Stack
        22. Screen Shot 2016-04-26 at 2.25.26 PM.png
          264 kB
          Michael Stack
        23. Screen Shot 2016-04-26 at 6.02.29 PM.png
          187 kB
          Michael Stack
        24. Screen Shot 2016-04-27 at 9.49.35 AM.png
          186 kB
          Michael Stack
        25. Screen Shot 2016-06-30 at 9.52.52 PM.png
          307 kB
          Michael Stack
        26. Screen Shot 2016-06-30 at 9.54.08 PM.png
          516 kB
          Michael Stack
        27. TestScannerReadPointDoesntGoBack.java
          3 kB
          Hiroshi Ikeda
        28. TestScannerReadPoints.java
          3 kB
          Hiroshi Ikeda

          Issue Links

            Activity

              People

              • Assignee:
                stack Michael Stack
                Reporter:
                stack Michael Stack
              • Votes:
                0 Vote for this issue
                Watchers:
                21 Start watching this issue

                Dates

                • Created:
                  Updated: