[
https://issues.apache.org/jira/browse/HBASE-19496?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16293891#comment-16293891
]
Chia-Ping Tsai edited comment on HBASE-19496 at 12/16/17 6:12 PM:
------------------------------------------------------------------
*Introduce new pojo to do the clone of pb object*
# RegionLoad -> RegionMetrics
# ServerLoad -> ServerMetrics
# ClusterLoad -> ClusterMetrics
*Introduce the {{Size}} to represent the size with specified unit*
*Methods cleanup*
*correct the InterfaceAudience*
# ReplicationLoadSource should be IA.Public
# ReplicationLoadSink should be IA.Public
was (Author: chia7712):
Introduce new pojo to do the clone of pb object
1) RegionLoad -> RegionMetrics
2) ServerLoad -> ServerMetrics
3) ClusterLoad -> ClusterMetrics
> Reusing the ByteBuffer in rpc layer corrupt the ServerLoad and RegionLoad
> -------------------------------------------------------------------------
>
> Key: HBASE-19496
> URL: https://issues.apache.org/jira/browse/HBASE-19496
> Project: HBase
> Issue Type: Bug
> Reporter: Chia-Ping Tsai
> Assignee: Chia-Ping Tsai
> Priority: Blocker
> Fix For: 2.0.0-beta-1
>
> Attachments: HBASE-19496.v0.patch, HBASE-19496.wip.patch
>
>
> {{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.
> # netty server was introduced in 2.0 (see HBASE-17263)
> # reusing bytebuffer to read RPC requests was introduced in 2.0 (see
> HBASE-15788)
--
This message was sent by Atlassian JIRA
(v6.4.14#64029)