--- java/org/apache/tomcat/util/net/Nio2Channel.java (revision 1711436) +++ java/org/apache/tomcat/util/net/Nio2Channel.java (working copy) @@ -128,9 +128,21 @@ return super.toString()+":"+this.sc.toString(); } + private volatile Exception trace = null; @Override public Future read(ByteBuffer dst) { - return sc.read(dst); + try { + throw new Exception(Thread.currentThread().getName()); + } catch (Exception e) { + trace = e; + } + try { + return sc.read(dst); + } catch (java.nio.channels.ReadPendingException e) { + System.out.println("Read pending " + Thread.currentThread().getName()); + trace.printStackTrace(); + throw e; + } } @Override