Thejas M Nair created HIVE-3168:
-----------------------------------

             Summary: LazyBinaryObjectInspector.getPrimitiveJavaObject copies 
beyond length of underlying BytesWritable
                 Key: HIVE-3168
                 URL: https://issues.apache.org/jira/browse/HIVE-3168
             Project: Hive
          Issue Type: Bug
            Reporter: Thejas M Nair


LazyBinaryObjectInspector.getPrimitiveJavaObject copies the full capacity of 
the LazyBinary's underlying BytesWritable object, which can be greater than the 
size of the actual contents. 

This leads to additional characters at the end of the ByteArrayRef returned. 
When the LazyBinary object gets re-used, there can be remnants of the later 
portion of previous entry. 
This was not seen while reading through hive queries, which I think is because 
a copy elsewhere seems to create LazyBinary with length == capacity. (probably 
LazyBinary copy constructor). This was seen when MR or pig used Hcatalog to 
read the data.

--
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

        

Reply via email to