You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@hive.apache.org by "binlijin (JIRA)" <ji...@apache.org> on 2013/02/22 08:32:13 UTC
[jira] [Updated] (HIVE-4057) LazyHBaseRow may return cache data if
the field is null and make the result wrong
[ https://issues.apache.org/jira/browse/HIVE-4057?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
binlijin updated HIVE-4057:
---------------------------
Status: Patch Available (was: Open)
> LazyHBaseRow may return cache data if the field is null and make the result wrong
> ---------------------------------------------------------------------------------
>
> Key: HIVE-4057
> URL: https://issues.apache.org/jira/browse/HIVE-4057
> Project: Hive
> Issue Type: Bug
> Components: HBase Handler
> Affects Versions: 0.11.0
> Reporter: binlijin
> Attachments: HIVE-4057.patch
>
>
> LazyHBaseRow
> {code}
> private Object uncheckedGetField(int fieldID) {
> if(!fieldsInited[fieldID]) {
> fieldsInited[fieldID] = true;
> byte [] res = result.getValue(colMap.familyNameBytes, colMap.qualifierNameBytes);
> if (res == null) {
> return null;
> }
> }
> return fields[fieldID].getObject();
> }
> {code}
> if there is a LazyHBaseRow instance row, the fieldID is 0, we assume this field is null, so the first time row.uncheckedGetField(0) will return null, but the second time when row.uncheckedGetField(0) will return fields[fieldID].getObject(), this is the last cache data.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira