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

Reusing the ByteBuffer in rpc layer corrupt the ServerLoad and RegionLoad

    XMLWordPrintableJSON

    Details

    • Type: Bug
    • Status: Resolved
    • Priority: Blocker
    • Resolution: Fixed
    • Affects Version/s: None
    • Fix Version/s: 2.0.0-beta-1, 2.0.0
    • Component/s: None
    • Labels:
      None
    • Hadoop Flags:
      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.v0.patch
          249 kB
          Chia-Ping Tsai
        3. HBASE-19496.v1.patch
          245 kB
          Chia-Ping Tsai
        4. HBASE-19496.v2.patch
          259 kB
          Chia-Ping Tsai
        5. HBASE-19496.wip.patch
          8 kB
          Chia-Ping Tsai

          Issue Links

            Activity

              People

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

                Dates

                • Created:
                  Updated:
                  Resolved: