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

Improve performance of BufferedMutator

    XMLWordPrintableJSON

Details

    • Improvement
    • Status: Resolved
    • Major
    • Resolution: Abandoned
    • 2.1.5
    • None
    • Client
    • None
    • HDP 2.6.5

      Linux RedHat

    Description

      The default ThreadPoolExecutor uses a default size of 1 (property hbase.htable.threads.max). When using a size > 1, we still encountered poor performance and exception while submitting to the pool (pool exceed its capacity).

      This patch propose a fix on different issues encountered when the pool size is > 1:

      • thread safety issue
      • concurrent cleanup by Netty and the "legacy" code
      • errors in the backpressure
      • Netty memory leak

      And propose a BufferedMutatorThreadPoolExecutor which:

      • uses hbase.client.max.total.tasks as the default size (instead of 1)
      • some usefull metrics

       

      Attachments

        1. HBASE-22634.001.branch-2.1.patch
          28 kB
          Sebastien Barnoud

        Issue Links

          Activity

            People

              Unassigned Unassigned
              Sebastien Barnoud Sebastien Barnoud
              Votes:
              0 Vote for this issue
              Watchers:
              8 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: