Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Resteasy reactive with Http 1.1 Pipelining raising exception since quarkus 2.4.0 #24626

Closed
RuggeroDAlo opened this issue Mar 30, 2022 · 12 comments · Fixed by #24698
Closed

Resteasy reactive with Http 1.1 Pipelining raising exception since quarkus 2.4.0 #24626

RuggeroDAlo opened this issue Mar 30, 2022 · 12 comments · Fixed by #24698
Labels
kind/bug Something isn't working
Milestone

Comments

@RuggeroDAlo
Copy link
Contributor

Describe the bug

In a quarkus 2.7.5 app running with docker I've noticed the following errors:

2022-03-29 09:05:30,993 ERROR [io.qua.ver.cor.run.VertxCoreRecorder] (vert.x-eventloop-thread-1) Uncaught exception received by Vert.x: java.lang.IllegalStateException: Can't set the context safety flag: the current context is not a duplicated context
    at io.quarkus.vertx.core.runtime.context.VertxContextSafetyToggle.setContextSafe(VertxContextSafetyToggle.java:107)
    at io.quarkus.vertx.core.runtime.context.VertxContextSafetyToggle.setCurrentContextSafe(VertxContextSafetyToggle.java:94)
    at io.quarkus.vertx.http.runtime.VertxHttpRecorder$12.handle(VertxHttpRecorder.java:504)
    at io.quarkus.vertx.http.runtime.VertxHttpRecorder$12.handle(VertxHttpRecorder.java:501)
    at io.quarkus.vertx.http.runtime.VertxHttpRecorder$1.handle(VertxHttpRecorder.java:161)
    at io.quarkus.vertx.http.runtime.VertxHttpRecorder$1.handle(VertxHttpRecorder.java:143)
    at io.vertx.core.http.impl.Http1xServerRequestHandler.handle(Http1xServerRequestHandler.java:67)
    at io.vertx.core.http.impl.Http1xServerRequestHandler.handle(Http1xServerRequestHandler.java:30)
    at io.vertx.core.http.impl.Http1xServerConnection.lambda$handleNext$1(Http1xServerConnection.java:225)
    at io.vertx.core.impl.EventLoopContext.emit(EventLoopContext.java:50)
    at io.vertx.core.impl.ContextImpl.emit(ContextImpl.java:274)
    at io.vertx.core.impl.EventLoopContext.emit(EventLoopContext.java:22)
    at io.vertx.core.http.impl.Http1xServerConnection.handleNext(Http1xServerConnection.java:222)
    at io.vertx.core.http.impl.Http1xServerConnection.responseComplete(Http1xServerConnection.java:207)
    at io.vertx.core.http.impl.Http1xServerResponse.end(Http1xServerResponse.java:418)
    at io.vertx.core.http.impl.Http1xServerResponse.end(Http1xServerResponse.java:391)
    at io.quarkus.vertx.http.runtime.filters.AbstractResponseWrapper.end(AbstractResponseWrapper.java:223)
    at org.jboss.resteasy.reactive.server.vertx.ResteasyReactiveOutputStream.write(ResteasyReactiveOutputStream.java:100)
    at org.jboss.resteasy.reactive.server.vertx.ResteasyReactiveOutputStream.writeBlocking(ResteasyReactiveOutputStream.java:224)
    at org.jboss.resteasy.reactive.server.vertx.ResteasyReactiveOutputStream.close(ResteasyReactiveOutputStream.java:270)
    at io.quarkus.resteasy.reactive.jackson.runtime.serialisers.BasicServerJacksonMessageBodyWriter.writeResponse(BasicServerJacksonMessageBodyWriter.java:44)
    at org.jboss.resteasy.reactive.server.core.ServerSerialisers.invokeWriter(ServerSerialisers.java:207)
    at org.jboss.resteasy.reactive.server.core.ServerSerialisers.invokeWriter(ServerSerialisers.java:178)
    at org.jboss.resteasy.reactive.server.core.serialization.FixedEntityWriter.write(FixedEntityWriter.java:26)
    at org.jboss.resteasy.reactive.server.handlers.ResponseWriterHandler.handle(ResponseWriterHandler.java:33)
    at org.jboss.resteasy.reactive.server.handlers.ResponseWriterHandler.handle(ResponseWriterHandler.java:15)
    at org.jboss.resteasy.reactive.common.core.AbstractResteasyReactiveContext.run(AbstractResteasyReactiveContext.java:141)
    at org.jboss.resteasy.reactive.server.vertx.VertxResteasyReactiveRequestContext$1$1.handle(VertxResteasyReactiveRequestContext.java:73)
    at org.jboss.resteasy.reactive.server.vertx.VertxResteasyReactiveRequestContext$1$1.handle(VertxResteasyReactiveRequestContext.java:70)
    at io.vertx.core.impl.AbstractContext.dispatch(AbstractContext.java:100)
    at io.vertx.core.impl.AbstractContext.dispatch(AbstractContext.java:63)
    at io.vertx.core.impl.EventLoopContext.lambda$runOnContext$0(EventLoopContext.java:38)
    at io.netty.util.concurrent.AbstractEventExecutor.safeExecute(AbstractEventExecutor.java:164)
    at io.netty.util.concurrent.SingleThreadEventExecutor.runAllTasks(SingleThreadEventExecutor.java:469)
    at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:500)
    at io.netty.util.concurrent.SingleThreadEventExecutor$4.run(SingleThreadEventExecutor.java:986)
    at io.netty.util.internal.ThreadExecutorMap$2.run(ThreadExecutorMap.java:74)
    at io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30)
    at java.base/java.lang.Thread.run(Thread.java:829)

I think this is due to the client using pipelining, I can reproduce the error running in dev mode with the simplest endpoint possible

package org.acme;

import io.smallrye.mutiny.Uni;
import javax.inject.Inject;
import javax.ws.rs.GET;
import javax.ws.rs.Path;
import org.jboss.logging.Logger;

@Path("/")
public class Endpoint {

  @Inject
  Logger logger;


  @GET
  public Uni<String> endpoint() {
    logger.info("Api called");
    return Uni.createFrom().item("Hello");
  }
}

Sending 2 requests with

echo -en "GET / HTTP/1.1\r\nHost: localhost\r\n\r\nGET / HTTP/1.1\r\nHost: localhost\r\n\r\n" | nc localhost 8080

On version 2.7.5.Final / 2.8.0.CR1 results in:

2022-03-30 10:25:32,902 INFO  [io.quarkus] (Quarkus Main Thread) code-with-quarkus 1.0.0-SNAPSHOT on JVM (powered by Quarkus 2.7.5.Final) started in 1.332s. Listening on: http://localhost:8080
2022-03-30 10:25:32,915 INFO  [io.quarkus] (Quarkus Main Thread) Profile dev activated. Live Coding activated.
2022-03-30 10:25:32,916 INFO  [io.quarkus] (Quarkus Main Thread) Installed features: [cdi, resteasy-reactive, smallrye-context-propagation, vertx]
2022-03-30 10:25:38,721 INFO  [org.acm.Endpoint] (vert.x-eventloop-thread-23) Api called
2022-03-30 10:25:38,736 ERROR [io.qua.ver.cor.run.VertxCoreRecorder] (vert.x-eventloop-thread-23) Uncaught exception received by Vert.x: java.lang.IllegalStateException: Can't set the context safety flag: the current context is not a duplicated context
    at io.quarkus.vertx.core.runtime.context.VertxContextSafetyToggle.setContextSafe(VertxContextSafetyToggle.java:107)
    at io.quarkus.vertx.core.runtime.context.VertxContextSafetyToggle.setCurrentContextSafe(VertxContextSafetyToggle.java:94)
    at io.quarkus.vertx.http.runtime.VertxHttpRecorder$12.handle(VertxHttpRecorder.java:504)
    at io.quarkus.vertx.http.runtime.VertxHttpRecorder$12.handle(VertxHttpRecorder.java:501)
    at io.quarkus.vertx.http.runtime.VertxHttpRecorder$1.handle(VertxHttpRecorder.java:161)
    at io.quarkus.vertx.http.runtime.VertxHttpRecorder$1.handle(VertxHttpRecorder.java:143)
    at io.vertx.core.http.impl.Http1xServerRequestHandler.handle(Http1xServerRequestHandler.java:67)
    at io.vertx.core.http.impl.Http1xServerRequestHandler.handle(Http1xServerRequestHandler.java:30)
    at io.vertx.core.http.impl.Http1xServerConnection.lambda$handleNext$1(Http1xServerConnection.java:225)
    at io.vertx.core.impl.EventLoopContext.emit(EventLoopContext.java:50)
    at io.vertx.core.impl.ContextImpl.emit(ContextImpl.java:274)
    at io.vertx.core.impl.EventLoopContext.emit(EventLoopContext.java:22)
    at io.vertx.core.http.impl.Http1xServerConnection.handleNext(Http1xServerConnection.java:222)
    at io.vertx.core.http.impl.Http1xServerConnection.responseComplete(Http1xServerConnection.java:207)
    at io.vertx.core.http.impl.Http1xServerResponse.end(Http1xServerResponse.java:418)
    at io.vertx.core.http.impl.Http1xServerResponse.end(Http1xServerResponse.java:391)
    at io.vertx.core.http.impl.Http1xServerResponse.end(Http1xServerResponse.java:370)
    at org.jboss.resteasy.reactive.server.vertx.VertxResteasyReactiveRequestContext.end(VertxResteasyReactiveRequestContext.java:349)
    at org.jboss.resteasy.reactive.server.providers.serialisers.ServerStringMessageBodyHandler.writeResponse(ServerStringMessageBodyHandler.java:26)
    at org.jboss.resteasy.reactive.server.core.ServerSerialisers.invokeWriter(ServerSerialisers.java:207)
    at org.jboss.resteasy.reactive.server.core.ServerSerialisers.invokeWriter(ServerSerialisers.java:178)
    at org.jboss.resteasy.reactive.server.core.serialization.FixedEntityWriter.write(FixedEntityWriter.java:26)
    at org.jboss.resteasy.reactive.server.handlers.ResponseWriterHandler.handle(ResponseWriterHandler.java:32)
    at org.jboss.resteasy.reactive.server.handlers.ResponseWriterHandler.handle(ResponseWriterHandler.java:15)
    at org.jboss.resteasy.reactive.common.core.AbstractResteasyReactiveContext.run(AbstractResteasyReactiveContext.java:141)
    at org.jboss.resteasy.reactive.server.handlers.RestInitialHandler.beginProcessing(RestInitialHandler.java:49)
    at org.jboss.resteasy.reactive.server.vertx.ResteasyReactiveVertxHandler.handle(ResteasyReactiveVertxHandler.java:17)
    at org.jboss.resteasy.reactive.server.vertx.ResteasyReactiveVertxHandler.handle(ResteasyReactiveVertxHandler.java:7)
    at io.vertx.ext.web.impl.RouteState.handleContext(RouteState.java:1212)
    at io.vertx.ext.web.impl.RoutingContextImplBase.iterateNext(RoutingContextImplBase.java:163)
    at io.vertx.ext.web.impl.RoutingContextImpl.next(RoutingContextImpl.java:141)
    at io.quarkus.vertx.http.runtime.VertxHttpRecorder$5.handle(VertxHttpRecorder.java:380)
    at io.quarkus.vertx.http.runtime.VertxHttpRecorder$5.handle(VertxHttpRecorder.java:358)
    at io.vertx.ext.web.impl.RouteState.handleContext(RouteState.java:1212)
    at io.vertx.ext.web.impl.RoutingContextImplBase.iterateNext(RoutingContextImplBase.java:163)
    at io.vertx.ext.web.impl.RoutingContextImpl.next(RoutingContextImpl.java:141)
    at io.quarkus.vertx.http.runtime.devmode.VertxHttpHotReplacementSetup$5.handle(VertxHttpHotReplacementSetup.java:196)
    at io.quarkus.vertx.http.runtime.devmode.VertxHttpHotReplacementSetup$5.handle(VertxHttpHotReplacementSetup.java:185)
    at io.vertx.core.impl.future.FutureImpl$3.onSuccess(FutureImpl.java:141)
    at io.vertx.core.impl.future.FutureBase.lambda$emitSuccess$0(FutureBase.java:54)
    at io.netty.util.concurrent.AbstractEventExecutor.safeExecute(AbstractEventExecutor.java:164)
    at io.netty.util.concurrent.SingleThreadEventExecutor.runAllTasks(SingleThreadEventExecutor.java:469)
    at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:503)
    at io.netty.util.concurrent.SingleThreadEventExecutor$4.run(SingleThreadEventExecutor.java:986)
    at io.netty.util.internal.ThreadExecutorMap$2.run(ThreadExecutorMap.java:74)
    at io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30)
    at java.base/java.lang.Thread.run(Thread.java:829)

On quarkus 2.3.1 or lower this doesn't happen, quarkus 2.4.0 is the first version where this happens as far as I can tell.

Expected behavior

HTTP 1.1 pipelined requests should not fail

Actual behavior

The second HTTP 1.1 pipelined request fails with an exception and the response for the second request is never sent

How to Reproduce?

  1. Create a GET point on / path
  2. Start quarkus >= 2.4.0 in dev mode with quarkus:dev
  3. Send 2 http pipelined requests with echo -en "GET / HTTP/1.1\r\nHost: localhost\r\n\r\nGET / HTTP/1.1\r\nHost: localhost\r\n\r\n" | nc localhost 8080

Output of uname -a or ver

Linux g8 5.13.0-37-generic #42-Ubuntu SMP Tue Mar 15 14:34:06 UTC 2022 x86_64 x86_64 x86_64 GNU/Linux

Output of java -version

openjdk version "17.0.2" 2022-01-18 OpenJDK Runtime Environment (build 17.0.2+8-Ubuntu-122.10) OpenJDK 64-Bit Server VM (build 17.0.2+8-Ubuntu-122.10, mixed mode, sharing)

GraalVM version (if different from Java)

NA

Quarkus version or git rev

2.4.0, 2.7.5, 2.8.0.CR1

Build tool (ie. output of mvnw --version or gradlew --version)

