hive-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Hive QA (Jira)" <j...@apache.org>
Subject [jira] [Commented] (HIVE-21328) Call To Hadoop Text getBytes() Without Call to getLength()
Date Fri, 15 May 2020 05:20:00 GMT

    [ https://issues.apache.org/jira/browse/HIVE-21328?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17107950#comment-17107950
] 

Hive QA commented on HIVE-21328:
--------------------------------



Here are the results of testing the latest attachment:
https://issues.apache.org/jira/secure/attachment/13002950/HIVE-21328.1.patch

{color:red}ERROR:{color} -1 due to no test(s) being added or modified.

{color:green}SUCCESS:{color} +1 due to 17269 tests passed

Test results: https://builds.apache.org/job/PreCommit-HIVE-Build/22347/testReport
Console output: https://builds.apache.org/job/PreCommit-HIVE-Build/22347/console
Test logs: http://104.198.109.242/logs/PreCommit-HIVE-Build-22347/

Messages:
{noformat}
Executing org.apache.hive.ptest.execution.TestCheckPhase
Executing org.apache.hive.ptest.execution.PrepPhase
Executing org.apache.hive.ptest.execution.YetusPhase
Executing org.apache.hive.ptest.execution.ExecutionPhase
Executing org.apache.hive.ptest.execution.ReportingPhase
{noformat}

This message is automatically generated.

ATTACHMENT ID: 13002950 - PreCommit-HIVE-Build

> Call To Hadoop Text getBytes() Without Call to getLength()
> ----------------------------------------------------------
>
>                 Key: HIVE-21328
>                 URL: https://issues.apache.org/jira/browse/HIVE-21328
>             Project: Hive
>          Issue Type: Bug
>          Components: Query Planning
>    Affects Versions: 4.0.0, 3.2.0
>            Reporter: David Mollitor
>            Assignee: David Mollitor
>            Priority: Major
>         Attachments: HIVE-21328.1.patch, HIVE-21328.1.patch
>
>
> I'm not sure if there is actually a bug, but this looks highly suspect:
> {code:java}
>   public Object set(final Object o, final Text text) {
>     return new BytesWritable(text == null ? null : text.getBytes());
>   }
> {code}
> https://github.com/apache/hive/blob/master/ql/src/java/org/apache/hadoop/hive/ql/io/parquet/serde/primitive/ParquetStringInspector.java#L104-L106
> There are two components to a Text object.  There are the internal bytes and the length
of the bytes.  The two are independent.  I.e., a quick "reset" on the Text object simply sets
the internal length counter to zero.  This code is potentially looking at obsolete data that
it shouldn't be seeing because it is not considering the length of the Text.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Mime
View raw message