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

Reusing the ByteBuffer in rpc layer corrupt the ServerLoad and RegionLoad

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Resolved
    • Blocker
    • Resolution: Fixed
    • None
    • 2.0.0-beta-1, 2.0.0
    • None
    • None
    • Reviewed

    Description

      ServerLoad and RegionLoad store the pb object internally but the bytebuffer of pb object may be reused in rpc layer. Hence, the ServerLoad and RegionLoad which saved by HMaster will be corrupted if the bytebuffer backed is modified.

      This issue doesn't happen on branch-1.

      1. netty server was introduced in 2.0 (see HBASE-17263)
      2. reusing bytebuffer to read RPC requests was introduced in 2.0 (see HBASE-15788)

      Attachments

        1. HBASE-19496.addendum.patch
          7 kB
          Chia-Ping Tsai
        2. HBASE-19496.v2.patch
          259 kB
          Chia-Ping Tsai
        3. HBASE-19496.v1.patch
          245 kB
          Chia-Ping Tsai
        4. HBASE-19496.v0.patch
          249 kB
          Chia-Ping Tsai
        5. HBASE-19496.wip.patch
          8 kB
          Chia-Ping Tsai

        Issue Links

          Activity

            People

              chia7712 Chia-Ping Tsai
              chia7712 Chia-Ping Tsai
              Votes:
              0 Vote for this issue
              Watchers:
              8 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: