You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@orc.apache.org by "Dain Sundstrom (JIRA)" <ji...@apache.org> on 2018/05/30 02:07:00 UTC

[jira] [Updated] (ORC-369) Seek to end of BitFieldReader causes EOFException

     [ https://issues.apache.org/jira/browse/ORC-369?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Dain Sundstrom updated ORC-369:
-------------------------------
    Description: 
If a boolean stream ends with "all nulls", a seek to right after the null start will cause an `EOFException`.

The root cause is very simple [https://github.com/apache/orc/blob/master/java/core/src/java/org/apache/orc/impl/BitFieldReader.java#L98]

The seek forward in the input stream consumes all of the bytes, and then the next line attempts to "load" a new value into the reader. Instead when the skip is aligned to the byte end, the load should be delayed until the next read call.

> Seek to end of BitFieldReader causes EOFException
> -------------------------------------------------
>
>                 Key: ORC-369
>                 URL: https://issues.apache.org/jira/browse/ORC-369
>             Project: ORC
>          Issue Type: Bug
>            Reporter: Dain Sundstrom
>            Priority: Major
>
> If a boolean stream ends with "all nulls", a seek to right after the null start will cause an `EOFException`.
> The root cause is very simple [https://github.com/apache/orc/blob/master/java/core/src/java/org/apache/orc/impl/BitFieldReader.java#L98]
> The seek forward in the input stream consumes all of the bytes, and then the next line attempts to "load" a new value into the reader. Instead when the skip is aligned to the byte end, the load should be delayed until the next read call.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)