You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@hbase.apache.org by "Andrew Purtell (JIRA)" <ji...@apache.org> on 2014/06/09 00:03:02 UTC

[jira] [Resolved] (HBASE-2877) Unnecessary byte written when serializing a Writable RPC parameter

     [ https://issues.apache.org/jira/browse/HBASE-2877?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Andrew Purtell resolved HBASE-2877.
-----------------------------------

    Resolution: Not a Problem

Stale

> Unnecessary byte written when serializing a Writable RPC parameter
> ------------------------------------------------------------------
>
>                 Key: HBASE-2877
>                 URL: https://issues.apache.org/jira/browse/HBASE-2877
>             Project: HBase
>          Issue Type: Bug
>          Components: IPC/RPC
>    Affects Versions: 0.20.5, 0.89.20100621, 0.90.0, 0.90.1, 0.90.2, 0.90.3, 0.90.4, 0.90.5, 0.90.6, 0.92.0, 0.92.1, 0.94.0
>            Reporter: Benoit Sigoure
>            Priority: Minor
>
> When {{HbaseObjectWritable#writeObject}} serializes a {{Writable}} RPC parameter, it writes its "class code" twice to the wire.  {{writeClassCode}} is already called once unconditionally at the beginning of the method, and for {{Writable}} arguments, it's called a second time towards the end of the method.  It seems that the code is trying to deal with the "declared type" vs. "actual type" of a parameter.  The Hadoop RPC code was already doing this before Stack changed it to use codes in r608738 for HADOOP-2519.  It's not documented when this is useful though, and I couldn't find any use case.  Every RPC I've seen so far just ends up with the same byte sent twice to the wire.



--
This message was sent by Atlassian JIRA
(v6.2#6252)