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

ByteBuff ref counting is too expensive for on-heap buffers

    XMLWordPrintableJSON

Details

    • Improvement
    • Status: Resolved
    • Major
    • Resolution: Fixed
    • None
    • 2.6.0, 3.0.0-alpha-4, 2.4.17, 2.5.4
    • None
    • None

    Description

      We recently were upgrading an internal project's hbase client from 1.2 to 2.5. The project does raw HFile.Reader reading of some hfiles. We noticed an over 4x performance regression with the new client. Profiling showed that the majority of the time was spent in SingleByteBuff.checkRefCount. That ref counting is necessary for off-heap reads, but this case was using on-heap. Removing checkRefCount eliminated the regression.

      I asked on the dev list and we agreed to remove checkRefCount calls for on-heap buffers: https://lists.apache.org/thread/2qm0g8fbxb0no4ozfx7bw8xmkryt4zz0

      Attachments

        Activity

          People

            bbeaudreault Bryan Beaudreault
            bbeaudreault Bryan Beaudreault
            Votes:
            0 Vote for this issue
            Watchers:
            5 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: