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

Dongjoon Hyun updated ORC-416:
------------------------------
    Description: 
Currently, `RecordReaderImpl` invokes `dataReader.open` in the middle of the 
constructor. We can postpone this until `advanceToNextRow` reads the stripe at 
the end of the constructor.
{code:java}
this.dataReader.open();{code}
This will reduce the chance of potential open-file leakages due to IOException 
and OOM during `RecordReaderImpl` construction. Also, we can avoid it 
completely when there is no stripe in the file.

  was:
Currently, `RecordReaderImpl` invokes `dataReader.open` in the middle of the 
constructor. We can postpone this until `advanceToNextRow` reads the stripe at 
the end of the constructor.
{code:java}
this.dataReader.open();{code}
This will reduce the chance of potential open-file leakages due to IOException 
and OOM during `RecordReaderImpl` construction.


> Avoid opening data reader when there is no stripe
> -------------------------------------------------
>
>                 Key: ORC-416
>                 URL: https://issues.apache.org/jira/browse/ORC-416
>             Project: ORC
>          Issue Type: Bug
>          Components: Java
>    Affects Versions: 1.5.0, 1.5.1, 1.5.2, 1.5.3
>            Reporter: Dongjoon Hyun
>            Priority: Major
>
> Currently, `RecordReaderImpl` invokes `dataReader.open` in the middle of the 
> constructor. We can postpone this until `advanceToNextRow` reads the stripe 
> at the end of the constructor.
> {code:java}
> this.dataReader.open();{code}
> This will reduce the chance of potential open-file leakages due to 
> IOException and OOM during `RecordReaderImpl` construction. Also, we can 
> avoid it completely when there is no stripe in the file.



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

Reply via email to