0

I started jetty in nonstop server on port 18095 and it was running fine, few days later suddenly noticed it consumes more CPU and when I check the log noticed the following log writing continiously

    2015-07-08 13:25:48.606:WARN:oejs.ServerConnector:qtp26807578-18-acceptor-0@182e42f-ServerConnector@1f02fde {HTTP/1.1}{0.0.0.0:18095}:
java.io.IOException: Bad file descriptor (errno:4009)
        at sun.nio.ch.ServerSocketChannelImpl.accept0(Native Method)
        at sun.nio.ch.ServerSocketChannelImpl.accept(ServerSocketChannelImpl.java:241)
        at org.eclipse.jetty.server.ServerConnector.accept(ServerConnector.java:377)
        at org.eclipse.jetty.server.AbstractConnector$Acceptor.run(AbstractConnector.java:500)
        at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:635)
        at org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool.java:555)
        at java.lang.Thread.run(Thread.java:724)

Is there any way to fix this. Thanks

vels4j
  • 11,208
  • 5
  • 38
  • 63

1 Answers1

1

The "errno: 4009" is from outside of Java itself.

Something in the OS (or FileSystem) is preventing that particular incoming socket from being accepted.

If you are a unix system, consider evaluating your various ulimit values and bumping up the appropriate values to suit your needs better.

If you are on a Windows environment, don't run on Windows ME/2000 (as those have a long history of JVM/ServerSocket issues)

Joakim Erdfelt
  • 46,896
  • 7
  • 86
  • 136
  • thanks for your answer, I'm getting this error on hp-nonstop server. Yes you are correct 4009 coming from IO it seems tcp connection died after server opens a connection – vels4j Jul 09 '15 at 13:51