[ https://issues.apache.org/jira/browse/HADOOP-6803?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12874861#action_12874861
]
Chris Douglas commented on HADOOP-6803:
---------------------------------------
Isn't the {{finished}} member set by the JNI code?
> ZlibCompressor hangs on close
> -----------------------------
>
> Key: HADOOP-6803
> URL: https://issues.apache.org/jira/browse/HADOOP-6803
> Project: Hadoop Common
> Issue Type: Bug
> Components: io
> Affects Versions: 0.21.0, 0.22.0
> Reporter: Eli Collins
> Assignee: Eli Collins
> Fix For: 0.21.0, 0.22.0
>
> Attachments: hadoop-6803-1.patch
>
>
> Looking at ZlibCompressor I noticed that the finished member is never modified, and is
therefore always false. This means ZlibCompressor#finished will always return false so CompressorStream#close
loops indefinitely in finish:
> {code}
> while (!compressor.finished()) {
> compress();
> }
> {code}
> I modifed TestCodec#testGzipCodecWrite to also cover writing using the native lib and
confirmed the hang with jstack. The fix is simple, ZlibCompressor should record when it's
been finished.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
|