NPE: Cannot invoke "org.eclipse.jetty.server.HttpStream.consumeAvailable()" because "stream" is null during FCGI idle-timeout
- Dominant language
- Java
- Stars
- 4.1k
- Forks
- 2k
- Avg merge
- 3d 56m
- Merged PRs (30d)
- 48
Description
**Jetty version(s)**
12.1.4 (could be older)
**Jetty Environment**
n/a
**HTTP version**
n/a
**Java version/vendor** `(use: java -version)`
25
**OS type/version**
Linux
**Description**
Looks like there is a NPE from consumeAvailable during an IdleTimeout while processing FCGI, that we shouldn't probably not be logging during this situation.
```
2025-11-11 23:01:02.508:INFO :oejct.ResponseListeners:HttpClient@1c4ee95c-scheduler-1: Exception while notifying listener org.eclipse.jetty.proxy.ProxyHandler$ProxyResponseListener@7bdff9f4[Not completed]
java.lang.NullPointerException: Cannot invoke "org.eclipse.jetty.server.HttpStream.consumeAvailable()" because "stream" is null
at org.eclipse.jetty.server.internal.HttpChannelState$ChannelRequest.consumeAvailable(HttpChannelState.java:999)
at org.eclipse.jetty.server.Request$Wrapper.consumeAvailable(Request.java:943)
at org.eclipse.jetty.server.Request$Wrapper.consumeAvailable(Request.java:943)
at org.eclipse.jetty.server.Request$Wrapper.consumeAvailable(Request.java:943)
at org.eclipse.jetty.server.Request$Wrapper.consumeAvailable(Request.java:943)
at org.eclipse.jetty.server.Request$Wrapper.consumeAvailable(Request.java:943)
at org.eclipse.jetty.server.Request$Wrapper.consumeAvailable(Request.java:943)
at org.eclipse.jetty.server.Request$Wrapper.consumeAvailable(Request.java:943)
at org.eclipse.jetty.server.ResponseUtils.ensureConsumeAvailableOrNotPersistent(ResponseUtils.java:29)
at org.eclipse.jetty.server.Response.writeError(Response.java:656)
at org.eclipse.jetty.server.Response.writeError(Response.java:603)
at org.eclipse.jetty.proxy.ProxyHandler.onServerToProxyResponseFailure(ProxyHandler.java:445)
at org.eclipse.jetty.proxy.ProxyHandler$ProxyResponseListener.onComplete(ProxyHandler.java:732)
at org.eclipse.jetty.client.transport.ResponseListeners.notifyComplete(ResponseListeners.java:354)
at org.eclipse.jetty.client.transport.ResponseListeners.notifyComplete(ResponseListeners.java:346)
at org.eclipse.jetty.client.transport.HttpReceiver.terminateResponse(HttpReceiver.java:454)
at org.eclipse.jetty.client.transport.HttpReceiver.terminateResponse(HttpReceiver.java:436)
at org.eclipse.jetty.client.transport.HttpReceiver.lambda$abort$0(HttpReceiver.java:534)
at org.eclipse.jetty.util.thread.SerializedInvoker$Link.run(SerializedInvoker.java:274)
at org.eclipse.jetty.util.thread.SerializedInvoker.run(SerializedInvoker.java:174)
at org.eclipse.jetty.client.transport.HttpReceiver.abort(HttpReceiver.java:508)
at org.eclipse.jetty.client.transport.HttpChannel.abortResponse(HttpChannel.java:174)
at org.eclipse.jetty.client.transport.HttpChannel.abort(HttpChannel.java:165)
at org.eclipse.jetty.client.transport.HttpExchange.abort(HttpExchange.java:305)
at org.eclipse.jetty.client.transport.HttpConversation.abort(HttpConversation.java:174)
at org.eclipse.jetty.client.transport.HttpRequest.abort(HttpRequest.java:839)
at org.eclipse.jetty.fcgi.client.transport.internal.HttpConnectionOverFCGI.abort(HttpConnectionOverFCGI.java:375)
at org.eclipse.jetty.fcgi.client.transport.internal.HttpConnectionOverFCGI.close(HttpConnectionOverFCGI.java:335)
at org.eclipse.jetty.fcgi.client.transport.internal.HttpConnectionOverFCGI.onIdleExpired(HttpConnectionOverFCGI.java:313)
at org.eclipse.jetty.io.AbstractEndPoint.onIdleExpired(AbstractEndPoint.java:377)
at org.eclipse.jetty.io.IdleTimeout.checkIdleTimeout(IdleTimeout.java:172)
at org.eclipse.jetty.io.IdleTimeout.idleCheck(IdleTimeout.java:113)
at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:545)
at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:328)
at java.base/java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:309)
at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1090)
at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:614)
at java.base/java.lang.Thread.run(Thread.java:1474)
```
Contributor guide
Assessment
This issue has not been assessed yet.