jetty / jetty/jetty.project

NPE: Cannot invoke "org.eclipse.jetty.server.HttpStream.consumeAvailable()" because "stream" is null during FCGI idle-timeout

Open
#14,022 0 comments 0 reactions 1 assignee Claimed by @sbordet View on GitHub
Bug
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

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.