On Fri, Jun 12, 2020, 10:36 Mark A. Claassen <mclaas...@ocie.net> wrote:
> We were doing some load testing and we started getting a > NullPointerException at the stack trace below. We don't get the NPE all > the time, so I am guessing some of these objects got corrupted somehow. > One place the clear() method is called from is the recycle() method in the > Response object from the same package. > > Has anyone seen this before? My Internet searches did not reveal any > other reports of this. Is this something that has already been fixed in > the course of other changes? > > The version of Tomcat is 9.0.12 and we are using the openSSL underneath > all this. > > --------------- > at > org.apache.catalina.connector.CoyoteOutputStream.checkNonBlockingWrite(CoyoteOutputStream.java:134) > at > org.apache.catalina.connector.CoyoteOutputStream.write(CoyoteOutputStream.java:95) > at > org.apache.catalina.connector.CoyoteOutputStream.write(CoyoteOutputStream.java:89) > at dsi.core.io > .ByteCounterOutputStream.write(ByteCounterOutputStream.java:37) > Apologies ... but this doesn't look like a complete stack trace, to include any "caused by" statements (and the originating statement) ------------ CoyoteOutputStream > private boolean checkNonBlockingWrite() { > boolean nonBlocking = !ob.isBlocking(); <-- Line 134 > if (nonBlocking && !ob.isReady()) { > throw new > IllegalStateException(sm.getString("coyoteOutputStream.nbNotready")); > } > return nonBlocking; > } > --------------- CoyoteOutputStream > /** > * Clear facade. > */ > void clear() { > ob = null; > } > --------------- CoyoteOutputStream > @Override > public void close() throws IOException { > ob.close(); > } > ---------------