[ 
https://issues.apache.org/jira/browse/HADOOP-6298?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12763568#action_12763568
 ] 

Chris Douglas commented on HADOOP-6298:
---------------------------------------

bq. I don't think this proposal is about changing the API, it's about renaming 
the method

That's a fine distinction. Forcing all the users of BytesWritable- and they are 
legion- to change their calls to the most preferred of three identical methods 
isn't clearing up anything.

Besides, I disagree with the premise. Almost all non-trivial Writables reuse 
their storage for performance reasons, so querying which of the data are valid 
for an array is routine. It's consistent with how it's used in map/reduce. It 
makes sense.

> BytesWritable#getBytes is a bad name that leads to programming mistakes
> -----------------------------------------------------------------------
>
>                 Key: HADOOP-6298
>                 URL: https://issues.apache.org/jira/browse/HADOOP-6298
>             Project: Hadoop Common
>          Issue Type: Improvement
>    Affects Versions: 0.20.1
>            Reporter: Nathan Marz
>
> Pretty much everyone at Rapleaf who has worked with Hadoop has misused 
> BytesWritable#getBytes at some point, not expecting the byte array to be 
> padded. I think we can completely alleviate these programming mistakes by 
> deprecating and renaming this method (again) to be more descriptive. I 
> propose "getPaddedBytes()" or "getPaddedValue()". It would also be helpful to 
> have a helper method "getNonPaddedValue()" that makes a copy into a 
> non-padded byte array. 

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to