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

[Performance] Considering reverting HBASE-10015 - reinstate synchronized in StoreScanner

    XMLWordPrintableJSON

Details

    • Improvement
    • Status: Resolved
    • Critical
    • Resolution: Won't Fix
    • None
    • None
    • Performance
    • None

    Description

      In HBASE-10015 back then I found that intrinsic locks (synchronized) in StoreScanner are slower that explicit locks.

      I was surprised by this. To make sure I added a simple perf test and many folks ran it on their machines. All found that explicit locks were faster.

      Now... I just ran that test again. On the latest JDK8 I find that now the intrinsic locks are significantly faster:
      (OpenJDK Runtime Environment (build 1.8.0_72-b15))

      Explicit locks:
      10 runs mean:2223.6 sigma:72.29412147609237

      Intrinsic locks:
      10 runs mean:1865.3 sigma:32.63755505548784

      I confirmed the same with timing some Phoenix scans. We can save a bunch of time by changing this back

      Arrghhh... So maybe it's time to revert this now...?

      (Note that in trunk due to ram_krish's work, we do not lock in StoreScanner anymore)

      I'll attach the perf test and a patch that changes lock to synchronized, if some folks could run this on 0.98, that'd be great.

      Attachments

        1. 15453-0.98.txt
          8 kB
          Lars Hofhansl

        Activity

          People

            larsh Lars Hofhansl
            larsh Lars Hofhansl
            Votes:
            0 Vote for this issue
            Watchers:
            10 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: