You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@hbase.apache.org by ap...@apache.org on 2010/03/22 19:18:01 UTC

svn commit: r926235 - in /hadoop/hbase/branches/0.20: CHANGES.txt src/java/org/apache/hadoop/hbase/regionserver/HLog.java

Author: apurtell
Date: Mon Mar 22 18:18:00 2010
New Revision: 926235

URL: http://svn.apache.org/viewvc?rev=926235&view=rev
Log:
HBASE-2355 Unsynchronized logWriters map is mutated from several threads in HLog splitting

Modified:
    hadoop/hbase/branches/0.20/CHANGES.txt
    hadoop/hbase/branches/0.20/src/java/org/apache/hadoop/hbase/regionserver/HLog.java

Modified: hadoop/hbase/branches/0.20/CHANGES.txt
URL: http://svn.apache.org/viewvc/hadoop/hbase/branches/0.20/CHANGES.txt?rev=926235&r1=926234&r2=926235&view=diff
==============================================================================
--- hadoop/hbase/branches/0.20/CHANGES.txt (original)
+++ hadoop/hbase/branches/0.20/CHANGES.txt Mon Mar 22 18:18:00 2010
@@ -50,6 +50,8 @@ Release 0.20.4 - Unreleased
    HBASE-2283  row level atomicity (Kannan Muthukkaruppan via Stack)
    HBASE-2344  InfoServer and hence HBase Master doesn't fully start if you
                have HADOOP-6151 patch (Kannan Muthukkaruppan via Stack)
+   HBASE-2355  Unsynchronized logWriters map is mutated from several threads in
+               HLog splitting (Todd Lipcon via Andrew Purtell)
 
   IMPROVEMENTS
    HBASE-2180  Bad read performance from synchronizing hfile.fddatainputstream

Modified: hadoop/hbase/branches/0.20/src/java/org/apache/hadoop/hbase/regionserver/HLog.java
URL: http://svn.apache.org/viewvc/hadoop/hbase/branches/0.20/src/java/org/apache/hadoop/hbase/regionserver/HLog.java?rev=926235&r1=926234&r2=926235&view=diff
==============================================================================
--- hadoop/hbase/branches/0.20/src/java/org/apache/hadoop/hbase/regionserver/HLog.java (original)
+++ hadoop/hbase/branches/0.20/src/java/org/apache/hadoop/hbase/regionserver/HLog.java Mon Mar 22 18:18:00 2010
@@ -1150,7 +1150,8 @@ public class HLog implements HConstants,
     final HBaseConfiguration conf)
   throws IOException {
     final Map<byte [], WriterAndPath> logWriters =
-      new TreeMap<byte [], WriterAndPath>(Bytes.BYTES_COMPARATOR);
+      Collections.synchronizedMap(
+        new TreeMap<byte [], WriterAndPath>(Bytes.BYTES_COMPARATOR));
     List<Path> splits = null;
     
     // Number of threads to use when log splitting to rewrite the logs.