Author: hairong Date: Mon Oct 26 21:38:27 2009 New Revision: 829987 URL: http://svn.apache.org/viewvc?rev=829987&view=rev Log: Merge -c 829880 829894 to move the change of HDFS-723 from trunk to branch 0.20.
Modified: hadoop/common/branches/branch-0.20/CHANGES.txt hadoop/common/branches/branch-0.20/src/hdfs/org/apache/hadoop/hdfs/DFSClient.java Modified: hadoop/common/branches/branch-0.20/CHANGES.txt URL: http://svn.apache.org/viewvc/hadoop/common/branches/branch-0.20/CHANGES.txt?rev=829987&r1=829986&r2=829987&view=diff ============================================================================== --- hadoop/common/branches/branch-0.20/CHANGES.txt (original) +++ hadoop/common/branches/branch-0.20/CHANGES.txt Mon Oct 26 21:38:27 2009 @@ -49,6 +49,8 @@ count at the start of each block in Hadoop archives. (Ben Slusky, Tom White, and Mahadev Konar via cdouglas) + HDFS-723. Fix deadlock in DFSClient#DFSOutputStream. (hairong) + Release 0.20.1 - 2009-09-01 INCOMPATIBLE CHANGES Modified: hadoop/common/branches/branch-0.20/src/hdfs/org/apache/hadoop/hdfs/DFSClient.java URL: http://svn.apache.org/viewvc/hadoop/common/branches/branch-0.20/src/hdfs/org/apache/hadoop/hdfs/DFSClient.java?rev=829987&r1=829986&r2=829987&view=diff ============================================================================== --- hadoop/common/branches/branch-0.20/src/hdfs/org/apache/hadoop/hdfs/DFSClient.java (original) +++ hadoop/common/branches/branch-0.20/src/hdfs/org/apache/hadoop/hdfs/DFSClient.java Mon Oct 26 21:38:27 2009 @@ -1023,10 +1023,17 @@ } } - synchronized void close() { - while (!pendingCreates.isEmpty()) { - String src = pendingCreates.firstKey(); - OutputStream out = pendingCreates.remove(src); + void close() { + while (true) { + String src; + OutputStream out; + synchronized (this) { + if (pendingCreates.isEmpty()) { + return; + } + src = pendingCreates.firstKey(); + out = pendingCreates.remove(src); + } if (out != null) { try { out.close();