You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@hbase.apache.org by "Benoit Sigoure (JIRA)" <ji...@apache.org> on 2012/07/20 00:13:35 UTC
[jira] [Updated] (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 ]
Benoit Sigoure updated HBASE-2877:
----------------------------------
Affects Version/s: 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
> 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
> 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 is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira