RetryGatewayFilterFactoryIntegrationTestsshouldNotRetryWhenSleepyRequestPost.() fails with only one subscriber allowed
See original GitHub issueWorks with reactor 3.3.4, framework 5.2.5 and boot 2.3.0.M4 fails with reactor 3.3.5, snapshot, framework 5.2.6 snapshot and boot 2.3.0. snapshot
java.lang.IllegalStateException: Only one connection receive subscriber allowed.
at reactor.netty.channel.FluxReceive.startReceiver(FluxReceive.java:304) [reactor-netty-0.9.7.BUILD-20200417.125022-25.jar:0.9.7.BUILD-SNAPSHOT]
at reactor.netty.channel.FluxReceive.subscribe(FluxReceive.java:136) [reactor-netty-0.9.7.BUILD-20200417.125022-25.jar:0.9.7.BUILD-SNAPSHOT]
at reactor.core.publisher.InternalFluxOperator.subscribe(InternalFluxOperator.java:62) [reactor-core-3.3.5.BUILD-20200415.105622-21.jar:3.3.5.BUILD-SNAPSHOT]
at reactor.netty.ByteBufFlux.subscribe(ByteBufFlux.java:327) [reactor-netty-0.9.7.BUILD-20200417.125022-25.jar:0.9.7.BUILD-SNAPSHOT]
at reactor.core.publisher.InternalFluxOperator.subscribe(InternalFluxOperator.java:62) [reactor-core-3.3.5.BUILD-20200415.105622-21.jar:3.3.5.BUILD-SNAPSHOT]
at reactor.netty.ByteBufFlux.subscribe(ByteBufFlux.java:327) [reactor-netty-0.9.7.BUILD-20200417.125022-25.jar:0.9.7.BUILD-SNAPSHOT]
at reactor.core.publisher.Flux.subscribe(Flux.java:8258) [reactor-core-3.3.5.BUILD-20200415.105622-21.jar:3.3.5.BUILD-SNAPSHOT]
at reactor.netty.channel.MonoSendMany.subscribe(MonoSendMany.java:82) [reactor-netty-0.9.7.BUILD-20200417.125022-25.jar:0.9.7.BUILD-SNAPSHOT]
at reactor.core.publisher.MonoIgnoreThen$ThenIgnoreMain.drain(MonoIgnoreThen.java:153) [reactor-core-3.3.5.BUILD-20200415.105622-21.jar:3.3.5.BUILD-SNAPSHOT]
at reactor.core.publisher.MonoIgnoreThen.subscribe(MonoIgnoreThen.java:56) [reactor-core-3.3.5.BUILD-20200415.105622-21.jar:3.3.5.BUILD-SNAPSHOT]
at reactor.core.publisher.Mono.subscribe(Mono.java:4208) [reactor-core-3.3.5.BUILD-20200415.105622-21.jar:3.3.5.BUILD-SNAPSHOT]
at reactor.netty.NettyOutbound.subscribe(NettyOutbound.java:329) [reactor-netty-0.9.7.BUILD-20200417.125022-25.jar:0.9.7.BUILD-SNAPSHOT]
at reactor.core.publisher.MonoSource.subscribe(MonoSource.java:65) [reactor-core-3.3.5.BUILD-20200415.105622-21.jar:3.3.5.BUILD-SNAPSHOT]
at reactor.core.publisher.MonoDefer.subscribe(MonoDefer.java:52) [reactor-core-3.3.5.BUILD-20200415.105622-21.jar:3.3.5.BUILD-SNAPSHOT]
at reactor.netty.http.client.HttpClientConnect$HttpIOHandlerObserver.onStateChange(HttpClientConnect.java:438) [reactor-netty-0.9.7.BUILD-20200417.125022-25.jar:0.9.7.BUILD-SNAPSHOT]
at reactor.netty.ReactorNetty$CompositeConnectionObserver.onStateChange(ReactorNetty.java:514) [reactor-netty-0.9.7.BUILD-20200417.125022-25.jar:0.9.7.BUILD-SNAPSHOT]
at reactor.netty.resources.PooledConnectionProvider$DisposableAcquire.run(PooledConnectionProvider.java:603) [reactor-netty-0.9.7.BUILD-20200417.125022-25.jar:0.9.7.BUILD-SNAPSHOT]
at reactor.netty.resources.PooledConnectionProvider$DisposableAcquire.onNext(PooledConnectionProvider.java:485) [reactor-netty-0.9.7.BUILD-20200417.125022-25.jar:0.9.7.BUILD-SNAPSHOT]
at reactor.netty.resources.PooledConnectionProvider$DisposableAcquire.onNext(PooledConnectionProvider.java:436) [reactor-netty-0.9.7.BUILD-20200417.125022-25.jar:0.9.7.BUILD-SNAPSHOT]
at reactor.netty.internal.shaded.reactor.pool.AbstractPool$Borrower.deliver(AbstractPool.java:388) [reactor-netty-0.9.7.BUILD-20200417.125022-25.jar:0.9.7.BUILD-SNAPSHOT]
at reactor.netty.internal.shaded.reactor.pool.SimplePool.lambda$drainLoop$13(SimplePool.java:244) [reactor-netty-0.9.7.BUILD-20200417.125022-25.jar:0.9.7.BUILD-SNAPSHOT]
at reactor.core.scheduler.ImmediateScheduler.schedule(ImmediateScheduler.java:47) ~[reactor-core-3.3.5.BUILD-20200415.105622-21.jar:3.3.5.BUILD-SNAPSHOT]
at reactor.netty.internal.shaded.reactor.pool.SimplePool.drainLoop(SimplePool.java:244) [reactor-netty-0.9.7.BUILD-20200417.125022-25.jar:0.9.7.BUILD-SNAPSHOT]
at reactor.netty.internal.shaded.reactor.pool.SimplePool.drain(SimplePool.java:172) [reactor-netty-0.9.7.BUILD-20200417.125022-25.jar:0.9.7.BUILD-SNAPSHOT]
at reactor.netty.internal.shaded.reactor.pool.SimplePool.doAcquire(SimplePool.java:132) [reactor-netty-0.9.7.BUILD-20200417.125022-25.jar:0.9.7.BUILD-SNAPSHOT]
at reactor.netty.internal.shaded.reactor.pool.AbstractPool$Borrower.request(AbstractPool.java:351) [reactor-netty-0.9.7.BUILD-20200417.125022-25.jar:0.9.7.BUILD-SNAPSHOT]
at reactor.netty.resources.PooledConnectionProvider$DisposableAcquire.onSubscribe(PooledConnectionProvider.java:511) [reactor-netty-0.9.7.BUILD-20200417.125022-25.jar:0.9.7.BUILD-SNAPSHOT]
at reactor.netty.internal.shaded.reactor.pool.SimplePool$QueueBorrowerMono.subscribe(SimplePool.java:323) ~[reactor-netty-0.9.7.BUILD-20200417.125022-25.jar:0.9.7.BUILD-SNAPSHOT]
at reactor.netty.resources.PooledConnectionProvider.disposableAcquire(PooledConnectionProvider.java:197) ~[reactor-netty-0.9.7.BUILD-20200417.125022-25.jar:0.9.7.BUILD-SNAPSHOT]
at reactor.netty.resources.PooledConnectionProvider.lambda$acquire$3(PooledConnectionProvider.java:161) ~[reactor-netty-0.9.7.BUILD-20200417.125022-25.jar:0.9.7.BUILD-SNAPSHOT]
at reactor.core.publisher.MonoCreate.subscribe(MonoCreate.java:57) ~[reactor-core-3.3.5.BUILD-20200415.105622-21.jar:3.3.5.BUILD-SNAPSHOT]
at reactor.netty.http.client.HttpClientConnect$MonoHttpConnect.lambda$subscribe$0(HttpClientConnect.java:323) ~[reactor-netty-0.9.7.BUILD-20200417.125022-25.jar:0.9.7.BUILD-SNAPSHOT]
at reactor.core.publisher.MonoCreate.subscribe(MonoCreate.java:57) ~[reactor-core-3.3.5.BUILD-20200415.105622-21.jar:3.3.5.BUILD-SNAPSHOT]
at reactor.core.publisher.FluxRetryPredicate$RetryPredicateSubscriber.resubscribe(FluxRetryPredicate.java:124) ~[reactor-core-3.3.5.BUILD-20200415.105622-21.jar:3.3.5.BUILD-SNAPSHOT]
at reactor.core.publisher.MonoRetryPredicate.subscribeOrReturn(MonoRetryPredicate.java:51) ~[reactor-core-3.3.5.BUILD-20200415.105622-21.jar:3.3.5.BUILD-SNAPSHOT]
at reactor.core.publisher.InternalMonoOperator.subscribe(InternalMonoOperator.java:57) ~[reactor-core-3.3.5.BUILD-20200415.105622-21.jar:3.3.5.BUILD-SNAPSHOT]
at reactor.netty.http.client.HttpClientConnect$MonoHttpConnect.subscribe(HttpClientConnect.java:326) ~[reactor-netty-0.9.7.BUILD-20200417.125022-25.jar:0.9.7.BUILD-SNAPSHOT]
at reactor.core.publisher.Flux.subscribe(Flux.java:8258) [reactor-core-3.3.5.BUILD-20200415.105622-21.jar:3.3.5.BUILD-SNAPSHOT]
at reactor.core.publisher.MonoIgnoreThen$ThenIgnoreMain.drain(MonoIgnoreThen.java:172) [reactor-core-3.3.5.BUILD-20200415.105622-21.jar:3.3.5.BUILD-SNAPSHOT]
at reactor.core.publisher.MonoIgnoreThen.subscribe(MonoIgnoreThen.java:56) [reactor-core-3.3.5.BUILD-20200415.105622-21.jar:3.3.5.BUILD-SNAPSHOT]
at reactor.core.publisher.MonoDefer.subscribe(MonoDefer.java:52) [reactor-core-3.3.5.BUILD-20200415.105622-21.jar:3.3.5.BUILD-SNAPSHOT]
at reactor.core.publisher.MonoDefer.subscribe(MonoDefer.java:52) [reactor-core-3.3.5.BUILD-20200415.105622-21.jar:3.3.5.BUILD-SNAPSHOT]
at reactor.core.publisher.MonoDefer.subscribe(MonoDefer.java:52) [reactor-core-3.3.5.BUILD-20200415.105622-21.jar:3.3.5.BUILD-SNAPSHOT]
at reactor.core.publisher.MonoDefer.subscribe(MonoDefer.java:52) [reactor-core-3.3.5.BUILD-20200415.105622-21.jar:3.3.5.BUILD-SNAPSHOT]
at reactor.core.publisher.MonoIgnoreThen$ThenIgnoreMain.drain(MonoIgnoreThen.java:153) [reactor-core-3.3.5.BUILD-20200415.105622-21.jar:3.3.5.BUILD-SNAPSHOT]
at reactor.core.publisher.MonoIgnoreThen.subscribe(MonoIgnoreThen.java:56) [reactor-core-3.3.5.BUILD-20200415.105622-21.jar:3.3.5.BUILD-SNAPSHOT]
at reactor.core.publisher.MonoDefer.subscribe(MonoDefer.java:52) [reactor-core-3.3.5.BUILD-20200415.105622-21.jar:3.3.5.BUILD-SNAPSHOT]
at reactor.core.publisher.MonoDefer.subscribe(MonoDefer.java:52) [reactor-core-3.3.5.BUILD-20200415.105622-21.jar:3.3.5.BUILD-SNAPSHOT]
at reactor.core.publisher.InternalMonoOperator.subscribe(InternalMonoOperator.java:64) ~[reactor-core-3.3.5.BUILD-20200415.105622-21.jar:3.3.5.BUILD-SNAPSHOT]
at reactor.core.publisher.FluxRetryWhen.subscribe(FluxRetryWhen.java:79) ~[reactor-core-3.3.5.BUILD-20200415.105622-21.jar:3.3.5.BUILD-SNAPSHOT]
at reactor.core.publisher.MonoRetryWhen.subscribeOrReturn(MonoRetryWhen.java:46) ~[reactor-core-3.3.5.BUILD-20200415.105622-21.jar:3.3.5.BUILD-SNAPSHOT]
at reactor.core.publisher.MonoFromFluxOperator.subscribe(MonoFromFluxOperator.java:74) ~[reactor-core-3.3.5.BUILD-20200415.105622-21.jar:3.3.5.BUILD-SNAPSHOT]
at reactor.core.publisher.MonoDefer.subscribe(MonoDefer.java:52) [reactor-core-3.3.5.BUILD-20200415.105622-21.jar:3.3.5.BUILD-SNAPSHOT]
at reactor.core.publisher.MonoDefer.subscribe(MonoDefer.java:52) [reactor-core-3.3.5.BUILD-20200415.105622-21.jar:3.3.5.BUILD-SNAPSHOT]
at reactor.core.publisher.InternalMonoOperator.subscribe(InternalMonoOperator.java:64) ~[reactor-core-3.3.5.BUILD-20200415.105622-21.jar:3.3.5.BUILD-SNAPSHOT]
at reactor.core.publisher.MonoDefer.subscribe(MonoDefer.java:52) [reactor-core-3.3.5.BUILD-20200415.105622-21.jar:3.3.5.BUILD-SNAPSHOT]
at reactor.core.publisher.MonoDefer.subscribe(MonoDefer.java:52) [reactor-core-3.3.5.BUILD-20200415.105622-21.jar:3.3.5.BUILD-SNAPSHOT]
at reactor.core.publisher.Mono.subscribe(Mono.java:4208) [reactor-core-3.3.5.BUILD-20200415.105622-21.jar:3.3.5.BUILD-SNAPSHOT]
at reactor.core.publisher.MonoIgnoreThen$ThenIgnoreMain.drain(MonoIgnoreThen.java:172) [reactor-core-3.3.5.BUILD-20200415.105622-21.jar:3.3.5.BUILD-SNAPSHOT]
at reactor.core.publisher.MonoIgnoreThen.subscribe(MonoIgnoreThen.java:56) [reactor-core-3.3.5.BUILD-20200415.105622-21.jar:3.3.5.BUILD-SNAPSHOT]
at reactor.core.publisher.InternalMonoOperator.subscribe(InternalMonoOperator.java:64) ~[reactor-core-3.3.5.BUILD-20200415.105622-21.jar:3.3.5.BUILD-SNAPSHOT]
at reactor.core.publisher.MonoDefer.subscribe(MonoDefer.java:52) [reactor-core-3.3.5.BUILD-20200415.105622-21.jar:3.3.5.BUILD-SNAPSHOT]
at reactor.core.publisher.MonoFlatMap$FlatMapMain.onNext(MonoFlatMap.java:150) ~[reactor-core-3.3.5.BUILD-20200415.105622-21.jar:3.3.5.BUILD-SNAPSHOT]
at reactor.core.publisher.FluxSwitchIfEmpty$SwitchIfEmptySubscriber.onNext(FluxSwitchIfEmpty.java:67) ~[reactor-core-3.3.5.BUILD-20200415.105622-21.jar:3.3.5.BUILD-SNAPSHOT]
at reactor.core.publisher.Operators$ScalarSubscription.request(Operators.java:2317) ~[reactor-core-3.3.5.BUILD-20200415.105622-21.jar:3.3.5.BUILD-SNAPSHOT]
at reactor.core.publisher.Operators$MultiSubscriptionSubscriber.set(Operators.java:2125) ~[reactor-core-3.3.5.BUILD-20200415.105622-21.jar:3.3.5.BUILD-SNAPSHOT]
at reactor.core.publisher.Operators$MultiSubscriptionSubscriber.onSubscribe(Operators.java:1999) ~[reactor-core-3.3.5.BUILD-20200415.105622-21.jar:3.3.5.BUILD-SNAPSHOT]
at reactor.core.publisher.MonoJust.subscribe(MonoJust.java:54) ~[reactor-core-3.3.5.BUILD-20200415.105622-21.jar:3.3.5.BUILD-SNAPSHOT]
at reactor.core.publisher.Mono.subscribe(Mono.java:4208) [reactor-core-3.3.5.BUILD-20200415.105622-21.jar:3.3.5.BUILD-SNAPSHOT]
at reactor.core.publisher.FluxSwitchIfEmpty$SwitchIfEmptySubscriber.onComplete(FluxSwitchIfEmpty.java:75) ~[reactor-core-3.3.5.BUILD-20200415.105622-21.jar:3.3.5.BUILD-SNAPSHOT]
at reactor.core.publisher.FluxMapFuseable$MapFuseableSubscriber.onComplete(FluxMapFuseable.java:144) ~[reactor-core-3.3.5.BUILD-20200415.105622-21.jar:3.3.5.BUILD-SNAPSHOT]
at reactor.core.publisher.FluxContextStart$ContextStartSubscriber.onComplete(FluxContextStart.java:115) ~[reactor-core-3.3.5.BUILD-20200415.105622-21.jar:3.3.5.BUILD-SNAPSHOT]
at reactor.core.publisher.FluxMapFuseable$MapFuseableConditionalSubscriber.onComplete(FluxMapFuseable.java:336) ~[reactor-core-3.3.5.BUILD-20200415.105622-21.jar:3.3.5.BUILD-SNAPSHOT]
at reactor.core.publisher.FluxFilterFuseable$FilterFuseableConditionalSubscriber.onComplete(FluxFilterFuseable.java:384) ~[reactor-core-3.3.5.BUILD-20200415.105622-21.jar:3.3.5.BUILD-SNAPSHOT]
at reactor.core.publisher.Operators$MonoSubscriber.complete(Operators.java:1756) ~[reactor-core-3.3.5.BUILD-20200415.105622-21.jar:3.3.5.BUILD-SNAPSHOT]
at reactor.core.publisher.MonoCollect$CollectSubscriber.onComplete(MonoCollect.java:152) ~[reactor-core-3.3.5.BUILD-20200415.105622-21.jar:3.3.5.BUILD-SNAPSHOT]
at reactor.core.publisher.FluxMap$MapSubscriber.onComplete(FluxMap.java:136) ~[reactor-core-3.3.5.BUILD-20200415.105622-21.jar:3.3.5.BUILD-SNAPSHOT]
at reactor.core.publisher.FluxPeek$PeekSubscriber.onComplete(FluxPeek.java:252) ~[reactor-core-3.3.5.BUILD-20200415.105622-21.jar:3.3.5.BUILD-SNAPSHOT]
at reactor.core.publisher.FluxMap$MapSubscriber.onComplete(FluxMap.java:136) ~[reactor-core-3.3.5.BUILD-20200415.105622-21.jar:3.3.5.BUILD-SNAPSHOT]
at reactor.netty.channel.FluxReceive.onInboundComplete(FluxReceive.java:366) [reactor-netty-0.9.7.BUILD-20200417.125022-25.jar:0.9.7.BUILD-SNAPSHOT]
at reactor.netty.channel.ChannelOperations.onInboundComplete(ChannelOperations.java:367) ~[reactor-netty-0.9.7.BUILD-20200417.125022-25.jar:0.9.7.BUILD-SNAPSHOT]
at reactor.netty.http.server.HttpServerOperations.onInboundNext(HttpServerOperations.java:489) ~[reactor-netty-0.9.7.BUILD-20200417.125022-25.jar:0.9.7.BUILD-SNAPSHOT]
at reactor.netty.channel.ChannelOperationsHandler.channelRead(ChannelOperationsHandler.java:96) ~[reactor-netty-0.9.7.BUILD-20200417.125022-25.jar:0.9.7.BUILD-SNAPSHOT]
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:379) ~[netty-transport-4.1.48.Final.jar:4.1.48.Final]
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:365) ~[netty-transport-4.1.48.Final.jar:4.1.48.Final]
at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:357) ~[netty-transport-4.1.48.Final.jar:4.1.48.Final]
at reactor.netty.http.server.HttpTrafficHandler.channelRead(HttpTrafficHandler.java:214) ~[reactor-netty-0.9.7.BUILD-20200417.125022-25.jar:0.9.7.BUILD-SNAPSHOT]
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:379) ~[netty-transport-4.1.48.Final.jar:4.1.48.Final]
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:365) ~[netty-transport-4.1.48.Final.jar:4.1.48.Final]
at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:357) ~[netty-transport-4.1.48.Final.jar:4.1.48.Final]
at io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext.fireChannelRead(CombinedChannelDuplexHandler.java:436) ~[netty-transport-4.1.48.Final.jar:4.1.48.Final]
at io.netty.handler.codec.ByteToMessageDecoder.fireChannelRead(ByteToMessageDecoder.java:321) ~[netty-codec-4.1.48.Final.jar:4.1.48.Final]
at io.netty.handler.codec.ByteToMessageDecoder.channelRead(ByteToMessageDecoder.java:295) ~[netty-codec-4.1.48.Final.jar:4.1.48.Final]
at io.netty.channel.CombinedChannelDuplexHandler.channelRead(CombinedChannelDuplexHandler.java:251) ~[netty-transport-4.1.48.Final.jar:4.1.48.Final]
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:379) ~[netty-transport-4.1.48.Final.jar:4.1.48.Final]
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:365) ~[netty-transport-4.1.48.Final.jar:4.1.48.Final]
at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:357) ~[netty-transport-4.1.48.Final.jar:4.1.48.Final]
at io.netty.channel.DefaultChannelPipeline$HeadContext.channelRead(DefaultChannelPipeline.java:1410) ~[netty-transport-4.1.48.Final.jar:4.1.48.Final]
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:379) ~[netty-transport-4.1.48.Final.jar:4.1.48.Final]
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:365) ~[netty-transport-4.1.48.Final.jar:4.1.48.Final]
at io.netty.channel.DefaultChannelPipeline.fireChannelRead(DefaultChannelPipeline.java:919) ~[netty-transport-4.1.48.Final.jar:4.1.48.Final]
at io.netty.channel.epoll.AbstractEpollStreamChannel$EpollStreamUnsafe.epollInReady(AbstractEpollStreamChannel.java:792) ~[netty-transport-native-epoll-4.1.48.Final-linux-x86_64.jar:4.1.48.Final]
at io.netty.channel.epoll.EpollEventLoop.processReady(EpollEventLoop.java:475) ~[netty-transport-native-epoll-4.1.48.Final-linux-x86_64.jar:4.1.48.Final]
at io.netty.channel.epoll.EpollEventLoop.run(EpollEventLoop.java:378) ~[netty-transport-native-epoll-4.1.48.Final-linux-x86_64.jar:4.1.48.Final]
at io.netty.util.concurrent.SingleThreadEventExecutor$4.run(SingleThreadEventExecutor.java:989) ~[netty-common-4.1.48.Final.jar:4.1.48.Final]
at io.netty.util.internal.ThreadExecutorMap$2.run(ThreadExecutorMap.java:74) ~[netty-common-4.1.48.Final.jar:4.1.48.Final]
at io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30) ~[netty-common-4.1.48.Final.jar:4.1.48.Final]
at java.lang.Thread.run(Thread.java:748) ~[na:1.8.0_191]
2020-04-17 11:49:39.055 TRACE 548 --- [or-http-epoll-6] o.s.c.g.f.f.RetryGatewayFilterFactory : setting new iteration in attr 0
2020-04-17 11:49:39.055 TRACE 548 --- [or-http-epoll-6] o.s.c.g.f.f.RetryGatewayFilterFactory : exceedsMaxIterations false, iteration 0, configured retries 2
2020-04-17 11:49:39.055 TRACE 548 --- [or-http-epoll-6] o.s.c.g.f.f.RetryGatewayFilterFactory : exception or its cause is not retryable java.lang.IllegalStateException, configured exceptions [class java.io.IOException, class org.springframework.cloud.gateway.support.TimeoutException]
2020-04-17 11:49:39.056 DEBUG 548 --- [or-http-epoll-6] a.w.r.e.AbstractErrorWebExceptionHandler : [1430952e-17] Resolved [IllegalStateException: Only one connection receive subscriber allowed.] for HTTP POST /sleep
2020-04-17 11:49:39.058 ERROR 548 --- [or-http-epoll-6] a.w.r.e.AbstractErrorWebExceptionHandler : [1430952e-17] 500 Server Error for HTTP POST "/sleep?key=notRetriesSleepyRequestPost&millis=3000"
java.lang.IllegalStateException: Only one connection receive subscriber allowed.
at reactor.netty.channel.FluxReceive.startReceiver(FluxReceive.java:304) ~[reactor-netty-0.9.7.BUILD-20200417.125022-25.jar:0.9.7.BUILD-SNAPSHOT]
Suppressed: reactor.core.publisher.FluxOnAssembly$OnAssemblyException:
Error has been observed at the following site(s):
|_ checkpoint ⇢ org.springframework.cloud.gateway.filter.WeightCalculatorWebFilter [DefaultWebFilterChain]
|_ checkpoint ⇢ org.springframework.security.web.server.authorization.AuthorizationWebFilter [DefaultWebFilterChain]
|_ checkpoint ⇢ org.springframework.security.web.server.authorization.ExceptionTranslationWebFilter [DefaultWebFilterChain]
|_ checkpoint ⇢ org.springframework.security.web.server.authentication.logout.LogoutWebFilter [DefaultWebFilterChain]
|_ checkpoint ⇢ org.springframework.security.web.server.savedrequest.ServerRequestCacheWebFilter [DefaultWebFilterChain]
|_ checkpoint ⇢ org.springframework.security.web.server.context.SecurityContextServerWebExchangeWebFilter [DefaultWebFilterChain]
|_ checkpoint ⇢ org.springframework.security.web.server.context.ReactorContextWebFilter [DefaultWebFilterChain]
|_ checkpoint ⇢ org.springframework.security.web.server.header.HttpHeaderWriterWebFilter [DefaultWebFilterChain]
|_ checkpoint ⇢ org.springframework.security.config.web.server.ServerHttpSecurity$ServerWebExchangeReactorContextWebFilter [DefaultWebFilterChain]
|_ checkpoint ⇢ org.springframework.security.web.server.WebFilterChainProxy [DefaultWebFilterChain]
|_ checkpoint ⇢ org.springframework.boot.actuate.metrics.web.reactive.server.MetricsWebFilter [DefaultWebFilterChain]
|_ checkpoint ⇢ HTTP POST "/sleep?key=notRetriesSleepyRequestPost&millis=3000" [ExceptionHandlingWebHandler]
Stack trace:
at reactor.netty.channel.FluxReceive.startReceiver(FluxReceive.java:304) ~[reactor-netty-0.9.7.BUILD-20200417.125022-25.jar:0.9.7.BUILD-SNAPSHOT]
at reactor.netty.channel.FluxReceive.subscribe(FluxReceive.java:136) ~[reactor-netty-0.9.7.BUILD-20200417.125022-25.jar:0.9.7.BUILD-SNAPSHOT]
at reactor.core.publisher.InternalFluxOperator.subscribe(InternalFluxOperator.java:62) ~[reactor-core-3.3.5.BUILD-20200415.105622-21.jar:3.3.5.BUILD-SNAPSHOT]
at reactor.netty.ByteBufFlux.subscribe(ByteBufFlux.java:327) ~[reactor-netty-0.9.7.BUILD-20200417.125022-25.jar:0.9.7.BUILD-SNAPSHOT]
at reactor.core.publisher.InternalFluxOperator.subscribe(InternalFluxOperator.java:62) ~[reactor-core-3.3.5.BUILD-20200415.105622-21.jar:3.3.5.BUILD-SNAPSHOT]
at reactor.netty.ByteBufFlux.subscribe(ByteBufFlux.java:327) ~[reactor-netty-0.9.7.BUILD-20200417.125022-25.jar:0.9.7.BUILD-SNAPSHOT]
at reactor.core.publisher.Flux.subscribe(Flux.java:8258) ~[reactor-core-3.3.5.BUILD-20200415.105622-21.jar:3.3.5.BUILD-SNAPSHOT]
at reactor.netty.channel.MonoSendMany.subscribe(MonoSendMany.java:82) ~[reactor-netty-0.9.7.BUILD-20200417.125022-25.jar:0.9.7.BUILD-SNAPSHOT]
at reactor.core.publisher.MonoIgnoreThen$ThenIgnoreMain.drain(MonoIgnoreThen.java:153) ~[reactor-core-3.3.5.BUILD-20200415.105622-21.jar:3.3.5.BUILD-SNAPSHOT]
at reactor.core.publisher.MonoIgnoreThen.subscribe(MonoIgnoreThen.java:56) ~[reactor-core-3.3.5.BUILD-20200415.105622-21.jar:3.3.5.BUILD-SNAPSHOT]
at reactor.core.publisher.Mono.subscribe(Mono.java:4208) ~[reactor-core-3.3.5.BUILD-20200415.105622-21.jar:3.3.5.BUILD-SNAPSHOT]
at reactor.netty.NettyOutbound.subscribe(NettyOutbound.java:329) ~[reactor-netty-0.9.7.BUILD-20200417.125022-25.jar:0.9.7.BUILD-SNAPSHOT]
at reactor.core.publisher.MonoSource.subscribe(MonoSource.java:65) ~[reactor-core-3.3.5.BUILD-20200415.105622-21.jar:3.3.5.BUILD-SNAPSHOT]
at reactor.core.publisher.MonoDefer.subscribe(MonoDefer.java:52) ~[reactor-core-3.3.5.BUILD-20200415.105622-21.jar:3.3.5.BUILD-SNAPSHOT]
at reactor.netty.http.client.HttpClientConnect$HttpIOHandlerObserver.onStateChange(HttpClientConnect.java:438) ~[reactor-netty-0.9.7.BUILD-20200417.125022-25.jar:0.9.7.BUILD-SNAPSHOT]
at reactor.netty.ReactorNetty$CompositeConnectionObserver.onStateChange(ReactorNetty.java:514) ~[reactor-netty-0.9.7.BUILD-20200417.125022-25.jar:0.9.7.BUILD-SNAPSHOT]
at reactor.netty.resources.PooledConnectionProvider$DisposableAcquire.run(PooledConnectionProvider.java:603) ~[reactor-netty-0.9.7.BUILD-20200417.125022-25.jar:0.9.7.BUILD-SNAPSHOT]
at reactor.netty.resources.PooledConnectionProvider$DisposableAcquire.onNext(PooledConnectionProvider.java:485) ~[reactor-netty-0.9.7.BUILD-20200417.125022-25.jar:0.9.7.BUILD-SNAPSHOT]
at reactor.netty.resources.PooledConnectionProvider$DisposableAcquire.onNext(PooledConnectionProvider.java:436) ~[reactor-netty-0.9.7.BUILD-20200417.125022-25.jar:0.9.7.BUILD-SNAPSHOT]
at reactor.netty.internal.shaded.reactor.pool.AbstractPool$Borrower.deliver(AbstractPool.java:388) ~[reactor-netty-0.9.7.BUILD-20200417.125022-25.jar:0.9.7.BUILD-SNAPSHOT]
at reactor.netty.internal.shaded.reactor.pool.SimplePool.lambda$drainLoop$13(SimplePool.java:244) ~[reactor-netty-0.9.7.BUILD-20200417.125022-25.jar:0.9.7.BUILD-SNAPSHOT]
at reactor.core.scheduler.ImmediateScheduler.schedule(ImmediateScheduler.java:47) ~[reactor-core-3.3.5.BUILD-20200415.105622-21.jar:3.3.5.BUILD-SNAPSHOT]
at reactor.netty.internal.shaded.reactor.pool.SimplePool.drainLoop(SimplePool.java:244) ~[reactor-netty-0.9.7.BUILD-20200417.125022-25.jar:0.9.7.BUILD-SNAPSHOT]
at reactor.netty.internal.shaded.reactor.pool.SimplePool.drain(SimplePool.java:172) ~[reactor-netty-0.9.7.BUILD-20200417.125022-25.jar:0.9.7.BUILD-SNAPSHOT]
at reactor.netty.internal.shaded.reactor.pool.SimplePool.doAcquire(SimplePool.java:132) ~[reactor-netty-0.9.7.BUILD-20200417.125022-25.jar:0.9.7.BUILD-SNAPSHOT]
at reactor.netty.internal.shaded.reactor.pool.AbstractPool$Borrower.request(AbstractPool.java:351) ~[reactor-netty-0.9.7.BUILD-20200417.125022-25.jar:0.9.7.BUILD-SNAPSHOT]
at reactor.netty.resources.PooledConnectionProvider$DisposableAcquire.onSubscribe(PooledConnectionProvider.java:511) ~[reactor-netty-0.9.7.BUILD-20200417.125022-25.jar:0.9.7.BUILD-SNAPSHOT]
at reactor.netty.internal.shaded.reactor.pool.SimplePool$QueueBorrowerMono.subscribe(SimplePool.java:323) ~[reactor-netty-0.9.7.BUILD-20200417.125022-25.jar:0.9.7.BUILD-SNAPSHOT]
at reactor.netty.resources.PooledConnectionProvider.disposableAcquire(PooledConnectionProvider.java:197) ~[reactor-netty-0.9.7.BUILD-20200417.125022-25.jar:0.9.7.BUILD-SNAPSHOT]
at reactor.netty.resources.PooledConnectionProvider.lambda$acquire$3(PooledConnectionProvider.java:161) ~[reactor-netty-0.9.7.BUILD-20200417.125022-25.jar:0.9.7.BUILD-SNAPSHOT]
at reactor.core.publisher.MonoCreate.subscribe(MonoCreate.java:57) ~[reactor-core-3.3.5.BUILD-20200415.105622-21.jar:3.3.5.BUILD-SNAPSHOT]
at reactor.netty.http.client.HttpClientConnect$MonoHttpConnect.lambda$subscribe$0(HttpClientConnect.java:323) ~[reactor-netty-0.9.7.BUILD-20200417.125022-25.jar:0.9.7.BUILD-SNAPSHOT]
at reactor.core.publisher.MonoCreate.subscribe(MonoCreate.java:57) ~[reactor-core-3.3.5.BUILD-20200415.105622-21.jar:3.3.5.BUILD-SNAPSHOT]
at reactor.core.publisher.FluxRetryPredicate$RetryPredicateSubscriber.resubscribe(FluxRetryPredicate.java:124) ~[reactor-core-3.3.5.BUILD-20200415.105622-21.jar:3.3.5.BUILD-SNAPSHOT]
at reactor.core.publisher.MonoRetryPredicate.subscribeOrReturn(MonoRetryPredicate.java:51) ~[reactor-core-3.3.5.BUILD-20200415.105622-21.jar:3.3.5.BUILD-SNAPSHOT]
at reactor.core.publisher.InternalMonoOperator.subscribe(InternalMonoOperator.java:57) ~[reactor-core-3.3.5.BUILD-20200415.105622-21.jar:3.3.5.BUILD-SNAPSHOT]
at reactor.netty.http.client.HttpClientConnect$MonoHttpConnect.subscribe(HttpClientConnect.java:326) ~[reactor-netty-0.9.7.BUILD-20200417.125022-25.jar:0.9.7.BUILD-SNAPSHOT]
at reactor.core.publisher.Flux.subscribe(Flux.java:8258) ~[reactor-core-3.3.5.BUILD-20200415.105622-21.jar:3.3.5.BUILD-SNAPSHOT]
at reactor.core.publisher.MonoIgnoreThen$ThenIgnoreMain.drain(MonoIgnoreThen.java:172) ~[reactor-core-3.3.5.BUILD-20200415.105622-21.jar:3.3.5.BUILD-SNAPSHOT]
at reactor.core.publisher.MonoIgnoreThen.subscribe(MonoIgnoreThen.java:56) ~[reactor-core-3.3.5.BUILD-20200415.105622-21.jar:3.3.5.BUILD-SNAPSHOT]
at reactor.core.publisher.MonoDefer.subscribe(MonoDefer.java:52) ~[reactor-core-3.3.5.BUILD-20200415.105622-21.jar:3.3.5.BUILD-SNAPSHOT]
at reactor.core.publisher.MonoDefer.subscribe(MonoDefer.java:52) ~[reactor-core-3.3.5.BUILD-20200415.105622-21.jar:3.3.5.BUILD-SNAPSHOT]
at reactor.core.publisher.MonoDefer.subscribe(MonoDefer.java:52) ~[reactor-core-3.3.5.BUILD-20200415.105622-21.jar:3.3.5.BUILD-SNAPSHOT]
at reactor.core.publisher.MonoDefer.subscribe(MonoDefer.java:52) ~[reactor-core-3.3.5.BUILD-20200415.105622-21.jar:3.3.5.BUILD-SNAPSHOT]
at reactor.core.publisher.MonoIgnoreThen$ThenIgnoreMain.drain(MonoIgnoreThen.java:153) ~[reactor-core-3.3.5.BUILD-20200415.105622-21.jar:3.3.5.BUILD-SNAPSHOT]
at reactor.core.publisher.MonoIgnoreThen.subscribe(MonoIgnoreThen.java:56) ~[reactor-core-3.3.5.BUILD-20200415.105622-21.jar:3.3.5.BUILD-SNAPSHOT]
at reactor.core.publisher.MonoDefer.subscribe(MonoDefer.java:52) ~[reactor-core-3.3.5.BUILD-20200415.105622-21.jar:3.3.5.BUILD-SNAPSHOT]
at reactor.core.publisher.MonoDefer.subscribe(MonoDefer.java:52) ~[reactor-core-3.3.5.BUILD-20200415.105622-21.jar:3.3.5.BUILD-SNAPSHOT]
at reactor.core.publisher.InternalMonoOperator.subscribe(InternalMonoOperator.java:64) ~[reactor-core-3.3.5.BUILD-20200415.105622-21.jar:3.3.5.BUILD-SNAPSHOT]
at reactor.core.publisher.FluxRetryWhen.subscribe(FluxRetryWhen.java:79) ~[reactor-core-3.3.5.BUILD-20200415.105622-21.jar:3.3.5.BUILD-SNAPSHOT]
at reactor.core.publisher.MonoRetryWhen.subscribeOrReturn(MonoRetryWhen.java:46) ~[reactor-core-3.3.5.BUILD-20200415.105622-21.jar:3.3.5.BUILD-SNAPSHOT]
at reactor.core.publisher.MonoFromFluxOperator.subscribe(MonoFromFluxOperator.java:74) ~[reactor-core-3.3.5.BUILD-20200415.105622-21.jar:3.3.5.BUILD-SNAPSHOT]
at reactor.core.publisher.MonoDefer.subscribe(MonoDefer.java:52) ~[reactor-core-3.3.5.BUILD-20200415.105622-21.jar:3.3.5.BUILD-SNAPSHOT]
at reactor.core.publisher.MonoDefer.subscribe(MonoDefer.java:52) ~[reactor-core-3.3.5.BUILD-20200415.105622-21.jar:3.3.5.BUILD-SNAPSHOT]
at reactor.core.publisher.InternalMonoOperator.subscribe(InternalMonoOperator.java:64) ~[reactor-core-3.3.5.BUILD-20200415.105622-21.jar:3.3.5.BUILD-SNAPSHOT]
at reactor.core.publisher.MonoDefer.subscribe(MonoDefer.java:52) ~[reactor-core-3.3.5.BUILD-20200415.105622-21.jar:3.3.5.BUILD-SNAPSHOT]
at reactor.core.publisher.MonoDefer.subscribe(MonoDefer.java:52) ~[reactor-core-3.3.5.BUILD-20200415.105622-21.jar:3.3.5.BUILD-SNAPSHOT]
at reactor.core.publisher.Mono.subscribe(Mono.java:4208) ~[reactor-core-3.3.5.BUILD-20200415.105622-21.jar:3.3.5.BUILD-SNAPSHOT]
at reactor.core.publisher.MonoIgnoreThen$ThenIgnoreMain.drain(MonoIgnoreThen.java:172) ~[reactor-core-3.3.5.BUILD-20200415.105622-21.jar:3.3.5.BUILD-SNAPSHOT]
at reactor.core.publisher.MonoIgnoreThen.subscribe(MonoIgnoreThen.java:56) ~[reactor-core-3.3.5.BUILD-20200415.105622-21.jar:3.3.5.BUILD-SNAPSHOT]
at reactor.core.publisher.InternalMonoOperator.subscribe(InternalMonoOperator.java:64) ~[reactor-core-3.3.5.BUILD-20200415.105622-21.jar:3.3.5.BUILD-SNAPSHOT]
at reactor.core.publisher.MonoDefer.subscribe(MonoDefer.java:52) ~[reactor-core-3.3.5.BUILD-20200415.105622-21.jar:3.3.5.BUILD-SNAPSHOT]
at reactor.core.publisher.MonoFlatMap$FlatMapMain.onNext(MonoFlatMap.java:150) ~[reactor-core-3.3.5.BUILD-20200415.105622-21.jar:3.3.5.BUILD-SNAPSHOT]
at reactor.core.publisher.FluxSwitchIfEmpty$SwitchIfEmptySubscriber.onNext(FluxSwitchIfEmpty.java:67) ~[reactor-core-3.3.5.BUILD-20200415.105622-21.jar:3.3.5.BUILD-SNAPSHOT]
at reactor.core.publisher.Operators$ScalarSubscription.request(Operators.java:2317) ~[reactor-core-3.3.5.BUILD-20200415.105622-21.jar:3.3.5.BUILD-SNAPSHOT]
at reactor.core.publisher.Operators$MultiSubscriptionSubscriber.set(Operators.java:2125) ~[reactor-core-3.3.5.BUILD-20200415.105622-21.jar:3.3.5.BUILD-SNAPSHOT]
at reactor.core.publisher.Operators$MultiSubscriptionSubscriber.onSubscribe(Operators.java:1999) ~[reactor-core-3.3.5.BUILD-20200415.105622-21.jar:3.3.5.BUILD-SNAPSHOT]
at reactor.core.publisher.MonoJust.subscribe(MonoJust.java:54) ~[reactor-core-3.3.5.BUILD-20200415.105622-21.jar:3.3.5.BUILD-SNAPSHOT]
at reactor.core.publisher.Mono.subscribe(Mono.java:4208) ~[reactor-core-3.3.5.BUILD-20200415.105622-21.jar:3.3.5.BUILD-SNAPSHOT]
at reactor.core.publisher.FluxSwitchIfEmpty$SwitchIfEmptySubscriber.onComplete(FluxSwitchIfEmpty.java:75) ~[reactor-core-3.3.5.BUILD-20200415.105622-21.jar:3.3.5.BUILD-SNAPSHOT]
at reactor.core.publisher.FluxMapFuseable$MapFuseableSubscriber.onComplete(FluxMapFuseable.java:144) ~[reactor-core-3.3.5.BUILD-20200415.105622-21.jar:3.3.5.BUILD-SNAPSHOT]
at reactor.core.publisher.FluxContextStart$ContextStartSubscriber.onComplete(FluxContextStart.java:115) ~[reactor-core-3.3.5.BUILD-20200415.105622-21.jar:3.3.5.BUILD-SNAPSHOT]
at reactor.core.publisher.FluxMapFuseable$MapFuseableConditionalSubscriber.onComplete(FluxMapFuseable.java:336) ~[reactor-core-3.3.5.BUILD-20200415.105622-21.jar:3.3.5.BUILD-SNAPSHOT]
at reactor.core.publisher.FluxFilterFuseable$FilterFuseableConditionalSubscriber.onComplete(FluxFilterFuseable.java:384) ~[reactor-core-3.3.5.BUILD-20200415.105622-21.jar:3.3.5.BUILD-SNAPSHOT]
at reactor.core.publisher.Operators$MonoSubscriber.complete(Operators.java:1756) ~[reactor-core-3.3.5.BUILD-20200415.105622-21.jar:3.3.5.BUILD-SNAPSHOT]
at reactor.core.publisher.MonoCollect$CollectSubscriber.onComplete(MonoCollect.java:152) ~[reactor-core-3.3.5.BUILD-20200415.105622-21.jar:3.3.5.BUILD-SNAPSHOT]
at reactor.core.publisher.FluxMap$MapSubscriber.onComplete(FluxMap.java:136) ~[reactor-core-3.3.5.BUILD-20200415.105622-21.jar:3.3.5.BUILD-SNAPSHOT]
at reactor.core.publisher.FluxPeek$PeekSubscriber.onComplete(FluxPeek.java:252) ~[reactor-core-3.3.5.BUILD-20200415.105622-21.jar:3.3.5.BUILD-SNAPSHOT]
at reactor.core.publisher.FluxMap$MapSubscriber.onComplete(FluxMap.java:136) ~[reactor-core-3.3.5.BUILD-20200415.105622-21.jar:3.3.5.BUILD-SNAPSHOT]
at reactor.netty.channel.FluxReceive.onInboundComplete(FluxReceive.java:366) ~[reactor-netty-0.9.7.BUILD-20200417.125022-25.jar:0.9.7.BUILD-SNAPSHOT]
at reactor.netty.channel.ChannelOperations.onInboundComplete(ChannelOperations.java:367) ~[reactor-netty-0.9.7.BUILD-20200417.125022-25.jar:0.9.7.BUILD-SNAPSHOT]
at reactor.netty.http.server.HttpServerOperations.onInboundNext(HttpServerOperations.java:489) ~[reactor-netty-0.9.7.BUILD-20200417.125022-25.jar:0.9.7.BUILD-SNAPSHOT]
at reactor.netty.channel.ChannelOperationsHandler.channelRead(ChannelOperationsHandler.java:96) ~[reactor-netty-0.9.7.BUILD-20200417.125022-25.jar:0.9.7.BUILD-SNAPSHOT]
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:379) ~[netty-transport-4.1.48.Final.jar:4.1.48.Final]
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:365) ~[netty-transport-4.1.48.Final.jar:4.1.48.Final]
at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:357) ~[netty-transport-4.1.48.Final.jar:4.1.48.Final]
at reactor.netty.http.server.HttpTrafficHandler.channelRead(HttpTrafficHandler.java:214) ~[reactor-netty-0.9.7.BUILD-20200417.125022-25.jar:0.9.7.BUILD-SNAPSHOT]
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:379) ~[netty-transport-4.1.48.Final.jar:4.1.48.Final]
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:365) ~[netty-transport-4.1.48.Final.jar:4.1.48.Final]
at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:357) ~[netty-transport-4.1.48.Final.jar:4.1.48.Final]
at io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext.fireChannelRead(CombinedChannelDuplexHandler.java:436) ~[netty-transport-4.1.48.Final.jar:4.1.48.Final]
at io.netty.handler.codec.ByteToMessageDecoder.fireChannelRead(ByteToMessageDecoder.java:321) ~[netty-codec-4.1.48.Final.jar:4.1.48.Final]
at io.netty.handler.codec.ByteToMessageDecoder.channelRead(ByteToMessageDecoder.java:295) ~[netty-codec-4.1.48.Final.jar:4.1.48.Final]
at io.netty.channel.CombinedChannelDuplexHandler.channelRead(CombinedChannelDuplexHandler.java:251) ~[netty-transport-4.1.48.Final.jar:4.1.48.Final]
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:379) ~[netty-transport-4.1.48.Final.jar:4.1.48.Final]
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:365) ~[netty-transport-4.1.48.Final.jar:4.1.48.Final]
at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:357) ~[netty-transport-4.1.48.Final.jar:4.1.48.Final]
at io.netty.channel.DefaultChannelPipeline$HeadContext.channelRead(DefaultChannelPipeline.java:1410) ~[netty-transport-4.1.48.Final.jar:4.1.48.Final]
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:379) ~[netty-transport-4.1.48.Final.jar:4.1.48.Final]
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:365) ~[netty-transport-4.1.48.Final.jar:4.1.48.Final]
at io.netty.channel.DefaultChannelPipeline.fireChannelRead(DefaultChannelPipeline.java:919) ~[netty-transport-4.1.48.Final.jar:4.1.48.Final]
at io.netty.channel.epoll.AbstractEpollStreamChannel$EpollStreamUnsafe.epollInReady(AbstractEpollStreamChannel.java:792) ~[netty-transport-native-epoll-4.1.48.Final-linux-x86_64.jar:4.1.48.Final]
at io.netty.channel.epoll.EpollEventLoop.processReady(EpollEventLoop.java:475) ~[netty-transport-native-epoll-4.1.48.Final-linux-x86_64.jar:4.1.48.Final]
at io.netty.channel.epoll.EpollEventLoop.run(EpollEventLoop.java:378) ~[netty-transport-native-epoll-4.1.48.Final-linux-x86_64.jar:4.1.48.Final]
at io.netty.util.concurrent.SingleThreadEventExecutor$4.run(SingleThreadEventExecutor.java:989) ~[netty-common-4.1.48.Final.jar:4.1.48.Final]
at io.netty.util.internal.ThreadExecutorMap$2.run(ThreadExecutorMap.java:74) ~[netty-common-4.1.48.Final.jar:4.1.48.Final]
at io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30) ~[netty-common-4.1.48.Final.jar:4.1.48.Final]
at java.lang.Thread.run(Thread.java:748) ~[na:1.8.0_191]
2020-04-17 11:49:39.061 TRACE 548 --- [or-http-epoll-6] o.s.c.g.filter.GatewayMetricsFilter : gateway.requests tags: [tag(httpMethod=POST),tag(httpStatusCode=500),tag(outcome=SERVER_ERROR),tag(routeId=retry_only_get),tag(routeUri=lb://testservice),tag(status=INTERNAL_SERVER_ERROR)]
2020-04-17 11:49:39.061 DEBUG 548 --- [or-http-epoll-6] r.n.http.server.HttpServerOperations : [id: 0x1430952e, L:/127.0.0.1:44169 - R:/127.0.0.1:56890] Decreasing pending responses, now 0
2020-04-17 11:49:39.061 DEBUG 548 --- [or-http-epoll-6] r.n.http.server.HttpServerOperations : [id: 0x1430952e, L:/127.0.0.1:44169 - R:/127.0.0.1:56890] Last HTTP packet was sent, terminating the channel
2020-04-17 11:49:39.062 DEBUG 548 --- [or-http-epoll-6] r.n.http.server.HttpServerOperations : [id: 0x1430952e, L:/127.0.0.1:44169 - R:/127.0.0.1:56890] Last HTTP response frame
2020-04-17 11:49:39.062 DEBUG 548 --- [or-http-epoll-5] r.n.http.client.HttpClientOperations : [id: 0xc24e711b, L:/127.0.0.1:56890 - R:localhost/127.0.0.1:44169] Received response (auto-read:false) : [Vary=Origin, Vary=Access-Control-Request-Method, Vary=Access-Control-Request-Headers, X-Gateway-Handler-Mapper-Class=RoutePredicateHandlerMapping, X-Gateway-RouteDefinition-Id=retry_only_get, Content-Type=application/json, Content-Length=192, Cache-Control=no-cache, no-store, max-age=0, must-revalidate, Pragma=no-cache, Expires=0, X-Content-Type-Options=nosniff, X-Frame-Options=DENY, X-XSS-Protection=1 ; mode=block, Referrer-Policy=no-referrer]
2020-04-17 11:49:39.062 DEBUG 548 --- [or-http-epoll-5] r.n.resources.PooledConnectionProvider : [id: 0xc24e711b, L:/127.0.0.1:56890 - R:localhost/127.0.0.1:44169] onStateChange(POST{uri=/sleep?key=notRetriesSleepyRequestPost&millis=3000, connection=PooledConnection{channel=[id: 0xc24e711b, L:/127.0.0.1:56890 - R:localhost/127.0.0.1:44169]}}, [response_received])
2020-04-17 11:49:39.062 DEBUG 548 --- [or-http-epoll-5] o.s.w.r.f.client.ExchangeFunctions : [5ddb302] Response 500 INTERNAL_SERVER_ERROR
2020-04-17 11:49:39.062 DEBUG 548 --- [or-http-epoll-5] r.n.http.client.HttpClientOperations : [id: 0xc24e711b, L:/127.0.0.1:56890 - R:localhost/127.0.0.1:44169] Received last HTTP packet
2020-04-17 11:49:39.062 DEBUG 548 --- [or-http-epoll-5] r.n.resources.PooledConnectionProvider : [id: 0xc24e711b, L:/127.0.0.1:56890 - R:localhost/127.0.0.1:44169] onStateChange(POST{uri=/sleep?key=notRetriesSleepyRequestPost&millis=3000, connection=PooledConnection{channel=[id: 0xc24e711b, L:/127.0.0.1:56890 - R:localhost/127.0.0.1:44169]}}, [response_completed])
2020-04-17 11:49:39.062 DEBUG 548 --- [or-http-epoll-5] r.n.resources.PooledConnectionProvider : [id: 0xc24e711b, L:/127.0.0.1:56890 - R:localhost/127.0.0.1:44169] onStateChange(POST{uri=/sleep?key=notRetriesSleepyRequestPost&millis=3000, connection=PooledConnection{channel=[id: 0xc24e711b, L:/127.0.0.1:56890 - R:localhost/127.0.0.1:44169]}}, [disconnecting])
2020-04-17 11:49:39.062 DEBUG 548 --- [or-http-epoll-5] r.n.resources.PooledConnectionProvider : [id: 0xc24e711b, L:/127.0.0.1:56890 - R:localhost/127.0.0.1:44169] Releasing channel
2020-04-17 11:49:39.062 DEBUG 548 --- [or-http-epoll-5] r.n.resources.PooledConnectionProvider : [id: 0xc24e711b, L:/127.0.0.1:56890 - R:localhost/127.0.0.1:44169] Channel cleaned, now 2 active connections and 1 inactive connections
2020-04-17 11:49:39.063 WARN 548 --- [or-http-epoll-6] r.netty.http.client.HttpClientConnect : [id: 0x76a6c483, L:/127.0.0.1:56888 - R:localhost/127.0.0.1:44169] The connection observed an error
java.lang.IllegalStateException: Only one connection receive subscriber allowed.
at reactor.netty.channel.FluxReceive.startReceiver(FluxReceive.java:304) ~[reactor-netty-0.9.7.BUILD-20200417.125022-25.jar:0.9.7.BUILD-SNAPSHOT]
Suppressed: reactor.core.publisher.FluxOnAssembly$OnAssemblyException:
Error has been observed at the following site(s):
|_ checkpoint ⇢ org.springframework.cloud.gateway.filter.WeightCalculatorWebFilter [DefaultWebFilterChain]
|_ checkpoint ⇢ org.springframework.security.web.server.authorization.AuthorizationWebFilter [DefaultWebFilterChain]
|_ checkpoint ⇢ org.springframework.security.web.server.authorization.ExceptionTranslationWebFilter [DefaultWebFilterChain]
|_ checkpoint ⇢ org.springframework.security.web.server.authentication.logout.LogoutWebFilter [DefaultWebFilterChain]
|_ checkpoint ⇢ org.springframework.security.web.server.savedrequest.ServerRequestCacheWebFilter [DefaultWebFilterChain]
|_ checkpoint ⇢ org.springframework.security.web.server.context.SecurityContextServerWebExchangeWebFilter [DefaultWebFilterChain]
|_ checkpoint ⇢ org.springframework.security.web.server.context.ReactorContextWebFilter [DefaultWebFilterChain]
|_ checkpoint ⇢ org.springframework.security.web.server.header.HttpHeaderWriterWebFilter [DefaultWebFilterChain]
|_ checkpoint ⇢ org.springframework.security.config.web.server.ServerHttpSecurity$ServerWebExchangeReactorContextWebFilter [DefaultWebFilterChain]
|_ checkpoint ⇢ org.springframework.security.web.server.WebFilterChainProxy [DefaultWebFilterChain]
|_ checkpoint ⇢ org.springframework.boot.actuate.metrics.web.reactive.server.MetricsWebFilter [DefaultWebFilterChain]
|_ checkpoint ⇢ HTTP POST "/sleep?key=notRetriesSleepyRequestPost&millis=3000" [ExceptionHandlingWebHandler]
Stack trace:
at reactor.netty.channel.FluxReceive.startReceiver(FluxReceive.java:304) ~[reactor-netty-0.9.7.BUILD-20200417.125022-25.jar:0.9.7.BUILD-SNAPSHOT]
at reactor.netty.channel.FluxReceive.subscribe(FluxReceive.java:136) ~[reactor-netty-0.9.7.BUILD-20200417.125022-25.jar:0.9.7.BUILD-SNAPSHOT]
at reactor.core.publisher.InternalFluxOperator.subscribe(InternalFluxOperator.java:62) [reactor-core-3.3.5.BUILD-20200415.105622-21.jar:3.3.5.BUILD-SNAPSHOT]
at reactor.netty.ByteBufFlux.subscribe(ByteBufFlux.java:327) [reactor-netty-0.9.7.BUILD-20200417.125022-25.jar:0.9.7.BUILD-SNAPSHOT]
at reactor.core.publisher.InternalFluxOperator.subscribe(InternalFluxOperator.java:62) [reactor-core-3.3.5.BUILD-20200415.105622-21.jar:3.3.5.BUILD-SNAPSHOT]
at reactor.netty.ByteBufFlux.subscribe(ByteBufFlux.java:327) [reactor-netty-0.9.7.BUILD-20200417.125022-25.jar:0.9.7.BUILD-SNAPSHOT]
at reactor.core.publisher.Flux.subscribe(Flux.java:8258) [reactor-core-3.3.5.BUILD-20200415.105622-21.jar:3.3.5.BUILD-SNAPSHOT]
at reactor.netty.channel.MonoSendMany.subscribe(MonoSendMany.java:82) [reactor-netty-0.9.7.BUILD-20200417.125022-25.jar:0.9.7.BUILD-SNAPSHOT]
at reactor.core.publisher.MonoIgnoreThen$ThenIgnoreMain.drain(MonoIgnoreThen.java:153) [reactor-core-3.3.5.BUILD-20200415.105622-21.jar:3.3.5.BUILD-SNAPSHOT]
at reactor.core.publisher.MonoIgnoreThen.subscribe(MonoIgnoreThen.java:56) [reactor-core-3.3.5.BUILD-20200415.105622-21.jar:3.3.5.BUILD-SNAPSHOT]
at reactor.core.publisher.Mono.subscribe(Mono.java:4208) [reactor-core-3.3.5.BUILD-20200415.105622-21.jar:3.3.5.BUILD-SNAPSHOT]
at reactor.netty.NettyOutbound.subscribe(NettyOutbound.java:329) [reactor-netty-0.9.7.BUILD-20200417.125022-25.jar:0.9.7.BUILD-SNAPSHOT]
at reactor.core.publisher.MonoSource.subscribe(MonoSource.java:65) [reactor-core-3.3.5.BUILD-20200415.105622-21.jar:3.3.5.BUILD-SNAPSHOT]
at reactor.core.publisher.MonoDefer.subscribe(MonoDefer.java:52) [reactor-core-3.3.5.BUILD-20200415.105622-21.jar:3.3.5.BUILD-SNAPSHOT]
at reactor.netty.http.client.HttpClientConnect$HttpIOHandlerObserver.onStateChange(HttpClientConnect.java:438) [reactor-netty-0.9.7.BUILD-20200417.125022-25.jar:0.9.7.BUILD-SNAPSHOT]
at reactor.netty.ReactorNetty$CompositeConnectionObserver.onStateChange(ReactorNetty.java:514) [reactor-netty-0.9.7.BUILD-20200417.125022-25.jar:0.9.7.BUILD-SNAPSHOT]
at reactor.netty.resources.PooledConnectionProvider$DisposableAcquire.run(PooledConnectionProvider.java:603) [reactor-netty-0.9.7.BUILD-20200417.125022-25.jar:0.9.7.BUILD-SNAPSHOT]
at reactor.netty.resources.PooledConnectionProvider$DisposableAcquire.onNext(PooledConnectionProvider.java:485) [reactor-netty-0.9.7.BUILD-20200417.125022-25.jar:0.9.7.BUILD-SNAPSHOT]
at reactor.netty.resources.PooledConnectionProvider$DisposableAcquire.onNext(PooledConnectionProvider.java:436) [reactor-netty-0.9.7.BUILD-20200417.125022-25.jar:0.9.7.BUILD-SNAPSHOT]
at reactor.netty.internal.shaded.reactor.pool.AbstractPool$Borrower.deliver(AbstractPool.java:388) [reactor-netty-0.9.7.BUILD-20200417.125022-25.jar:0.9.7.BUILD-SNAPSHOT]
at reactor.netty.internal.shaded.reactor.pool.SimplePool.lambda$drainLoop$13(SimplePool.java:244) [reactor-netty-0.9.7.BUILD-20200417.125022-25.jar:0.9.7.BUILD-SNAPSHOT]
at reactor.core.scheduler.ImmediateScheduler.schedule(ImmediateScheduler.java:47) ~[reactor-core-3.3.5.BUILD-20200415.105622-21.jar:3.3.5.BUILD-SNAPSHOT]
at reactor.netty.internal.shaded.reactor.pool.SimplePool.drainLoop(SimplePool.java:244) [reactor-netty-0.9.7.BUILD-20200417.125022-25.jar:0.9.7.BUILD-SNAPSHOT]
at reactor.netty.internal.shaded.reactor.pool.SimplePool.drain(SimplePool.java:172) [reactor-netty-0.9.7.BUILD-20200417.125022-25.jar:0.9.7.BUILD-SNAPSHOT]
at reactor.netty.internal.shaded.reactor.pool.SimplePool.doAcquire(SimplePool.java:132) [reactor-netty-0.9.7.BUILD-20200417.125022-25.jar:0.9.7.BUILD-SNAPSHOT]
at reactor.netty.internal.shaded.reactor.pool.AbstractPool$Borrower.request(AbstractPool.java:351) [reactor-netty-0.9.7.BUILD-20200417.125022-25.jar:0.9.7.BUILD-SNAPSHOT]
at reactor.netty.resources.PooledConnectionProvider$DisposableAcquire.onSubscribe(PooledConnectionProvider.java:511) [reactor-netty-0.9.7.BUILD-20200417.125022-25.jar:0.9.7.BUILD-SNAPSHOT]
at reactor.netty.internal.shaded.reactor.pool.SimplePool$QueueBorrowerMono.subscribe(SimplePool.java:323) ~[reactor-netty-0.9.7.BUILD-20200417.125022-25.jar:0.9.7.BUILD-SNAPSHOT]
at reactor.netty.resources.PooledConnectionProvider.disposableAcquire(PooledConnectionProvider.java:197) ~[reactor-netty-0.9.7.BUILD-20200417.125022-25.jar:0.9.7.BUILD-SNAPSHOT]
at reactor.netty.resources.PooledConnectionProvider.lambda$acquire$3(PooledConnectionProvider.java:161) ~[reactor-netty-0.9.7.BUILD-20200417.125022-25.jar:0.9.7.BUILD-SNAPSHOT]
at reactor.core.publisher.MonoCreate.subscribe(MonoCreate.java:57) ~[reactor-core-3.3.5.BUILD-20200415.105622-21.jar:3.3.5.BUILD-SNAPSHOT]
at reactor.netty.http.client.HttpClientConnect$MonoHttpConnect.lambda$subscribe$0(HttpClientConnect.java:323) ~[reactor-netty-0.9.7.BUILD-20200417.125022-25.jar:0.9.7.BUILD-SNAPSHOT]
at reactor.core.publisher.MonoCreate.subscribe(MonoCreate.java:57) ~[reactor-core-3.3.5.BUILD-20200415.105622-21.jar:3.3.5.BUILD-SNAPSHOT]
at reactor.core.publisher.FluxRetryPredicate$RetryPredicateSubscriber.resubscribe(FluxRetryPredicate.java:124) ~[reactor-core-3.3.5.BUILD-20200415.105622-21.jar:3.3.5.BUILD-SNAPSHOT]
at reactor.core.publisher.MonoRetryPredicate.subscribeOrReturn(MonoRetryPredicate.java:51) ~[reactor-core-3.3.5.BUILD-20200415.105622-21.jar:3.3.5.BUILD-SNAPSHOT]
at reactor.core.publisher.InternalMonoOperator.subscribe(InternalMonoOperator.java:57) ~[reactor-core-3.3.5.BUILD-20200415.105622-21.jar:3.3.5.BUILD-SNAPSHOT]
at reactor.netty.http.client.HttpClientConnect$MonoHttpConnect.subscribe(HttpClientConnect.java:326) ~[reactor-netty-0.9.7.BUILD-20200417.125022-25.jar:0.9.7.BUILD-SNAPSHOT]
at reactor.core.publisher.Flux.subscribe(Flux.java:8258) [reactor-core-3.3.5.BUILD-20200415.105622-21.jar:3.3.5.BUILD-SNAPSHOT]
at reactor.core.publisher.MonoIgnoreThen$ThenIgnoreMain.drain(MonoIgnoreThen.java:172) [reactor-core-3.3.5.BUILD-20200415.105622-21.jar:3.3.5.BUILD-SNAPSHOT]
at reactor.core.publisher.MonoIgnoreThen.subscribe(MonoIgnoreThen.java:56) [reactor-core-3.3.5.BUILD-20200415.105622-21.jar:3.3.5.BUILD-SNAPSHOT]
at reactor.core.publisher.MonoDefer.subscribe(MonoDefer.java:52) [reactor-core-3.3.5.BUILD-20200415.105622-21.jar:3.3.5.BUILD-SNAPSHOT]
at reactor.core.publisher.MonoDefer.subscribe(MonoDefer.java:52) [reactor-core-3.3.5.BUILD-20200415.105622-21.jar:3.3.5.BUILD-SNAPSHOT]
at reactor.core.publisher.MonoDefer.subscribe(MonoDefer.java:52) [reactor-core-3.3.5.BUILD-20200415.105622-21.jar:3.3.5.BUILD-SNAPSHOT]
at reactor.core.publisher.MonoDefer.subscribe(MonoDefer.java:52) [reactor-core-3.3.5.BUILD-20200415.105622-21.jar:3.3.5.BUILD-SNAPSHOT]
at reactor.core.publisher.MonoIgnoreThen$ThenIgnoreMain.drain(MonoIgnoreThen.java:153) [reactor-core-3.3.5.BUILD-20200415.105622-21.jar:3.3.5.BUILD-SNAPSHOT]
at reactor.core.publisher.MonoIgnoreThen.subscribe(MonoIgnoreThen.java:56) [reactor-core-3.3.5.BUILD-20200415.105622-21.jar:3.3.5.BUILD-SNAPSHOT]
at reactor.core.publisher.MonoDefer.subscribe(MonoDefer.java:52) [reactor-core-3.3.5.BUILD-20200415.105622-21.jar:3.3.5.BUILD-SNAPSHOT]
at reactor.core.publisher.MonoDefer.subscribe(MonoDefer.java:52) [reactor-core-3.3.5.BUILD-20200415.105622-21.jar:3.3.5.BUILD-SNAPSHOT]
at reactor.core.publisher.InternalMonoOperator.subscribe(InternalMonoOperator.java:64) ~[reactor-core-3.3.5.BUILD-20200415.105622-21.jar:3.3.5.BUILD-SNAPSHOT]
at reactor.core.publisher.FluxRetryWhen.subscribe(FluxRetryWhen.java:79) ~[reactor-core-3.3.5.BUILD-20200415.105622-21.jar:3.3.5.BUILD-SNAPSHOT]
at reactor.core.publisher.MonoRetryWhen.subscribeOrReturn(MonoRetryWhen.java:46) ~[reactor-core-3.3.5.BUILD-20200415.105622-21.jar:3.3.5.BUILD-SNAPSHOT]
at reactor.core.publisher.MonoFromFluxOperator.subscribe(MonoFromFluxOperator.java:74) ~[reactor-core-3.3.5.BUILD-20200415.105622-21.jar:3.3.5.BUILD-SNAPSHOT]
at reactor.core.publisher.MonoDefer.subscribe(MonoDefer.java:52) [reactor-core-3.3.5.BUILD-20200415.105622-21.jar:3.3.5.BUILD-SNAPSHOT]
at reactor.core.publisher.MonoDefer.subscribe(MonoDefer.java:52) [reactor-core-3.3.5.BUILD-20200415.105622-21.jar:3.3.5.BUILD-SNAPSHOT]
at reactor.core.publisher.InternalMonoOperator.subscribe(InternalMonoOperator.java:64) ~[reactor-core-3.3.5.BUILD-20200415.105622-21.jar:3.3.5.BUILD-SNAPSHOT]
at reactor.core.publisher.MonoDefer.subscribe(MonoDefer.java:52) [reactor-core-3.3.5.BUILD-20200415.105622-21.jar:3.3.5.BUILD-SNAPSHOT]
at reactor.core.publisher.MonoDefer.subscribe(MonoDefer.java:52) [reactor-core-3.3.5.BUILD-20200415.105622-21.jar:3.3.5.BUILD-SNAPSHOT]
at reactor.core.publisher.Mono.subscribe(Mono.java:4208) [reactor-core-3.3.5.BUILD-20200415.105622-21.jar:3.3.5.BUILD-SNAPSHOT]
at reactor.core.publisher.MonoIgnoreThen$ThenIgnoreMain.drain(MonoIgnoreThen.java:172) [reactor-core-3.3.5.BUILD-20200415.105622-21.jar:3.3.5.BUILD-SNAPSHOT]
at reactor.core.publisher.MonoIgnoreThen.subscribe(MonoIgnoreThen.java:56) [reactor-core-3.3.5.BUILD-20200415.105622-21.jar:3.3.5.BUILD-SNAPSHOT]
at reactor.core.publisher.InternalMonoOperator.subscribe(InternalMonoOperator.java:64) ~[reactor-core-3.3.5.BUILD-20200415.105622-21.jar:3.3.5.BUILD-SNAPSHOT]
at reactor.core.publisher.MonoDefer.subscribe(MonoDefer.java:52) [reactor-core-3.3.5.BUILD-20200415.105622-21.jar:3.3.5.BUILD-SNAPSHOT]
at reactor.core.publisher.MonoFlatMap$FlatMapMain.onNext(MonoFlatMap.java:150) ~[reactor-core-3.3.5.BUILD-20200415.105622-21.jar:3.3.5.BUILD-SNAPSHOT]
at reactor.core.publisher.FluxSwitchIfEmpty$SwitchIfEmptySubscriber.onNext(FluxSwitchIfEmpty.java:67) ~[reactor-core-3.3.5.BUILD-20200415.105622-21.jar:3.3.5.BUILD-SNAPSHOT]
at reactor.core.publisher.Operators$ScalarSubscription.request(Operators.java:2317) ~[reactor-core-3.3.5.BUILD-20200415.105622-21.jar:3.3.5.BUILD-SNAPSHOT]
at reactor.core.publisher.Operators$MultiSubscriptionSubscriber.set(Operators.java:2125) ~[reactor-core-3.3.5.BUILD-20200415.105622-21.jar:3.3.5.BUILD-SNAPSHOT]
at reactor.core.publisher.Operators$MultiSubscriptionSubscriber.onSubscribe(Operators.java:1999) ~[reactor-core-3.3.5.BUILD-20200415.105622-21.jar:3.3.5.BUILD-SNAPSHOT]
at reactor.core.publisher.MonoJust.subscribe(MonoJust.java:54) ~[reactor-core-3.3.5.BUILD-20200415.105622-21.jar:3.3.5.BUILD-SNAPSHOT]
at reactor.core.publisher.Mono.subscribe(Mono.java:4208) [reactor-core-3.3.5.BUILD-20200415.105622-21.jar:3.3.5.BUILD-SNAPSHOT]
at reactor.core.publisher.FluxSwitchIfEmpty$SwitchIfEmptySubscriber.onComplete(FluxSwitchIfEmpty.java:75) ~[reactor-core-3.3.5.BUILD-20200415.105622-21.jar:3.3.5.BUILD-SNAPSHOT]
at reactor.core.publisher.FluxMapFuseable$MapFuseableSubscriber.onComplete(FluxMapFuseable.java:144) ~[reactor-core-3.3.5.BUILD-20200415.105622-21.jar:3.3.5.BUILD-SNAPSHOT]
at reactor.core.publisher.FluxContextStart$ContextStartSubscriber.onComplete(FluxContextStart.java:115) ~[reactor-core-3.3.5.BUILD-20200415.105622-21.jar:3.3.5.BUILD-SNAPSHOT]
at reactor.core.publisher.FluxMapFuseable$MapFuseableConditionalSubscriber.onComplete(FluxMapFuseable.java:336) ~[reactor-core-3.3.5.BUILD-20200415.105622-21.jar:3.3.5.BUILD-SNAPSHOT]
at reactor.core.publisher.FluxFilterFuseable$FilterFuseableConditionalSubscriber.onComplete(FluxFilterFuseable.java:384) ~[reactor-core-3.3.5.BUILD-20200415.105622-21.jar:3.3.5.BUILD-SNAPSHOT]
at reactor.core.publisher.Operators$MonoSubscriber.complete(Operators.java:1756) ~[reactor-core-3.3.5.BUILD-20200415.105622-21.jar:3.3.5.BUILD-SNAPSHOT]
at reactor.core.publisher.MonoCollect$CollectSubscriber.onComplete(MonoCollect.java:152) ~[reactor-core-3.3.5.BUILD-20200415.105622-21.jar:3.3.5.BUILD-SNAPSHOT]
at reactor.core.publisher.FluxMap$MapSubscriber.onComplete(FluxMap.java:136) ~[reactor-core-3.3.5.BUILD-20200415.105622-21.jar:3.3.5.BUILD-SNAPSHOT]
at reactor.core.publisher.FluxPeek$PeekSubscriber.onComplete(FluxPeek.java:252) ~[reactor-core-3.3.5.BUILD-20200415.105622-21.jar:3.3.5.BUILD-SNAPSHOT]
at reactor.core.publisher.FluxMap$MapSubscriber.onComplete(FluxMap.java:136) ~[reactor-core-3.3.5.BUILD-20200415.105622-21.jar:3.3.5.BUILD-SNAPSHOT]
at reactor.netty.channel.FluxReceive.onInboundComplete(FluxReceive.java:366) ~[reactor-netty-0.9.7.BUILD-20200417.125022-25.jar:0.9.7.BUILD-SNAPSHOT]
at reactor.netty.channel.ChannelOperations.onInboundComplete(ChannelOperations.java:367) ~[reactor-netty-0.9.7.BUILD-20200417.125022-25.jar:0.9.7.BUILD-SNAPSHOT]
at reactor.netty.http.server.HttpServerOperations.onInboundNext(HttpServerOperations.java:489) ~[reactor-netty-0.9.7.BUILD-20200417.125022-25.jar:0.9.7.BUILD-SNAPSHOT]
at reactor.netty.channel.ChannelOperationsHandler.channelRead(ChannelOperationsHandler.java:96) ~[reactor-netty-0.9.7.BUILD-20200417.125022-25.jar:0.9.7.BUILD-SNAPSHOT]
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:379) ~[netty-transport-4.1.48.Final.jar:4.1.48.Final]
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:365) ~[netty-transport-4.1.48.Final.jar:4.1.48.Final]
at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:357) ~[netty-transport-4.1.48.Final.jar:4.1.48.Final]
at reactor.netty.http.server.HttpTrafficHandler.channelRead(HttpTrafficHandler.java:214) ~[reactor-netty-0.9.7.BUILD-20200417.125022-25.jar:0.9.7.BUILD-SNAPSHOT]
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:379) ~[netty-transport-4.1.48.Final.jar:4.1.48.Final]
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:365) ~[netty-transport-4.1.48.Final.jar:4.1.48.Final]
at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:357) ~[netty-transport-4.1.48.Final.jar:4.1.48.Final]
at io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext.fireChannelRead(CombinedChannelDuplexHandler.java:436) ~[netty-transport-4.1.48.Final.jar:4.1.48.Final]
at io.netty.handler.codec.ByteToMessageDecoder.fireChannelRead(ByteToMessageDecoder.java:321) ~[netty-codec-4.1.48.Final.jar:4.1.48.Final]
at io.netty.handler.codec.ByteToMessageDecoder.channelRead(ByteToMessageDecoder.java:295) ~[netty-codec-4.1.48.Final.jar:4.1.48.Final]
at io.netty.channel.CombinedChannelDuplexHandler.channelRead(CombinedChannelDuplexHandler.java:251) ~[netty-transport-4.1.48.Final.jar:4.1.48.Final]
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:379) ~[netty-transport-4.1.48.Final.jar:4.1.48.Final]
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:365) ~[netty-transport-4.1.48.Final.jar:4.1.48.Final]
at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:357) ~[netty-transport-4.1.48.Final.jar:4.1.48.Final]
at io.netty.channel.DefaultChannelPipeline$HeadContext.channelRead(DefaultChannelPipeline.java:1410) ~[netty-transport-4.1.48.Final.jar:4.1.48.Final]
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:379) ~[netty-transport-4.1.48.Final.jar:4.1.48.Final]
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:365) ~[netty-transport-4.1.48.Final.jar:4.1.48.Final]
at io.netty.channel.DefaultChannelPipeline.fireChannelRead(DefaultChannelPipeline.java:919) ~[netty-transport-4.1.48.Final.jar:4.1.48.Final]
at io.netty.channel.epoll.AbstractEpollStreamChannel$EpollStreamUnsafe.epollInReady(AbstractEpollStreamChannel.java:792) ~[netty-transport-native-epoll-4.1.48.Final-linux-x86_64.jar:4.1.48.Final]
at io.netty.channel.epoll.EpollEventLoop.processReady(EpollEventLoop.java:475) ~[netty-transport-native-epoll-4.1.48.Final-linux-x86_64.jar:4.1.48.Final]
at io.netty.channel.epoll.EpollEventLoop.run(EpollEventLoop.java:378) ~[netty-transport-native-epoll-4.1.48.Final-linux-x86_64.jar:4.1.48.Final]
at io.netty.util.concurrent.SingleThreadEventExecutor$4.run(SingleThreadEventExecutor.java:989) ~[netty-common-4.1.48.Final.jar:4.1.48.Final]
at io.netty.util.internal.ThreadExecutorMap$2.run(ThreadExecutorMap.java:74) ~[netty-common-4.1.48.Final.jar:4.1.48.Final]
at io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30) ~[netty-common-4.1.48.Final.jar:4.1.48.Final]
at java.lang.Thread.run(Thread.java:748) ~[na:1.8.0_191]
Issue Analytics
- State:
- Created 3 years ago
- Reactions:2
- Comments:14 (5 by maintainers)
Top Results From Across the Web
RxJava: "java.lang.IllegalStateException: Only one subscriber ...
I'm using RxJava to calculate the normalized auto correlation over some sensor data in Android. Strangely enough, my code throws an exception ("java.lang....
Read more >SubmissionPublisher (Java SE 17 & JDK 17)
A Flow.Publisher that asynchronously issues submitted (non-null) items to current subscribers until it is closed. Each current subscriber receives newly ...
Read more >Spring WebFlux: Only one connection receive subscriber ...
The problem here is in fact that WebClient allows only one subscriber per connection. If you try to subscribe to the same exchanged...
Read more >
Top Related Medium Post
No results found
Top Related StackOverflow Question
No results found
Troubleshoot Live Code
Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start Free
Top Related Reddit Thread
No results found
Top Related Hackernoon Post
No results found
Top Related Tweet
No results found
Top Related Dev.to Post
No results found
Top Related Hashnode Post
No results found
@jomach
Yes, that’s right.
Here https://github.com/spring-cloud/spring-cloud-gateway/issues/2443#issuecomment-983489173, the first 2 paragraphs.
You will probably need to use something like this in your filter:
Some starting point for your UnzipSubscriber:
You’ll have to implement onNext, onComplete and onError where each one has to forward the input to the requestSink. In emitNext, you should call
subscription.request(1)
if you only want to have the next part of the message, otherwise Long.MAX_VALUE to request all parts at once.I can’t help you any further, you’ll have to figure out the rest by yourself.
Hello @bergerst , thanks a lot. My issue was in another place where I basically used the flux stream and then return the original one (flipping) this indirectly subscribed double. But this code is very useful anyways.