Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

ChannelOperation terminal stack with Netty and WebFlux

I'm working through Learning Spring Boot 2.0 by Greg L. Turnquist and I'm getting a continuous spewing of errors with no idea how to debug them or even find them. I've just finished Chapter 3 and any time I do anything on the site I get the following error:

2019-07-22 19:57:58.245 DEBUG 17404 --- [ctor-http-nio-3] r.n.http.server.HttpServerOperations     : [id: 0xbcb056a7, L:/0:0:0:0:0:0:0:1:8080 - R:/0:0:0:0:0:0:0:1:52374] Last HTTP response frame
2019-07-22 19:57:58.245 DEBUG 17404 --- [ctor-http-nio-3] r.n.http.server.HttpServerOperations     : [id: 0xbcb056a7, L:/0:0:0:0:0:0:0:1:8080 - R:/0:0:0:0:0:0:0:1:52374] Decreasing pending responses, now 0
2019-07-22 19:57:58.245 DEBUG 17404 --- [ctor-http-nio-3] r.n.http.server.HttpServerOperations     : [id: 0xbcb056a7, L:/0:0:0:0:0:0:0:1:8080 - R:/0:0:0:0:0:0:0:1:52374] Last HTTP packet was sent, terminating the channel
2019-07-22 19:57:58.246 TRACE 17404 --- [ctor-http-nio-3] reactor.netty.channel.ChannelOperations  : [id: 0xbcb056a7, L:/0:0:0:0:0:0:0:1:8080 - R:/0:0:0:0:0:0:0:1:52374] Disposing ChannelOperation from a channel

java.lang.Exception: ChannelOperation terminal stack
    at reactor.netty.channel.ChannelOperations.terminate(ChannelOperations.java:391) ~[reactor-netty-0.8.8.RELEASE.jar:0.8.8.RELEASE]
    at reactor.netty.http.server.HttpServerOperations.cleanHandlerTerminate(HttpServerOperations.java:519) ~[reactor-netty-0.8.8.RELEASE.jar:0.8.8.RELEASE]
    at reactor.netty.http.server.HttpTrafficHandler.operationComplete(HttpTrafficHandler.java:313) ~[reactor-netty-0.8.8.RELEASE.jar:0.8.8.RELEASE]
    at reactor.netty.http.server.HttpTrafficHandler.operationComplete(HttpTrafficHandler.java:54) ~[reactor-netty-0.8.8.RELEASE.jar:0.8.8.RELEASE]
    at io.netty.util.concurrent.DefaultPromise.notifyListener0(DefaultPromise.java:502) ~[netty-common-4.1.36.Final.jar:4.1.36.Final]
    at io.netty.util.concurrent.DefaultPromise.notifyListeners0(DefaultPromise.java:495) ~[netty-common-4.1.36.Final.jar:4.1.36.Final]
    at io.netty.util.concurrent.DefaultPromise.notifyListenersNow(DefaultPromise.java:474) ~[netty-common-4.1.36.Final.jar:4.1.36.Final]
    at io.netty.util.concurrent.DefaultPromise.notifyListeners(DefaultPromise.java:415) ~[netty-common-4.1.36.Final.jar:4.1.36.Final]
    at io.netty.util.concurrent.DefaultPromise.setValue0(DefaultPromise.java:540) ~[netty-common-4.1.36.Final.jar:4.1.36.Final]
    at io.netty.util.concurrent.DefaultPromise.setSuccess0(DefaultPromise.java:529) ~[netty-common-4.1.36.Final.jar:4.1.36.Final]
    at io.netty.util.concurrent.DefaultPromise.trySuccess(DefaultPromise.java:101) ~[netty-common-4.1.36.Final.jar:4.1.36.Final]
    at io.netty.util.internal.PromiseNotificationUtil.trySuccess(PromiseNotificationUtil.java:48) ~[netty-common-4.1.36.Final.jar:4.1.36.Final]
    at io.netty.channel.ChannelOutboundBuffer.safeSuccess(ChannelOutboundBuffer.java:715) ~[netty-transport-4.1.36.Final.jar:4.1.36.Final]
    at io.netty.channel.ChannelOutboundBuffer.remove(ChannelOutboundBuffer.java:270) ~[netty-transport-4.1.36.Final.jar:4.1.36.Final]
    at io.netty.channel.ChannelOutboundBuffer.removeBytes(ChannelOutboundBuffer.java:350) ~[netty-transport-4.1.36.Final.jar:4.1.36.Final]
    at io.netty.channel.socket.nio.NioSocketChannel.doWrite(NioSocketChannel.java:428) ~[netty-transport-4.1.36.Final.jar:4.1.36.Final]
    at io.netty.channel.AbstractChannel$AbstractUnsafe.flush0(AbstractChannel.java:939) ~[netty-transport-4.1.36.Final.jar:4.1.36.Final]
    at io.netty.channel.nio.AbstractNioChannel$AbstractNioUnsafe.flush0(AbstractNioChannel.java:360) ~[netty-transport-4.1.36.Final.jar:4.1.36.Final]
    at io.netty.channel.nio.AbstractNioByteChannel$1.run(AbstractNioByteChannel.java:54) ~[netty-transport-4.1.36.Final.jar:4.1.36.Final]
    at io.netty.util.concurrent.AbstractEventExecutor.safeExecute(AbstractEventExecutor.java:163) ~[netty-common-4.1.36.Final.jar:4.1.36.Final]
    at io.netty.util.concurrent.SingleThreadEventExecutor.runAllTasks(SingleThreadEventExecutor.java:405) ~[netty-common-4.1.36.Final.jar:4.1.36.Final]
    at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:500) ~[netty-transport-4.1.36.Final.jar:4.1.36.Final]
    at io.netty.util.concurrent.SingleThreadEventExecutor$5.run(SingleThreadEventExecutor.java:906) ~[netty-common-4.1.36.Final.jar:4.1.36.Final]
    at io.netty.util.internal.ThreadExecutorMap$2.run(ThreadExecutorMap.java:74) ~[netty-common-4.1.36.Final.jar:4.1.36.Final]
    at java.base/java.lang.Thread.run(Thread.java:835) ~[na:na]

I could just clone his repository (and I probably will) but I would like to know what the problem is here and how I can identify the root of similar problems should I encounter them again. None of the files in the stack trace are my code so I don't know what code snippets I could provide you to help.

like image 702
Nanor Avatar asked Jul 22 '19 19:07

Nanor


1 Answers

did you activate the netty logs on trace level ? cause in the terminal operation in channelOperation class u can read this code : if (log.isTraceEnabled()) { log.trace(ReactorNetty.format(this.channel(), "Disposing ChannelOperation from a channel"), new Exception("ChannelOperation terminal stack")); }

like image 114
sam3131 Avatar answered Oct 11 '22 06:10

sam3131