Details

    • Type: Sub-task
    • Status: Resolved
    • Priority: Minor
    • Resolution: Fixed
    • Affects Version/s: 2.0.1
    • Fix Version/s: 3.0.0, 2.1.0, 2.0.2
    • Component/s: regionserver
    • Labels:
      None
    • Hadoop Flags:
      Reviewed

      Description

      The cpu profiling shows that during PE randomWrite testing, about 1 percent of time is spent in cloneFamily. Reviewing code found that when a cell is DBB backed ByteBuffKeyValueCell (which is default with Netty Rpc), cell.getFamilyArray() will call cloneFamily() and there is again a cloneFamily() in the following line of the code. since this is the critical write path processing, this needs to be optimized.

      https://github.com/apache/hbase/blob/master/hbase-client/src/main/java/org/apache/hadoop/hbase/client/Mutation.java#L791

      https://github.com/apache/hbase/blob/master/hbase-client/src/main/java/org/apache/hadoop/hbase/client/Mutation.java#L795

        Attachments

        1. 2.0621.2.12782.alloc.svg
          187 kB
          stack
        2. 2.0623.111354.alloc.svg
          217 kB
          stack
        3. alloc-put-fix.svg
          213 kB
          huaxiang sun
        4. alloc-put-orig.svg
          224 kB
          huaxiang sun
        5. HBASE-20710.master.001.patch
          2 kB
          stack
        6. HBASE-20710-master-v001.patch
          9 kB
          huaxiang sun
        7. HBASE-20710-master-v002.patch
          3 kB
          huaxiang sun
        8. HBASE-20710-master-v002.patch
          3 kB
          huaxiang sun

          Issue Links

            Activity

              People

              • Assignee:
                huaxiang huaxiang sun
                Reporter:
                huaxiang huaxiang sun
              • Votes:
                0 Vote for this issue
                Watchers:
                6 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: