[
https://issues.apache.org/jira/browse/HIVE-6326?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13902193#comment-13902193
]
Owen O'Malley commented on HIVE-6326:
-------------------------------------
You may also want to protect line 732 with
{code}
if (sarg != null &&
stripeStats != null &&
idx < stripeStats.size() &&
!isStripeSatisfyPredicate(...) {
{code}
> Split generation in ORC may generate wrong split boundaries because of
> unaccounted padded bytes
> -----------------------------------------------------------------------------------------------
>
> Key: HIVE-6326
> URL: https://issues.apache.org/jira/browse/HIVE-6326
> Project: Hive
> Issue Type: Bug
> Components: Serializers/Deserializers
> Affects Versions: 0.13.0
> Reporter: Prasanth J
> Assignee: Prasanth J
> Labels: orcfile
> Attachments: HIVE-6326.1.patch, HIVE-6326.2.patch, HIVE-6326.3.patch
>
>
> HIVE-5091 added padding to ORC files to avoid ORC stripes straddling HDFS
> blocks. The length of this padded bytes are not stored in stripe information.
> OrcInputFormat.getSplits() uses stripeInformation.getLength() for split
> computation. stripeInformation.getLength() is sum of index length, data
> length and stripe footer length. It does not account for the length of padded
> bytes which may result in wrong split boundary.
> The fix for this is to use the offset of next stripe as the length of current
> stripe which includes the padded bytes as well.
--
This message was sent by Atlassian JIRA
(v6.1.5#6160)