On Fri, Jun 12, 2020, 10:36 Mark A. Claassen <[email protected]> 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();
> }
> ---------------