https://bz.apache.org/bugzilla/show_bug.cgi?id=60409

            Bug ID: 60409
           Summary: IllegalArgumentException at java.nio.Buffer.position
                    at SocketWrapperBase.transfer()
           Product: Tomcat 8
           Version: 8.5.x-trunk
          Hardware: PC
                OS: Linux
            Status: NEW
          Severity: normal
          Priority: P2
         Component: Connectors
          Assignee: [email protected]
          Reporter: [email protected]
  Target Milestone: ----

An unexpected exception found in log.

SEVERE: Error finishing response
java.lang.IllegalArgumentException
  at java.nio.Buffer.position(Buffer.java:244)
  at sun.nio.ch.IOUtil.write(IOUtil.java:68)
  at sun.nio.ch.SocketChannelImpl.write(SocketChannelImpl.java:471)
  at org.apache.tomcat.util.net.NioChannel.write(NioChannel.java:134)
  at
org.apache.tomcat.util.net.NioBlockingSelector.write(NioBlockingSelector.java:101)
  at org.apache.tomcat.util.net.NioSelectorPool.write(NioSelectorPool.java:157)
  at
org.apache.tomcat.util.net.NioEndpoint$NioSocketWrapper.doWrite(NioEndpoint.java:125
  at
org.apache.tomcat.util.net.SocketWrapperBase.doWrite(SocketWrapperBase.java:670)
  at
org.apache.tomcat.util.net.SocketWrapperBase.flushBlocking(SocketWrapperBase.java:60
  at
org.apache.tomcat.util.net.SocketWrapperBase.flush(SocketWrapperBase.java:597)
  at
org.apache.coyote.http11.Http11OutputBuffer.flushBuffer(Http11OutputBuffer.java:519)
  at
org.apache.coyote.http11.Http11OutputBuffer.finishResponse(Http11OutputBuffer.java:318)
  at
org.apache.coyote.http11.Http11Processor.endRequest(Http11Processor.java:1458)
  at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:823)
  at
org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:66)
  at
org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:7
  at
org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1455)
  at
org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49)
  at
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
  at
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
  at
org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
  at java.lang.Thread.run(Thread.java:745)

I'm not sure but cause may be the same as in recently fixed bug 60372.
SocketWrapperBase also does not guard Buffer.limit() usages. Looks like all
usages of this method on reusable buffers should be checked.

-- 
You are receiving this mail because:
You are the assignee for the bug.
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to