hadoop-common-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Arun C Murthy (JIRA)" <j...@apache.org>
Subject [jira] Updated: (HADOOP-4195) SequenceFile.Writer close() uses compressor after returning it to CodecPool.
Date Wed, 17 Sep 2008 20:55:44 GMT

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

Arun C Murthy updated HADOOP-4195:
----------------------------------

    Status: Patch Available  (was: Open)

> SequenceFile.Writer close() uses compressor after returning it to CodecPool.
> ----------------------------------------------------------------------------
>
>                 Key: HADOOP-4195
>                 URL: https://issues.apache.org/jira/browse/HADOOP-4195
>             Project: Hadoop Core
>          Issue Type: Bug
>          Components: io
>    Affects Versions: 0.18.0
>            Reporter: Hong Tang
>            Assignee: Arun C Murthy
>             Fix For: 0.19.0
>
>         Attachments: HADOOP-4195_0_20080917.patch
>
>
> In function SequenceFile.Writer.close() (line 946): The first marked line returns the
compressor while the second marked line will use the compressor again. This will lead to a
race condition if another thread checks out the compressor between these two marked statements.
> {code:title=SequenceFile.java|borderStyle=solid}
>     public synchronized void close() throws IOException {
>       CodecPool.returnCompressor(compressor); // <==== compressor returned
>       
>       keySerializer.close();
>       uncompressedValSerializer.close();
>       if (compressedValSerializer != null) {
>         compressedValSerializer.close(); // <===== compressor used
>       }
>       if (out != null) {
>         
>         // Close the underlying stream iff we own it...
>         if (ownOutputStream) {
>           out.close();
>         } else {
>           out.flush();
>         }
>         out = null;
>       }
>     }
> {code} 

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


Mime
View raw message