Apache Maven 3.8.4 (9b656c72d54e5bacbed989b64718c159fe39b537)

Additional information

No response

@RuggeroDAlo RuggeroDAlo added the kind/bug Something isn't working label Mar 30, 2022
@RuggeroDAlo RuggeroDAlo changed the title Resteast reactive with Http 1.1 Pipelining raising exception since quarkus 2.4.0 Resteasy reactive with Http 1.1 Pipelining raising exception since quarkus 2.4.0 Mar 30, 2022
@RuggeroDAlo
Copy link
Contributor Author

Is manually tagging people frowned upon? 😃 @geoand @stuartwdouglas

@geoand
Copy link
Contributor

geoand commented Mar 31, 2022

@cescoffier any idea?

@cescoffier
Copy link
Member

Looks like we are not executed on a duplicated context. I will try to reproduce it to check where do we come from.

It could be a bug in vertx as it's expected that vertx invoke the request handler on a duplicated context, but that does not seem to be the case here.

@cescoffier
Copy link
Member

So, yes, it would need a fix in Vert.x. I can do a fix in Quarkus, but that's not the right place.
Vert.x should invoke every request handler execution on a duplicated context, and it's not the case here.

@jviet @tsegismont

@geoand
Copy link
Contributor

geoand commented Apr 1, 2022

Thanks @cescoffier !

cescoffier added a commit to cescoffier/quarkus that referenced this issue Apr 1, 2022
… even when receiving pipelined requests. This is a 'temporary(tm)' workaround, as the issue most probably lies in Vert.x. It fixes quarkusio#24626
@quarkus-bot quarkus-bot bot added this to the 2.9 - main milestone Apr 4, 2022
@gsmet gsmet modified the milestones: 2.9 - main, 2.8.1.Final Apr 11, 2022
gsmet pushed a commit to gsmet/quarkus that referenced this issue Apr 11, 2022
… even when receiving pipelined requests. This is a 'temporary(tm)' workaround, as the issue most probably lies in Vert.x. It fixes quarkusio#24626

(cherry picked from commit fc801a2)
@RuggeroDAlo
Copy link
Contributor Author

RuggeroDAlo commented Apr 19, 2022

@cescoffier Just tried with 2.8.1, the error has changed but something still doesn't seem right:

2022-04-19 18:52:53,489 INFO  [io.quarkus] (Quarkus Main Thread) code-with-quarkus 1.0.0-SNAPSHOT on JVM (powered by Quarkus 2.8.1.Final) started in 1.550s. Listening on: http://localhost:8080
2022-04-19 18:52:53,490 INFO  [io.quarkus] (Quarkus Main Thread) Profile dev activated. Live Coding activated.
2022-04-19 18:52:53,490 INFO  [io.quarkus] (Quarkus Main Thread) Installed features: [cdi, config-yaml, resteasy-reactive, smallrye-context-propagation, vertx]
2022-04-19 18:52:54,260 INFO  [org.acm.Endpoint] (vert.x-eventloop-thread-0) Api called
2022-04-19 18:52:54,275 INFO  [org.acm.Endpoint] (vert.x-eventloop-thread-0) Api called
2022-04-19 18:52:54,282 ERROR [io.qua.ver.htt.run.QuarkusErrorHandler] (vert.x-eventloop-thread-0) HTTP Request to / failed, error id: c78d2ee2-d998-4d9b-8296-9dd60deca626-1: javax.enterprise.context.ContextNotActiveException
	at io.quarkus.arc.impl.ClientProxies.getDelegate(ClientProxies.java:46)
	at io.quarkus.vertx.http.runtime.CurrentVertxRequest_ClientProxy.arc$delegate(Unknown Source)
	at io.quarkus.vertx.http.runtime.CurrentVertxRequest_ClientProxy.setOtherHttpContextObject(Unknown Source)
	at io.quarkus.resteasy.reactive.server.runtime.QuarkusCurrentRequest.set(QuarkusCurrentRequest.java:25)
	at org.jboss.resteasy.reactive.server.core.CurrentRequestManager.set(CurrentRequestManager.java:12)
	at org.jboss.resteasy.reactive.server.core.ResteasyReactiveRequestContext.requestScopeDeactivated(ResteasyReactiveRequestContext.java:644)
	at org.jboss.resteasy.reactive.common.core.AbstractResteasyReactiveContext.run(AbstractResteasyReactiveContext.java:183)
	at org.jboss.resteasy.reactive.server.handlers.RestInitialHandler.beginProcessing(RestInitialHandler.java:49)
	at org.jboss.resteasy.reactive.server.vertx.ResteasyReactiveVertxHandler.handle(ResteasyReactiveVertxHandler.java:17)
	at org.jboss.resteasy.reactive.server.vertx.ResteasyReactiveVertxHandler.handle(ResteasyReactiveVertxHandler.java:7)
	at io.vertx.ext.web.impl.RouteState.handleContext(RouteState.java:1212)
	at io.vertx.ext.web.impl.RoutingContextImplBase.iterateNext(RoutingContextImplBase.java:163)
	at io.vertx.ext.web.impl.RoutingContextImpl.next(RoutingContextImpl.java:141)
	at io.quarkus.vertx.http.runtime.VertxHttpRecorder$5.handle(VertxHttpRecorder.java:380)
	at io.quarkus.vertx.http.runtime.VertxHttpRecorder$5.handle(VertxHttpRecorder.java:358)
	at io.vertx.ext.web.impl.RouteState.handleContext(RouteState.java:1212)
	at io.vertx.ext.web.impl.RoutingContextImplBase.iterateNext(RoutingContextImplBase.java:163)
	at io.vertx.ext.web.impl.RoutingContextImpl.next(RoutingContextImpl.java:141)
	at io.quarkus.vertx.http.runtime.devmode.VertxHttpHotReplacementSetup$5.handle(VertxHttpHotReplacementSetup.java:196)
	at io.quarkus.vertx.http.runtime.devmode.VertxHttpHotReplacementSetup$5.handle(VertxHttpHotReplacementSetup.java:185)
	at io.vertx.core.impl.future.FutureImpl$3.onSuccess(FutureImpl.java:141)
	at io.vertx.core.impl.future.FutureBase.lambda$emitSuccess$0(FutureBase.java:54)
	at io.netty.util.concurrent.AbstractEventExecutor.safeExecute(AbstractEventExecutor.java:164)
	at io.netty.util.concurrent.SingleThreadEventExecutor.runAllTasks(SingleThreadEventExecutor.java:469)
	at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:503)
	at io.netty.util.concurrent.SingleThreadEventExecutor$4.run(SingleThreadEventExecutor.java:986)
	at io.netty.util.internal.ThreadExecutorMap$2.run(ThreadExecutorMap.java:74)
	at io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30)
	at java.base/java.lang.Thread.run(Thread.java:829)

Both requests are processed and 200 is returned for both now though

EDIT:
this only seems to happen in dev mode, building jar/container and running it doesn't seem to be an issue luckily

@cescoffier
Copy link
Member

Hum... that's more a CDI Request context issue I think.

@mkouba do you have any idea?

@mkouba
Copy link
Contributor

mkouba commented Apr 20, 2022

Hum... that's more a CDI Request context issue I think.

@mkouba do you have any idea?

I have no idea. It seems that the request context is not active at the time the QuarkusCurrentRequest.set() method is called. But we'll need someone well-versed in resteasy reactive... CC @geoand

@geoand
Copy link
Contributor

geoand commented Apr 20, 2022

@RuggeroDAlo any chance you can provide a project and instructions on how I can reproduce the issue?

@RuggeroDAlo
Copy link
Contributor Author

@geoand I'm not sure what happened now but I was trying with the same code as yesterday (the one in the issue description) and now I can't reproduce it, false alarm I guess?

@geoand
Copy link
Contributor

geoand commented Apr 20, 2022

If you are able to reproduce it again, please let us know :)

@RuggeroDAlo
Copy link
Contributor Author

@geoand The same error occurred in a pod running on k8s (so in prod mode) on version 2.8.1

2022-04-28 13:34:05,364 ERROR [io.qua.ver.cor.run.VertxCoreRecorder] (vert.x-eventloop-thread-0) Uncaught exception received by Vert.x: javax.enterprise.context.ContextNotActiveException                                                                                      
    at io.quarkus.arc.impl.ClientProxies.getDelegate(ClientProxies.java:46)                                                                                                                                                                                                     
    at io.quarkus.vertx.http.runtime.CurrentVertxRequest_ClientProxy.arc$delegate(Unknown Source)                                                                                                                                                                               
    at io.quarkus.vertx.http.runtime.CurrentVertxRequest_ClientProxy.setOtherHttpContextObject(Unknown Source)                                                                                                                                                                  
    at io.quarkus.resteasy.reactive.server.runtime.QuarkusCurrentRequest.set(QuarkusCurrentRequest.java:25)                                                                                                                                                                     
    at org.jboss.resteasy.reactive.server.core.CurrentRequestManager.set(CurrentRequestManager.java:12)                                                                                                                                                                         
    at org.jboss.resteasy.reactive.server.core.ResteasyReactiveRequestContext.requestScopeDeactivated(ResteasyReactiveRequestContext.java:644)                                                                                                                                  
    at org.jboss.resteasy.reactive.common.core.AbstractResteasyReactiveContext.run(AbstractResteasyReactiveContext.java:183)                                                                                                                                                    
    at org.jboss.resteasy.reactive.server.vertx.VertxResteasyReactiveRequestContext$1$1.handle(VertxResteasyReactiveRequestContext.java:73)                                                                                                                                     
    at org.jboss.resteasy.reactive.server.vertx.VertxResteasyReactiveRequestContext$1$1.handle(VertxResteasyReactiveRequestContext.java:70)                                                                                                                                     
    at io.vertx.core.impl.AbstractContext.dispatch(AbstractContext.java:100)                                                                                                                                                                                                    
    at io.vertx.core.impl.AbstractContext.dispatch(AbstractContext.java:63)                                                                                                                                                                                                     
    at io.vertx.core.impl.EventLoopContext.lambda$runOnContext$0(EventLoopContext.java:38)                                                                                                                                                                                      
    at io.netty.util.concurrent.AbstractEventExecutor.safeExecute(AbstractEventExecutor.java:164)                                                                                                                                                                               
    at io.netty.util.concurrent.SingleThreadEventExecutor.runAllTasks(SingleThreadEventExecutor.java:469)                                                                                                                                                                       
    at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:500)                                                                                                                                                                                                             
    at io.netty.util.concurrent.SingleThreadEventExecutor$4.run(SingleThreadEventExecutor.java:986)                                                                                                                                                                             
    at io.netty.util.internal.ThreadExecutorMap$2.run(ThreadExecutorMap.java:74)                                                                                                                                                                                                
    at io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30)                                                                                                                                                                                    
    at java.base/java.lang.Thread.run(Thread.java:829) 

This is in the same pod where I found the original error, so I think it is related to pipelining. Unfortunately I don't know how to reproduce it, sorry.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
kind/bug Something isn't working
Projects
None yet
Development

Successfully merging a pull request may close this issue.

5 participants