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

Rohini Palaniswamy commented on PIG-4086:
-----------------------------------------

[~sseth]  told me when I did the patch to selectively start inputs that we 
should never call close() methods of input or output and only framework should 
do that. [~daijy], can you check with him?

> Fix Orc e2e tests for tez
> -------------------------
>
>                 Key: PIG-4086
>                 URL: https://issues.apache.org/jira/browse/PIG-4086
>             Project: Pig
>          Issue Type: Bug
>          Components: impl
>            Reporter: Daniel Dai
>            Assignee: Daniel Dai
>             Fix For: 0.14.0
>
>         Attachments: PIG-4086-1.patch
>
>
> All Orc e2e tests fail on tez.
> There are two issue:
> 1. hivelibdir etc is not set in tez.conf
> 2. OrcStorage produce empty output file
> Digging into #2, the problem is in this code in PigProcessor:
> {code}
>                 if (fileOutput.isCommitRequired()) {
>                     fileOutput.commit();
>                 }
> {code}
> fileOutput.commit() invokes both RecordWriter.close() and 
> committer.commitTask(). However, OrcNewOutputFormate will generate output 
> file only after RecordWriter.close (if the output file is small), 
> fileOutput.isCommitRequired will not detect this file, thus skip 
> fileOutput.commit().
> Changing the code to invoke fileOutput.close explicitly fix the issue. 
> fileOutput.commit will invoke close again, but there is no side effect since 
> close will check if it has been already called.



--
This message was sent by Atlassian JIRA
(v6.2#6252)

Reply via email to