Author: mahadev
Date: Thu Dec  3 22:30:44 2009
New Revision: 886960

URL: http://svn.apache.org/viewvc?rev=886960&view=rev
Log:
ZOOKEEPER-597. ASyncHammerTest is failing intermittently on hudson trunk (take 
4) (breed via mahadev)

Modified:
    hadoop/zookeeper/trunk/CHANGES.txt
    
hadoop/zookeeper/trunk/src/java/main/org/apache/zookeeper/server/NIOServerCnxn.java

Modified: hadoop/zookeeper/trunk/CHANGES.txt
URL: 
http://svn.apache.org/viewvc/hadoop/zookeeper/trunk/CHANGES.txt?rev=886960&r1=886959&r2=886960&view=diff
==============================================================================
--- hadoop/zookeeper/trunk/CHANGES.txt (original)
+++ hadoop/zookeeper/trunk/CHANGES.txt Thu Dec  3 22:30:44 2009
@@ -145,6 +145,9 @@
   ZOOKEEPER-597. ASyncHammerTest is failing intermittently on hudson trunk
   (take 3) (phunt via mahadev)
 
+  ZOOKEEPER-597. ASyncHammerTest is failing intermittently on hudson trunk
+  (take 4) (breed via mahadev)
+
 IMPROVEMENTS:
   ZOOKEEPER-473. cleanup junit tests to eliminate false positives due to
   "socket reuse" and failure to close client (phunt via mahadev)

Modified: 
hadoop/zookeeper/trunk/src/java/main/org/apache/zookeeper/server/NIOServerCnxn.java
URL: 
http://svn.apache.org/viewvc/hadoop/zookeeper/trunk/src/java/main/org/apache/zookeeper/server/NIOServerCnxn.java?rev=886960&r1=886959&r2=886960&view=diff
==============================================================================
--- 
hadoop/zookeeper/trunk/src/java/main/org/apache/zookeeper/server/NIOServerCnxn.java
 (original)
+++ 
hadoop/zookeeper/trunk/src/java/main/org/apache/zookeeper/server/NIOServerCnxn.java
 Thu Dec  3 22:30:44 2009
@@ -71,6 +71,13 @@
 
     private ConnectionBean jmxConnectionBean;
 
+    static {
+        Thread.setDefaultUncaughtExceptionHandler(new 
Thread.UncaughtExceptionHandler() {
+            public void uncaughtException(Thread t, Throwable e) {
+                LOG.error("Thread " + t + " died", e);
+            }
+        });
+    }
 
     static public class Factory extends Thread {
         ZooKeeperServer zks;
@@ -937,8 +944,6 @@
         return "NIOServerCnxn object with sock = " + sock + " and sk = " + sk;
     }
 
-    boolean closed;
-
     /*
      * (non-Javadoc)
      *
@@ -955,12 +960,6 @@
         }
         jmxConnectionBean = null;
 
-        synchronized(this) {
-            if (closed) {
-                return;
-            }
-            closed = true;
-        }
         synchronized (factory.ipMap)
         {
             Set<NIOServerCnxn> s = 
factory.ipMap.get(sock.socket().getInetAddress());
@@ -1041,14 +1040,6 @@
      */
     synchronized public void sendResponse(ReplyHeader h, Record r, String tag) 
{
         try {
-            if (closed) {
-                if (LOG.isTraceEnabled()) {
-                    LOG.trace("send called on closed session 0x"
-                              + Long.toHexString(sessionId)
-                              + " with record " + r);
-                }
-                return;
-            }
             ByteArrayOutputStream baos = new ByteArrayOutputStream();
             // Make space for length
             BinaryOutputArchive bos = BinaryOutputArchive.getArchive(baos);
@@ -1078,7 +1069,7 @@
                 }
             }
          } catch(Exception e) {
-            LOG.error("Unexpected exception. Destruction averted.", e);
+            LOG.warn("Unexpected exception. Destruction averted.", e);
          }
     }
 


Reply via email to