apple / servicetalk

A networking framework that evolves with your application
https://docs.servicetalk.io
Apache License 2.0
928 stars 180 forks source link

ClientClosureRaceTest.testPipelinedPosts test failure #659

Open Scottmitch opened 5 years ago

Scottmitch commented 5 years ago

https://ci.servicetalk.io/job/servicetalk-java11-prb/379/testReport/junit/io.servicetalk.http.netty/ClientClosureRaceTest/testPipelinedPosts/

Error Message

java.util.concurrent.ExecutionException: io.netty.channel.socket.ChannelOutputShutdownException: Channel output shutdown
Stacktrace

java.util.concurrent.ExecutionException: io.netty.channel.socket.ChannelOutputShutdownException: Channel output shutdown
    at io.servicetalk.concurrent.api.SourceToFuture.reportGet(SourceToFuture.java:121)
    at io.servicetalk.concurrent.api.SourceToFuture.get(SourceToFuture.java:92)
    at io.servicetalk.http.netty.ClientClosureRaceTest.runIterations(ClientClosureRaceTest.java:148)
    at io.servicetalk.http.netty.ClientClosureRaceTest.testPipelinedPosts(ClientClosureRaceTest.java:137)
    at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
    at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.base/java.lang.reflect.Method.invoke(Method.java:566)
    at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:50)
    at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
    at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:47)
    at org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:17)
    at org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:26)
    at org.junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:27)
    at io.servicetalk.concurrent.internal.ServiceTalkTestTimeout$TimeoutStatement$CallableStatement.call(ServiceTalkTestTimeout.java:171)
    at io.servicetalk.concurrent.internal.ServiceTalkTestTimeout$TimeoutStatement$CallableStatement.call(ServiceTalkTestTimeout.java:163)
    at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
    at java.base/java.lang.Thread.run(Thread.java:834)
Caused by: io.netty.channel.socket.ChannelOutputShutdownException: Channel output shutdown
    at io.netty.channel.AbstractChannel$AbstractUnsafe.shutdownOutput(AbstractChannel.java:646)
    at io.netty.channel.AbstractChannel$AbstractUnsafe.flush0(AbstractChannel.java:954)
    at io.netty.channel.epoll.AbstractEpollChannel$AbstractEpollUnsafe.flush0(AbstractEpollChannel.java:517)
    at io.netty.channel.AbstractChannel$AbstractUnsafe.flush(AbstractChannel.java:906)
    at io.netty.channel.DefaultChannelPipeline$HeadContext.flush(DefaultChannelPipeline.java:1370)
    at io.netty.channel.AbstractChannelHandlerContext.invokeFlush0(AbstractChannelHandlerContext.java:749)
    at io.netty.channel.AbstractChannelHandlerContext.invokeFlush(AbstractChannelHandlerContext.java:741)
    at io.netty.channel.AbstractChannelHandlerContext.flush(AbstractChannelHandlerContext.java:727)
    at io.netty.channel.DefaultChannelPipeline.flush(DefaultChannelPipeline.java:978)
    at io.netty.channel.AbstractChannel.flush(AbstractChannel.java:253)
    at io.servicetalk.transport.netty.internal.Flush$FlushSubscriber.lambda$new$0(Flush.java:68)
    at io.servicetalk.transport.netty.internal.FlushOnEnd$1.writeTerminated(FlushOnEnd.java:31)
    at io.servicetalk.transport.netty.internal.Flush$FlushSubscriber.onComplete(Flush.java:125)
    at io.servicetalk.concurrent.api.SingleFlatMapPublisher$SubscriberImpl.onComplete(SingleFlatMapPublisher.java:111)
    at io.servicetalk.concurrent.api.ContextPreservingSubscriber.onComplete(ContextPreservingSubscriber.java:71)
    at io.servicetalk.concurrent.api.ContextPreservingSubscriptionSubscriber.onComplete(ContextPreservingSubscriptionSubscriber.java:56)
    at io.servicetalk.concurrent.api.ContextPreservingSubscriber.onComplete(ContextPreservingSubscriber.java:71)
    at io.servicetalk.concurrent.api.FromArrayPublisher$FromArraySubscription.sendComplete(FromArrayPublisher.java:113)
    at io.servicetalk.concurrent.api.FromArrayPublisher$FromArraySubscription.request(FromArrayPublisher.java:89)
    at io.servicetalk.concurrent.api.ContextPreservingSubscription.request(ContextPreservingSubscription.java:43)
    at io.servicetalk.concurrent.api.CancellableThenSubscription.setSubscription(CancellableThenSubscription.java:108)
    at io.servicetalk.concurrent.api.SingleFlatMapPublisher$SubscriberImpl.onSubscribe(SingleFlatMapPublisher.java:75)
    at io.servicetalk.concurrent.api.ContextPreservingSubscriber.onSubscribe(ContextPreservingSubscriber.java:38)
    at io.servicetalk.concurrent.api.ContextPreservingSubscriptionSubscriber.onSubscribe(ContextPreservingSubscriptionSubscriber.java:41)
    at io.servicetalk.concurrent.api.ContextPreservingSubscriber.onSubscribe(ContextPreservingSubscriber.java:38)
    at io.servicetalk.concurrent.api.FromArrayPublisher.doSubscribe(FromArrayPublisher.java:45)
    at io.servicetalk.concurrent.api.AbstractSynchronousPublisher.handleSubscribe(AbstractSynchronousPublisher.java:36)
    at io.servicetalk.concurrent.api.Publisher.lambda$subscribeWithContext$10(Publisher.java:2436)
    at io.servicetalk.concurrent.api.ContextPreservingConsumer.accept(ContextPreservingConsumer.java:37)
    at io.servicetalk.concurrent.api.NoopOffloader.offloadSubscribe(NoopOffloader.java:68)
    at io.servicetalk.concurrent.api.Publisher.subscribeWithContext(Publisher.java:2435)
    at io.servicetalk.concurrent.api.Publisher.subscribeInternal(Publisher.java:2206)
    at io.servicetalk.concurrent.api.SingleFlatMapPublisher$SubscriberImpl.onSuccess(SingleFlatMapPublisher.java:95)
    at io.servicetalk.concurrent.api.ReduceSingle$ReduceSubscriber.onComplete(ReduceSingle.java:114)
    at io.servicetalk.concurrent.api.ContextPreservingSubscriptionSubscriber.onComplete(ContextPreservingSubscriptionSubscriber.java:56)
    at io.servicetalk.concurrent.api.FilterPublisher$1.onComplete(FilterPublisher.java:72)
    at io.servicetalk.concurrent.api.ContextPreservingSubscriber.onComplete(ContextPreservingSubscriber.java:71)
    at io.servicetalk.concurrent.internal.ScalarValueSubscription.request(ScalarValueSubscription.java:71)
    at io.servicetalk.concurrent.internal.ConcurrentSubscription.request(ConcurrentSubscription.java:122)
    at io.servicetalk.concurrent.api.ContextPreservingSubscription.request(ContextPreservingSubscription.java:43)
    at io.servicetalk.concurrent.internal.ConcurrentSubscription.request(ConcurrentSubscription.java:122)
    at io.servicetalk.concurrent.api.ReduceSingle$ReduceSubscriber.onSubscribe(ReduceSingle.java:97)
    at io.servicetalk.concurrent.api.ContextPreservingSubscriptionSubscriber.onSubscribe(ContextPreservingSubscriptionSubscriber.java:41)
    at io.servicetalk.concurrent.api.FilterPublisher$1.onSubscribe(FilterPublisher.java:49)
    at io.servicetalk.concurrent.api.ContextPreservingSubscriber.onSubscribe(ContextPreservingSubscriber.java:38)
    at io.servicetalk.concurrent.api.FromSingleItemPublisher.doSubscribe(FromSingleItemPublisher.java:38)
    at io.servicetalk.concurrent.api.AbstractSynchronousPublisher.handleSubscribe(AbstractSynchronousPublisher.java:36)
    at io.servicetalk.concurrent.api.Publisher.delegateSubscribe(Publisher.java:2414)
    at io.servicetalk.concurrent.api.AbstractSynchronousPublisherOperator.handleSubscribe(AbstractSynchronousPublisherOperator.java:48)
    at io.servicetalk.concurrent.api.Publisher.delegateSubscribe(Publisher.java:2414)
    at io.servicetalk.concurrent.api.ReduceSingle.handleSubscribe(ReduceSingle.java:76)
    at io.servicetalk.concurrent.api.Single.delegateSubscribe(Single.java:1498)
    at io.servicetalk.concurrent.api.SingleFlatMapPublisher.handleSubscribe(SingleFlatMapPublisher.java:44)
    at io.servicetalk.concurrent.api.Publisher.delegateSubscribe(Publisher.java:2414)
    at io.servicetalk.concurrent.api.AbstractSynchronousPublisherOperator.handleSubscribe(AbstractSynchronousPublisherOperator.java:48)
    at io.servicetalk.concurrent.api.Publisher.lambda$subscribeWithContext$10(Publisher.java:2436)
    at io.servicetalk.concurrent.api.ContextPreservingConsumer.accept(ContextPreservingConsumer.java:37)
    at io.servicetalk.concurrent.api.NoopOffloader.offloadSubscribe(NoopOffloader.java:68)
    at io.servicetalk.concurrent.api.Publisher.subscribeWithContext(Publisher.java:2435)
    at io.servicetalk.concurrent.api.Publisher.subscribeInternal(Publisher.java:2206)
    at io.servicetalk.concurrent.api.AbstractNoHandleSubscribePublisher.subscribe(AbstractNoHandleSubscribePublisher.java:52)
    at io.servicetalk.transport.netty.internal.DefaultNettyConnection$2.handleSubscribe(DefaultNettyConnection.java:313)
    at io.servicetalk.concurrent.api.Completable.handleSubscribe(Completable.java:1564)
    at io.servicetalk.concurrent.api.Completable.delegateSubscribe(Completable.java:1520)
    at io.servicetalk.concurrent.api.AbstractSynchronousCompletableOperator.handleSubscribe(AbstractSynchronousCompletableOperator.java:46)
    at io.servicetalk.concurrent.api.Completable.delegateSubscribe(Completable.java:1520)
    at io.servicetalk.concurrent.api.ResumeCompletable.handleSubscribe(ResumeCompletable.java:44)
    at io.servicetalk.concurrent.api.Completable.delegateSubscribe(Completable.java:1520)
    at io.servicetalk.concurrent.api.AbstractSynchronousCompletableOperator.handleSubscribe(AbstractSynchronousCompletableOperator.java:46)
    at io.servicetalk.concurrent.api.CompletableSubscribeShareContext.handleSubscribe(CompletableSubscribeShareContext.java:34)
    at io.servicetalk.concurrent.api.Completable.lambda$subscribeWithContext$0(Completable.java:1541)
    at io.servicetalk.concurrent.api.ContextPreservingConsumer.accept(ContextPreservingConsumer.java:37)
    at io.servicetalk.concurrent.api.NoopOffloader.offloadSubscribe(NoopOffloader.java:80)
    at io.servicetalk.concurrent.api.Completable.subscribeWithContext(Completable.java:1540)
    at io.servicetalk.concurrent.api.Completable.subscribeInternal(Completable.java:1137)
    at io.servicetalk.concurrent.api.CompletableDefer.handleSubscribe(CompletableDefer.java:47)
    at io.servicetalk.concurrent.api.Completable.handleSubscribe(Completable.java:1564)
    at io.servicetalk.concurrent.api.Completable.lambda$subscribeWithContext$0(Completable.java:1541)
    at io.servicetalk.concurrent.api.ContextPreservingConsumer.accept(ContextPreservingConsumer.java:37)
    at io.servicetalk.concurrent.api.NoopOffloader.offloadSubscribe(NoopOffloader.java:80)
    at io.servicetalk.concurrent.api.Completable.subscribeWithContext(Completable.java:1540)
    at io.servicetalk.concurrent.api.Completable.subscribeInternal(Completable.java:1137)
    at io.servicetalk.concurrent.api.CompletableDefer.subscribe(CompletableDefer.java:52)
    at io.servicetalk.transport.netty.internal.DefaultNettyPipelinedConnection$WriteQueue.execute(DefaultNettyPipelinedConnection.java:235)
    at io.servicetalk.transport.netty.internal.DefaultNettyPipelinedConnection$WriteQueue.execute(DefaultNettyPipelinedConnection.java:222)
    at io.servicetalk.transport.netty.internal.SequentialTaskQueue.executeNextTask(SequentialTaskQueue.java:108)
    at io.servicetalk.transport.netty.internal.SequentialTaskQueue.postTaskTermination(SequentialTaskQueue.java:84)
    at io.servicetalk.transport.netty.internal.DefaultNettyPipelinedConnection$WriteSourceSubscriber.safePostTaskTermination(DefaultNettyPipelinedConnection.java:339)
    at io.servicetalk.transport.netty.internal.DefaultNettyPipelinedConnection$WriteSourceSubscriber.onComplete(DefaultNettyPipelinedConnection.java:311)
    at io.servicetalk.concurrent.api.ContextPreservingCancellableCompletableSubscriber.onComplete(ContextPreservingCancellableCompletableSubscriber.java:41)
    at io.servicetalk.concurrent.api.ContextPreservingCompletableSubscriber.onComplete(ContextPreservingCompletableSubscriber.java:49)
    at io.servicetalk.concurrent.api.ContextPreservingCancellableCompletableSubscriber.onComplete(ContextPreservingCancellableCompletableSubscriber.java:41)
    at io.servicetalk.concurrent.api.AfterFinallyCompletable$AfterFinallyCompletableSubscriber.onComplete(AfterFinallyCompletable.java:60)
    at io.servicetalk.concurrent.api.ResumeCompletable$ResumeSubscriber.onComplete(ResumeCompletable.java:83)
    at io.servicetalk.concurrent.api.BeforeFinallyCompletable$BeforeFinallyCompletableSubscriber.onComplete(BeforeFinallyCompletable.java:65)
    at io.servicetalk.concurrent.api.ContextPreservingCompletableSubscriber.onComplete(ContextPreservingCompletableSubscriber.java:49)
    at io.servicetalk.transport.netty.internal.WriteStreamSubscriber$AllWritesPromise.terminateSubscriber(WriteStreamSubscriber.java:394)
    at io.servicetalk.transport.netty.internal.WriteStreamSubscriber$AllWritesPromise.sourceTerminated(WriteStreamSubscriber.java:284)
    at io.servicetalk.transport.netty.internal.WriteStreamSubscriber.onComplete(WriteStreamSubscriber.java:179)
    at io.servicetalk.concurrent.api.ContextPreservingSubscriptionSubscriber.onComplete(ContextPreservingSubscriptionSubscriber.java:56)
    at io.servicetalk.transport.netty.internal.Flush$FlushSubscriber.onComplete(Flush.java:130)
    at io.servicetalk.concurrent.api.SingleFlatMapPublisher$SubscriberImpl.onComplete(SingleFlatMapPublisher.java:111)
    at io.servicetalk.concurrent.api.ContextPreservingSubscriber.onComplete(ContextPreservingSubscriber.java:71)
    at io.servicetalk.concurrent.api.ContextPreservingSubscriptionSubscriber.onComplete(ContextPreservingSubscriptionSubscriber.java:56)
    at io.servicetalk.concurrent.api.ContextPreservingSubscriber.onComplete(ContextPreservingSubscriber.java:71)
    at io.servicetalk.concurrent.api.FromArrayPublisher$FromArraySubscription.sendComplete(FromArrayPublisher.java:113)
    at io.servicetalk.concurrent.api.FromArrayPublisher$FromArraySubscription.request(FromArrayPublisher.java:89)
    at io.servicetalk.concurrent.api.ContextPreservingSubscription.request(ContextPreservingSubscription.java:43)
    at io.servicetalk.concurrent.api.CancellableThenSubscription.request(CancellableThenSubscription.java:62)
    at io.servicetalk.transport.netty.internal.Flush$FlushSubscriber$1.request(Flush.java:86)
    at io.servicetalk.concurrent.api.ContextPreservingSubscription.request(ContextPreservingSubscription.java:43)
    at io.servicetalk.concurrent.internal.ConcurrentSubscription.request(ConcurrentSubscription.java:122)
    at io.servicetalk.transport.netty.internal.WriteStreamSubscriber.requestMoreIfRequired(WriteStreamSubscriber.java:245)
    at io.servicetalk.transport.netty.internal.WriteStreamSubscriber.lambda$onSubscribe$0(WriteStreamSubscriber.java:126)
    at io.netty.util.concurrent.AbstractEventExecutor.safeExecute(AbstractEventExecutor.java:163)
    at io.netty.util.concurrent.SingleThreadEventExecutor.runAllTasks(SingleThreadEventExecutor.java:405)
    at io.netty.channel.epoll.EpollEventLoop.run(EpollEventLoop.java:338)
    at io.netty.util.concurrent.SingleThreadEventExecutor$5.run(SingleThreadEventExecutor.java:906)
    at io.netty.util.internal.ThreadExecutorMap$2.run(ThreadExecutorMap.java:74)
    at io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30)
    ... 1 more
Caused by: io.netty.channel.unix.Errors$NativeIoException: syscall:writev(..) failed: Broken pipe
    at io.netty.channel.unix.FileDescriptor.writeAddresses(..)(Unknown Source)

Standard Output
2019-06-28 03:04:22,252              Time-limited test [INFO ] ClientClosureRaceTest          - Completed 141 requests
2019-06-28 03:04:22,429              Time-limited test [INFO ] ClientClosureRaceTest          - Completed 121 requests
2019-06-28 03:04:22,436 servicetalk-global-io-executor-2-9 [WARN ] ChannelOutboundBuffer          - Failed to mark a promise as failure because it has failed already: WriteStreamSubscriber$AllWritesPromise@4fe094b0(failure: io.netty.channel.socket.ChannelOutputShutdownException: Channel output shutdown), unnotified cause: io.netty.channel.socket.ChannelOutputShutdownException: Channel output shutdown
    at io.netty.channel.AbstractChannel$AbstractUnsafe.shutdownOutput(AbstractChannel.java:646)
    at io.netty.channel.AbstractChannel$AbstractUnsafe.flush0(AbstractChannel.java:954)
    at io.netty.channel.epoll.AbstractEpollChannel$AbstractEpollUnsafe.flush0(AbstractEpollChannel.java:517)
    at io.netty.channel.AbstractChannel$AbstractUnsafe.flush(AbstractChannel.java:906)
    at io.netty.channel.DefaultChannelPipeline$HeadContext.flush(DefaultChannelPipeline.java:1370)
    at io.netty.channel.AbstractChannelHandlerContext.invokeFlush0(AbstractChannelHandlerContext.java:749)
    at io.netty.channel.AbstractChannelHandlerContext.invokeFlush(AbstractChannelHandlerContext.java:741)
    at io.netty.channel.AbstractChannelHandlerContext.flush(AbstractChannelHandlerContext.java:727)
    at io.netty.channel.DefaultChannelPipeline.flush(DefaultChannelPipeline.java:978)
    at io.netty.channel.AbstractChannel.flush(AbstractChannel.java:253)
    at io.servicetalk.transport.netty.internal.Flush$FlushSubscriber.lambda$new$0(Flush.java:68)
    at io.servicetalk.transport.netty.internal.FlushOnEnd$1.writeTerminated(FlushOnEnd.java:31)
    at io.servicetalk.transport.netty.internal.Flush$FlushSubscriber.onComplete(Flush.java:125)
    at io.servicetalk.concurrent.api.SingleFlatMapPublisher$SubscriberImpl.onComplete(SingleFlatMapPublisher.java:111)
    at io.servicetalk.concurrent.api.ContextPreservingSubscriber.onComplete(ContextPreservingSubscriber.java:71)
    at io.servicetalk.concurrent.api.ContextPreservingSubscriptionSubscriber.onComplete(ContextPreservingSubscriptionSubscriber.java:56)
    at io.servicetalk.concurrent.api.ContextPreservingSubscriber.onComplete(ContextPreservingSubscriber.java:71)
    at io.servicetalk.concurrent.api.FromArrayPublisher$FromArraySubscription.sendComplete(FromArrayPublisher.java:113)
    at io.servicetalk.concurrent.api.FromArrayPublisher$FromArraySubscription.request(FromArrayPublisher.java:89)
    at io.servicetalk.concurrent.api.ContextPreservingSubscription.request(ContextPreservingSubscription.java:43)
    at io.servicetalk.concurrent.api.CancellableThenSubscription.setSubscription(CancellableThenSubscription.java:108)
    at io.servicetalk.concurrent.api.SingleFlatMapPublisher$SubscriberImpl.onSubscribe(SingleFlatMapPublisher.java:75)
    at io.servicetalk.concurrent.api.ContextPreservingSubscriber.onSubscribe(ContextPreservingSubscriber.java:38)
    at io.servicetalk.concurrent.api.ContextPreservingSubscriptionSubscriber.onSubscribe(ContextPreservingSubscriptionSubscriber.java:41)
    at io.servicetalk.concurrent.api.ContextPreservingSubscriber.onSubscribe(ContextPreservingSubscriber.java:38)
    at io.servicetalk.concurrent.api.FromArrayPublisher.doSubscribe(FromArrayPublisher.java:45)
    at io.servicetalk.concurrent.api.AbstractSynchronousPublisher.handleSubscribe(AbstractSynchronousPublisher.java:36)
    at io.servicetalk.concurrent.api.Publisher.lambda$subscribeWithContext$10(Publisher.java:2436)
    at io.servicetalk.concurrent.api.ContextPreservingConsumer.accept(ContextPreservingConsumer.java:37)
    at io.servicetalk.concurrent.api.NoopOffloader.offloadSubscribe(NoopOffloader.java:68)
    at io.servicetalk.concurrent.api.Publisher.subscribeWithContext(Publisher.java:2435)
    at io.servicetalk.concurrent.api.Publisher.subscribeInternal(Publisher.java:2206)
    at io.servicetalk.concurrent.api.SingleFlatMapPublisher$SubscriberImpl.onSuccess(SingleFlatMapPublisher.java:95)
    at io.servicetalk.concurrent.api.ReduceSingle$ReduceSubscriber.onComplete(ReduceSingle.java:114)
    at io.servicetalk.concurrent.api.ContextPreservingSubscriptionSubscriber.onComplete(ContextPreservingSubscriptionSubscriber.java:56)
    at io.servicetalk.concurrent.api.FilterPublisher$1.onComplete(FilterPublisher.java:72)
    at io.servicetalk.concurrent.api.ContextPreservingSubscriber.onComplete(ContextPreservingSubscriber.java:71)
    at io.servicetalk.concurrent.internal.ScalarValueSubscription.request(ScalarValueSubscription.java:71)
    at io.servicetalk.concurrent.internal.ConcurrentSubscription.request(ConcurrentSubscription.java:122)
    at io.servicetalk.concurrent.api.ContextPreservingSubscription.request(ContextPreservingSubscription.java:43)
    at io.servicetalk.concurrent.internal.ConcurrentSubscription.request(ConcurrentSubscription.java:122)
    at io.servicetalk.concurrent.api.ReduceSingle$ReduceSubscriber.onSubscribe(ReduceSingle.java:97)
    at io.servicetalk.concurrent.api.ContextPreservingSubscriptionSubscriber.onSubscribe(ContextPreservingSubscriptionSubscriber.java:41)
    at io.servicetalk.concurrent.api.FilterPublisher$1.onSubscribe(FilterPublisher.java:49)
    at io.servicetalk.concurrent.api.ContextPreservingSubscriber.onSubscribe(ContextPreservingSubscriber.java:38)
    at io.servicetalk.concurrent.api.FromSingleItemPublisher.doSubscribe(FromSingleItemPublisher.java:38)
    at io.servicetalk.concurrent.api.AbstractSynchronousPublisher.handleSubscribe(AbstractSynchronousPublisher.java:36)
    at io.servicetalk.concurrent.api.Publisher.delegateSubscribe(Publisher.java:2414)
    at io.servicetalk.concurrent.api.AbstractSynchronousPublisherOperator.handleSubscribe(AbstractSynchronousPublisherOperator.java:48)
    at io.servicetalk.concurrent.api.Publisher.delegateSubscribe(Publisher.java:2414)
    at io.servicetalk.concurrent.api.ReduceSingle.handleSubscribe(ReduceSingle.java:76)
    at io.servicetalk.concurrent.api.Single.delegateSubscribe(Single.java:1498)
    at io.servicetalk.concurrent.api.SingleFlatMapPublisher.handleSubscribe(SingleFlatMapPublisher.java:44)
    at io.servicetalk.concurrent.api.Publisher.delegateSubscribe(Publisher.java:2414)
    at io.servicetalk.concurrent.api.AbstractSynchronousPublisherOperator.handleSubscribe(AbstractSynchronousPublisherOperator.java:48)
    at io.servicetalk.concurrent.api.Publisher.lambda$subscribeWithContext$10(Publisher.java:2436)
    at io.servicetalk.concurrent.api.ContextPreservingConsumer.accept(ContextPreservingConsumer.java:37)
    at io.servicetalk.concurrent.api.NoopOffloader.offloadSubscribe(NoopOffloader.java:68)
    at io.servicetalk.concurrent.api.Publisher.subscribeWithContext(Publisher.java:2435)
    at io.servicetalk.concurrent.api.Publisher.subscribeInternal(Publisher.java:2206)
    at io.servicetalk.concurrent.api.AbstractNoHandleSubscribePublisher.subscribe(AbstractNoHandleSubscribePublisher.java:52)
    at io.servicetalk.transport.netty.internal.DefaultNettyConnection$2.handleSubscribe(DefaultNettyConnection.java:313)
    at io.servicetalk.concurrent.api.Completable.handleSubscribe(Completable.java:1564)
    at io.servicetalk.concurrent.api.Completable.delegateSubscribe(Completable.java:1520)
    at io.servicetalk.concurrent.api.AbstractSynchronousCompletableOperator.handleSubscribe(AbstractSynchronousCompletableOperator.java:46)
    at io.servicetalk.concurrent.api.Completable.delegateSubscribe(Completable.java:1520)
    at io.servicetalk.concurrent.api.ResumeCompletable.handleSubscribe(ResumeCompletable.java:44)
    at io.servicetalk.concurrent.api.Completable.delegateSubscribe(Completable.java:1520)
    at io.servicetalk.concurrent.api.AbstractSynchronousCompletableOperator.handleSubscribe(AbstractSynchronousCompletableOperator.java:46)
    at io.servicetalk.concurrent.api.CompletableSubscribeShareContext.handleSubscribe(CompletableSubscribeShareContext.java:34)
    at io.servicetalk.concurrent.api.Completable.lambda$subscribeWithContext$0(Completable.java:1541)
    at io.servicetalk.concurrent.api.ContextPreservingConsumer.accept(ContextPreservingConsumer.java:37)
    at io.servicetalk.concurrent.api.NoopOffloader.offloadSubscribe(NoopOffloader.java:80)
    at io.servicetalk.concurrent.api.Completable.subscribeWithContext(Completable.java:1540)
    at io.servicetalk.concurrent.api.Completable.subscribeInternal(Completable.java:1137)
    at io.servicetalk.concurrent.api.CompletableDefer.handleSubscribe(CompletableDefer.java:47)
    at io.servicetalk.concurrent.api.Completable.handleSubscribe(Completable.java:1564)
    at io.servicetalk.concurrent.api.Completable.lambda$subscribeWithContext$0(Completable.java:1541)
    at io.servicetalk.concurrent.api.ContextPreservingConsumer.accept(ContextPreservingConsumer.java:37)
    at io.servicetalk.concurrent.api.NoopOffloader.offloadSubscribe(NoopOffloader.java:80)
    at io.servicetalk.concurrent.api.Completable.subscribeWithContext(Completable.java:1540)
    at io.servicetalk.concurrent.api.Completable.subscribeInternal(Completable.java:1137)
    at io.servicetalk.concurrent.api.CompletableDefer.subscribe(CompletableDefer.java:52)
    at io.servicetalk.transport.netty.internal.DefaultNettyPipelinedConnection$WriteQueue.execute(DefaultNettyPipelinedConnection.java:235)
    at io.servicetalk.transport.netty.internal.DefaultNettyPipelinedConnection$WriteQueue.execute(DefaultNettyPipelinedConnection.java:222)
    at io.servicetalk.transport.netty.internal.SequentialTaskQueue.executeNextTask(SequentialTaskQueue.java:108)
    at io.servicetalk.transport.netty.internal.SequentialTaskQueue.postTaskTermination(SequentialTaskQueue.java:84)
    at io.servicetalk.transport.netty.internal.DefaultNettyPipelinedConnection$WriteSourceSubscriber.safePostTaskTermination(DefaultNettyPipelinedConnection.java:339)
    at io.servicetalk.transport.netty.internal.DefaultNettyPipelinedConnection$WriteSourceSubscriber.onComplete(DefaultNettyPipelinedConnection.java:311)
    at io.servicetalk.concurrent.api.ContextPreservingCancellableCompletableSubscriber.onComplete(ContextPreservingCancellableCompletableSubscriber.java:41)
    at io.servicetalk.concurrent.api.ContextPreservingCompletableSubscriber.onComplete(ContextPreservingCompletableSubscriber.java:49)
    at io.servicetalk.concurrent.api.ContextPreservingCancellableCompletableSubscriber.onComplete(ContextPreservingCancellableCompletableSubscriber.java:41)
    at io.servicetalk.concurrent.api.AfterFinallyCompletable$AfterFinallyCompletableSubscriber.onComplete(AfterFinallyCompletable.java:60)
    at io.servicetalk.concurrent.api.ResumeCompletable$ResumeSubscriber.onComplete(ResumeCompletable.java:83)
    at io.servicetalk.concurrent.api.BeforeFinallyCompletable$BeforeFinallyCompletableSubscriber.onComplete(BeforeFinallyCompletable.java:65)
    at io.servicetalk.concurrent.api.ContextPreservingCompletableSubscriber.onComplete(ContextPreservingCompletableSubscriber.java:49)
    at io.servicetalk.transport.netty.internal.WriteStreamSubscriber$AllWritesPromise.terminateSubscriber(WriteStreamSubscriber.java:394)
    at io.servicetalk.transport.netty.internal.WriteStreamSubscriber$AllWritesPromise.sourceTerminated(WriteStreamSubscriber.java:284)
    at io.servicetalk.transport.netty.internal.WriteStreamSubscriber.onComplete(WriteStreamSubscriber.java:179)
    at io.servicetalk.concurrent.api.ContextPreservingSubscriptionSubscriber.onComplete(ContextPreservingSubscriptionSubscriber.java:56)
    at io.servicetalk.transport.netty.internal.Flush$FlushSubscriber.onComplete(Flush.java:130)
    at io.servicetalk.concurrent.api.SingleFlatMapPublisher$SubscriberImpl.onComplete(SingleFlatMapPublisher.java:111)
    at io.servicetalk.concurrent.api.ContextPreservingSubscriber.onComplete(ContextPreservingSubscriber.java:71)
    at io.servicetalk.concurrent.api.ContextPreservingSubscriptionSubscriber.onComplete(ContextPreservingSubscriptionSubscriber.java:56)
    at io.servicetalk.concurrent.api.ContextPreservingSubscriber.onComplete(ContextPreservingSubscriber.java:71)
    at io.servicetalk.concurrent.api.FromArrayPublisher$FromArraySubscription.sendComplete(FromArrayPublisher.java:113)
    at io.servicetalk.concurrent.api.FromArrayPublisher$FromArraySubscription.request(FromArrayPublisher.java:89)
    at io.servicetalk.concurrent.api.ContextPreservingSubscription.request(ContextPreservingSubscription.java:43)
    at io.servicetalk.concurrent.api.CancellableThenSubscription.request(CancellableThenSubscription.java:62)
    at io.servicetalk.transport.netty.internal.Flush$FlushSubscriber$1.request(Flush.java:86)
    at io.servicetalk.concurrent.api.ContextPreservingSubscription.request(ContextPreservingSubscription.java:43)
    at io.servicetalk.concurrent.internal.ConcurrentSubscription.request(ConcurrentSubscription.java:122)
    at io.servicetalk.transport.netty.internal.WriteStreamSubscriber.requestMoreIfRequired(WriteStreamSubscriber.java:245)
    at io.servicetalk.transport.netty.internal.WriteStreamSubscriber.lambda$onSubscribe$0(WriteStreamSubscriber.java:126)
    at io.netty.util.concurrent.AbstractEventExecutor.safeExecute(AbstractEventExecutor.java:163)
    at io.netty.util.concurrent.SingleThreadEventExecutor.runAllTasks(SingleThreadEventExecutor.java:405)
    at io.netty.channel.epoll.EpollEventLoop.run(EpollEventLoop.java:338)
    at io.netty.util.concurrent.SingleThreadEventExecutor$5.run(SingleThreadEventExecutor.java:906)
    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:834)
Caused by: io.netty.channel.unix.Errors$NativeIoException: syscall:writev(..) failed: Broken pipe
    at io.netty.channel.unix.FileDescriptor.writeAddresses(..)(Unknown Source)

io.netty.channel.socket.ChannelOutputShutdownException: Channel output shutdown
    at io.netty.channel.AbstractChannel$AbstractUnsafe.shutdownOutput(AbstractChannel.java:646) [netty-transport-4.1.36.Final.jar:4.1.36.Final]
    at io.netty.channel.AbstractChannel$AbstractUnsafe.flush0(AbstractChannel.java:954) [netty-transport-4.1.36.Final.jar:4.1.36.Final]
    at io.netty.channel.epoll.AbstractEpollChannel$AbstractEpollUnsafe.flush0(AbstractEpollChannel.java:517) [netty-transport-native-epoll-4.1.36.Final-linux-x86_64.jar:4.1.36.Final]
    at io.netty.channel.AbstractChannel$AbstractUnsafe.flush(AbstractChannel.java:906) [netty-transport-4.1.36.Final.jar:4.1.36.Final]
    at io.netty.channel.DefaultChannelPipeline$HeadContext.flush(DefaultChannelPipeline.java:1370) [netty-transport-4.1.36.Final.jar:4.1.36.Final]
    at io.netty.channel.AbstractChannelHandlerContext.invokeFlush0(AbstractChannelHandlerContext.java:749) [netty-transport-4.1.36.Final.jar:4.1.36.Final]
    at io.netty.channel.AbstractChannelHandlerContext.invokeFlush(AbstractChannelHandlerContext.java:741) [netty-transport-4.1.36.Final.jar:4.1.36.Final]
    at io.netty.channel.AbstractChannelHandlerContext.flush(AbstractChannelHandlerContext.java:727) [netty-transport-4.1.36.Final.jar:4.1.36.Final]
    at io.netty.channel.DefaultChannelPipeline.flush(DefaultChannelPipeline.java:978) [netty-transport-4.1.36.Final.jar:4.1.36.Final]
    at io.netty.channel.AbstractChannel.flush(AbstractChannel.java:253) [netty-transport-4.1.36.Final.jar:4.1.36.Final]
    at io.servicetalk.transport.netty.internal.Flush$FlushSubscriber.lambda$new$0(Flush.java:68) [servicetalk-transport-netty-internal-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.transport.netty.internal.FlushOnEnd$1.writeTerminated(FlushOnEnd.java:31) [servicetalk-transport-netty-internal-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.transport.netty.internal.Flush$FlushSubscriber.onComplete(Flush.java:125) [servicetalk-transport-netty-internal-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.SingleFlatMapPublisher$SubscriberImpl.onComplete(SingleFlatMapPublisher.java:111) [servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.ContextPreservingSubscriber.onComplete(ContextPreservingSubscriber.java:71) [servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.ContextPreservingSubscriptionSubscriber.onComplete(ContextPreservingSubscriptionSubscriber.java:56) [servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.ContextPreservingSubscriber.onComplete(ContextPreservingSubscriber.java:71) [servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.FromArrayPublisher$FromArraySubscription.sendComplete(FromArrayPublisher.java:113) [servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.FromArrayPublisher$FromArraySubscription.request(FromArrayPublisher.java:89) [servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.ContextPreservingSubscription.request(ContextPreservingSubscription.java:43) [servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.CancellableThenSubscription.setSubscription(CancellableThenSubscription.java:108) [servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.SingleFlatMapPublisher$SubscriberImpl.onSubscribe(SingleFlatMapPublisher.java:75) [servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.ContextPreservingSubscriber.onSubscribe(ContextPreservingSubscriber.java:38) [servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.ContextPreservingSubscriptionSubscriber.onSubscribe(ContextPreservingSubscriptionSubscriber.java:41) [servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.ContextPreservingSubscriber.onSubscribe(ContextPreservingSubscriber.java:38) [servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.FromArrayPublisher.doSubscribe(FromArrayPublisher.java:45) [servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.AbstractSynchronousPublisher.handleSubscribe(AbstractSynchronousPublisher.java:36) [servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.Publisher.lambda$subscribeWithContext$10(Publisher.java:2436) [servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.ContextPreservingConsumer.accept(ContextPreservingConsumer.java:37) [servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.NoopOffloader.offloadSubscribe(NoopOffloader.java:68) [servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.Publisher.subscribeWithContext(Publisher.java:2435) [servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.Publisher.subscribeInternal(Publisher.java:2206) [servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.SingleFlatMapPublisher$SubscriberImpl.onSuccess(SingleFlatMapPublisher.java:95) [servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.ReduceSingle$ReduceSubscriber.onComplete(ReduceSingle.java:114) [servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.ContextPreservingSubscriptionSubscriber.onComplete(ContextPreservingSubscriptionSubscriber.java:56) [servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.FilterPublisher$1.onComplete(FilterPublisher.java:72) [servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.ContextPreservingSubscriber.onComplete(ContextPreservingSubscriber.java:71) [servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.internal.ScalarValueSubscription.request(ScalarValueSubscription.java:71) [servicetalk-concurrent-internal-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.internal.ConcurrentSubscription.request(ConcurrentSubscription.java:122) [servicetalk-concurrent-internal-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.ContextPreservingSubscription.request(ContextPreservingSubscription.java:43) [servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.internal.ConcurrentSubscription.request(ConcurrentSubscription.java:122) [servicetalk-concurrent-internal-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.ReduceSingle$ReduceSubscriber.onSubscribe(ReduceSingle.java:97) [servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.ContextPreservingSubscriptionSubscriber.onSubscribe(ContextPreservingSubscriptionSubscriber.java:41) [servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.FilterPublisher$1.onSubscribe(FilterPublisher.java:49) [servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.ContextPreservingSubscriber.onSubscribe(ContextPreservingSubscriber.java:38) [servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.FromSingleItemPublisher.doSubscribe(FromSingleItemPublisher.java:38) [servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.AbstractSynchronousPublisher.handleSubscribe(AbstractSynchronousPublisher.java:36) [servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.Publisher.delegateSubscribe(Publisher.java:2414) [servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.AbstractSynchronousPublisherOperator.handleSubscribe(AbstractSynchronousPublisherOperator.java:48) [servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.Publisher.delegateSubscribe(Publisher.java:2414) [servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.ReduceSingle.handleSubscribe(ReduceSingle.java:76) [servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.Single.delegateSubscribe(Single.java:1498) [servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.SingleFlatMapPublisher.handleSubscribe(SingleFlatMapPublisher.java:44) [servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.Publisher.delegateSubscribe(Publisher.java:2414) [servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.AbstractSynchronousPublisherOperator.handleSubscribe(AbstractSynchronousPublisherOperator.java:48) [servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.Publisher.lambda$subscribeWithContext$10(Publisher.java:2436) [servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.ContextPreservingConsumer.accept(ContextPreservingConsumer.java:37) [servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.NoopOffloader.offloadSubscribe(NoopOffloader.java:68) [servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.Publisher.subscribeWithContext(Publisher.java:2435) [servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.Publisher.subscribeInternal(Publisher.java:2206) [servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.AbstractNoHandleSubscribePublisher.subscribe(AbstractNoHandleSubscribePublisher.java:52) [servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.transport.netty.internal.DefaultNettyConnection$2.handleSubscribe(DefaultNettyConnection.java:313) [servicetalk-transport-netty-internal-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.Completable.handleSubscribe(Completable.java:1564) [servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.Completable.delegateSubscribe(Completable.java:1520) [servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.AbstractSynchronousCompletableOperator.handleSubscribe(AbstractSynchronousCompletableOperator.java:46) [servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.Completable.delegateSubscribe(Completable.java:1520) [servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.ResumeCompletable.handleSubscribe(ResumeCompletable.java:44) [servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.Completable.delegateSubscribe(Completable.java:1520) [servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.AbstractSynchronousCompletableOperator.handleSubscribe(AbstractSynchronousCompletableOperator.java:46) [servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.CompletableSubscribeShareContext.handleSubscribe(CompletableSubscribeShareContext.java:34) [servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.Completable.lambda$subscribeWithContext$0(Completable.java:1541) [servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.ContextPreservingConsumer.accept(ContextPreservingConsumer.java:37) [servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.NoopOffloader.offloadSubscribe(NoopOffloader.java:80) [servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.Completable.subscribeWithContext(Completable.java:1540) [servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.Completable.subscribeInternal(Completable.java:1137) [servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.CompletableDefer.handleSubscribe(CompletableDefer.java:47) [servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.Completable.handleSubscribe(Completable.java:1564) [servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.Completable.lambda$subscribeWithContext$0(Completable.java:1541) [servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.ContextPreservingConsumer.accept(ContextPreservingConsumer.java:37) [servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.NoopOffloader.offloadSubscribe(NoopOffloader.java:80) [servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.Completable.subscribeWithContext(Completable.java:1540) [servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.Completable.subscribeInternal(Completable.java:1137) [servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.CompletableDefer.subscribe(CompletableDefer.java:52) [servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.transport.netty.internal.DefaultNettyPipelinedConnection$WriteQueue.execute(DefaultNettyPipelinedConnection.java:235) [servicetalk-transport-netty-internal-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.transport.netty.internal.DefaultNettyPipelinedConnection$WriteQueue.execute(DefaultNettyPipelinedConnection.java:222) [servicetalk-transport-netty-internal-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.transport.netty.internal.SequentialTaskQueue.executeNextTask(SequentialTaskQueue.java:108) [servicetalk-transport-netty-internal-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.transport.netty.internal.SequentialTaskQueue.postTaskTermination(SequentialTaskQueue.java:84) [servicetalk-transport-netty-internal-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.transport.netty.internal.DefaultNettyPipelinedConnection$WriteSourceSubscriber.safePostTaskTermination(DefaultNettyPipelinedConnection.java:339) [servicetalk-transport-netty-internal-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.transport.netty.internal.DefaultNettyPipelinedConnection$WriteSourceSubscriber.onComplete(DefaultNettyPipelinedConnection.java:311) [servicetalk-transport-netty-internal-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.ContextPreservingCancellableCompletableSubscriber.onComplete(ContextPreservingCancellableCompletableSubscriber.java:41) [servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.ContextPreservingCompletableSubscriber.onComplete(ContextPreservingCompletableSubscriber.java:49) [servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.ContextPreservingCancellableCompletableSubscriber.onComplete(ContextPreservingCancellableCompletableSubscriber.java:41) [servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.AfterFinallyCompletable$AfterFinallyCompletableSubscriber.onComplete(AfterFinallyCompletable.java:60) [servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.ResumeCompletable$ResumeSubscriber.onComplete(ResumeCompletable.java:83) [servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.BeforeFinallyCompletable$BeforeFinallyCompletableSubscriber.onComplete(BeforeFinallyCompletable.java:65) [servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.ContextPreservingCompletableSubscriber.onComplete(ContextPreservingCompletableSubscriber.java:49) [servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.transport.netty.internal.WriteStreamSubscriber$AllWritesPromise.terminateSubscriber(WriteStreamSubscriber.java:394) [servicetalk-transport-netty-internal-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.transport.netty.internal.WriteStreamSubscriber$AllWritesPromise.sourceTerminated(WriteStreamSubscriber.java:284) [servicetalk-transport-netty-internal-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.transport.netty.internal.WriteStreamSubscriber.onComplete(WriteStreamSubscriber.java:179) [servicetalk-transport-netty-internal-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.ContextPreservingSubscriptionSubscriber.onComplete(ContextPreservingSubscriptionSubscriber.java:56) [servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.transport.netty.internal.Flush$FlushSubscriber.onComplete(Flush.java:130) [servicetalk-transport-netty-internal-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.SingleFlatMapPublisher$SubscriberImpl.onComplete(SingleFlatMapPublisher.java:111) [servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.ContextPreservingSubscriber.onComplete(ContextPreservingSubscriber.java:71) [servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.ContextPreservingSubscriptionSubscriber.onComplete(ContextPreservingSubscriptionSubscriber.java:56) [servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.ContextPreservingSubscriber.onComplete(ContextPreservingSubscriber.java:71) [servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.FromArrayPublisher$FromArraySubscription.sendComplete(FromArrayPublisher.java:113) [servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.FromArrayPublisher$FromArraySubscription.request(FromArrayPublisher.java:89) [servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.ContextPreservingSubscription.request(ContextPreservingSubscription.java:43) [servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.CancellableThenSubscription.request(CancellableThenSubscription.java:62) [servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.transport.netty.internal.Flush$FlushSubscriber$1.request(Flush.java:86) [servicetalk-transport-netty-internal-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.ContextPreservingSubscription.request(ContextPreservingSubscription.java:43) [servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.internal.ConcurrentSubscription.request(ConcurrentSubscription.java:122) [servicetalk-concurrent-internal-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.transport.netty.internal.WriteStreamSubscriber.requestMoreIfRequired(WriteStreamSubscriber.java:245) [servicetalk-transport-netty-internal-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.transport.netty.internal.WriteStreamSubscriber.lambda$onSubscribe$0(WriteStreamSubscriber.java:126) [servicetalk-transport-netty-internal-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    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.epoll.EpollEventLoop.run(EpollEventLoop.java:338) [netty-transport-native-epoll-4.1.36.Final-linux-x86_64.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 io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30) [netty-common-4.1.36.Final.jar:4.1.36.Final]
    at java.lang.Thread.run(Thread.java:834) [?:?]
Caused by: io.netty.channel.unix.Errors$NativeIoException: syscall:writev(..) failed: Broken pipe
    at io.netty.channel.unix.FileDescriptor.writeAddresses(..)(Unknown Source) ~[netty-transport-native-unix-common-4.1.36.Final.jar:4.1.36.Final]
2019-06-28 03:04:22,445 servicetalk-global-io-executor-2-9 [WARN ] ChannelOutboundBuffer          - Failed to mark a promise as failure because it has failed already: WriteStreamSubscriber$AllWritesPromise@4fe094b0(failure: io.netty.channel.socket.ChannelOutputShutdownException: Channel output shutdown), unnotified cause: io.netty.channel.socket.ChannelOutputShutdownException: Channel output shutdown
    at io.netty.channel.AbstractChannel$AbstractUnsafe.shutdownOutput(AbstractChannel.java:646)
    at io.netty.channel.AbstractChannel$AbstractUnsafe.flush0(AbstractChannel.java:954)
    at io.netty.channel.epoll.AbstractEpollChannel$AbstractEpollUnsafe.flush0(AbstractEpollChannel.java:517)
    at io.netty.channel.AbstractChannel$AbstractUnsafe.flush(AbstractChannel.java:906)
    at io.netty.channel.DefaultChannelPipeline$HeadContext.flush(DefaultChannelPipeline.java:1370)
    at io.netty.channel.AbstractChannelHandlerContext.invokeFlush0(AbstractChannelHandlerContext.java:749)
    at io.netty.channel.AbstractChannelHandlerContext.invokeFlush(AbstractChannelHandlerContext.java:741)
    at io.netty.channel.AbstractChannelHandlerContext.flush(AbstractChannelHandlerContext.java:727)
    at io.netty.channel.DefaultChannelPipeline.flush(DefaultChannelPipeline.java:978)
    at io.netty.channel.AbstractChannel.flush(AbstractChannel.java:253)
    at io.servicetalk.transport.netty.internal.Flush$FlushSubscriber.lambda$new$0(Flush.java:68)
    at io.servicetalk.transport.netty.internal.FlushOnEnd$1.writeTerminated(FlushOnEnd.java:31)
    at io.servicetalk.transport.netty.internal.Flush$FlushSubscriber.onComplete(Flush.java:125)
    at io.servicetalk.concurrent.api.SingleFlatMapPublisher$SubscriberImpl.onComplete(SingleFlatMapPublisher.java:111)
    at io.servicetalk.concurrent.api.ContextPreservingSubscriber.onComplete(ContextPreservingSubscriber.java:71)
    at io.servicetalk.concurrent.api.ContextPreservingSubscriptionSubscriber.onComplete(ContextPreservingSubscriptionSubscriber.java:56)
    at io.servicetalk.concurrent.api.ContextPreservingSubscriber.onComplete(ContextPreservingSubscriber.java:71)
    at io.servicetalk.concurrent.api.FromArrayPublisher$FromArraySubscription.sendComplete(FromArrayPublisher.java:113)
    at io.servicetalk.concurrent.api.FromArrayPublisher$FromArraySubscription.request(FromArrayPublisher.java:89)
    at io.servicetalk.concurrent.api.ContextPreservingSubscription.request(ContextPreservingSubscription.java:43)
    at io.servicetalk.concurrent.api.CancellableThenSubscription.setSubscription(CancellableThenSubscription.java:108)
    at io.servicetalk.concurrent.api.SingleFlatMapPublisher$SubscriberImpl.onSubscribe(SingleFlatMapPublisher.java:75)
    at io.servicetalk.concurrent.api.ContextPreservingSubscriber.onSubscribe(ContextPreservingSubscriber.java:38)
    at io.servicetalk.concurrent.api.ContextPreservingSubscriptionSubscriber.onSubscribe(ContextPreservingSubscriptionSubscriber.java:41)
    at io.servicetalk.concurrent.api.ContextPreservingSubscriber.onSubscribe(ContextPreservingSubscriber.java:38)
    at io.servicetalk.concurrent.api.FromArrayPublisher.doSubscribe(FromArrayPublisher.java:45)
    at io.servicetalk.concurrent.api.AbstractSynchronousPublisher.handleSubscribe(AbstractSynchronousPublisher.java:36)
    at io.servicetalk.concurrent.api.Publisher.lambda$subscribeWithContext$10(Publisher.java:2436)
    at io.servicetalk.concurrent.api.ContextPreservingConsumer.accept(ContextPreservingConsumer.java:37)
    at io.servicetalk.concurrent.api.NoopOffloader.offloadSubscribe(NoopOffloader.java:68)
    at io.servicetalk.concurrent.api.Publisher.subscribeWithContext(Publisher.java:2435)
    at io.servicetalk.concurrent.api.Publisher.subscribeInternal(Publisher.java:2206)
    at io.servicetalk.concurrent.api.SingleFlatMapPublisher$SubscriberImpl.onSuccess(SingleFlatMapPublisher.java:95)
    at io.servicetalk.concurrent.api.ReduceSingle$ReduceSubscriber.onComplete(ReduceSingle.java:114)
    at io.servicetalk.concurrent.api.ContextPreservingSubscriptionSubscriber.onComplete(ContextPreservingSubscriptionSubscriber.java:56)
    at io.servicetalk.concurrent.api.FilterPublisher$1.onComplete(FilterPublisher.java:72)
    at io.servicetalk.concurrent.api.ContextPreservingSubscriber.onComplete(ContextPreservingSubscriber.java:71)
    at io.servicetalk.concurrent.internal.ScalarValueSubscription.request(ScalarValueSubscription.java:71)
    at io.servicetalk.concurrent.internal.ConcurrentSubscription.request(ConcurrentSubscription.java:122)
    at io.servicetalk.concurrent.api.ContextPreservingSubscription.request(ContextPreservingSubscription.java:43)
    at io.servicetalk.concurrent.internal.ConcurrentSubscription.request(ConcurrentSubscription.java:122)
    at io.servicetalk.concurrent.api.ReduceSingle$ReduceSubscriber.onSubscribe(ReduceSingle.java:97)
    at io.servicetalk.concurrent.api.ContextPreservingSubscriptionSubscriber.onSubscribe(ContextPreservingSubscriptionSubscriber.java:41)
    at io.servicetalk.concurrent.api.FilterPublisher$1.onSubscribe(FilterPublisher.java:49)
    at io.servicetalk.concurrent.api.ContextPreservingSubscriber.onSubscribe(ContextPreservingSubscriber.java:38)
    at io.servicetalk.concurrent.api.FromSingleItemPublisher.doSubscribe(FromSingleItemPublisher.java:38)
    at io.servicetalk.concurrent.api.AbstractSynchronousPublisher.handleSubscribe(AbstractSynchronousPublisher.java:36)
    at io.servicetalk.concurrent.api.Publisher.delegateSubscribe(Publisher.java:2414)
    at io.servicetalk.concurrent.api.AbstractSynchronousPublisherOperator.handleSubscribe(AbstractSynchronousPublisherOperator.java:48)
    at io.servicetalk.concurrent.api.Publisher.delegateSubscribe(Publisher.java:2414)
    at io.servicetalk.concurrent.api.ReduceSingle.handleSubscribe(ReduceSingle.java:76)
    at io.servicetalk.concurrent.api.Single.delegateSubscribe(Single.java:1498)
    at io.servicetalk.concurrent.api.SingleFlatMapPublisher.handleSubscribe(SingleFlatMapPublisher.java:44)
    at io.servicetalk.concurrent.api.Publisher.delegateSubscribe(Publisher.java:2414)
    at io.servicetalk.concurrent.api.AbstractSynchronousPublisherOperator.handleSubscribe(AbstractSynchronousPublisherOperator.java:48)
    at io.servicetalk.concurrent.api.Publisher.lambda$subscribeWithContext$10(Publisher.java:2436)
    at io.servicetalk.concurrent.api.ContextPreservingConsumer.accept(ContextPreservingConsumer.java:37)
    at io.servicetalk.concurrent.api.NoopOffloader.offloadSubscribe(NoopOffloader.java:68)
    at io.servicetalk.concurrent.api.Publisher.subscribeWithContext(Publisher.java:2435)
    at io.servicetalk.concurrent.api.Publisher.subscribeInternal(Publisher.java:2206)
    at io.servicetalk.concurrent.api.AbstractNoHandleSubscribePublisher.subscribe(AbstractNoHandleSubscribePublisher.java:52)
    at io.servicetalk.transport.netty.internal.DefaultNettyConnection$2.handleSubscribe(DefaultNettyConnection.java:313)
    at io.servicetalk.concurrent.api.Completable.handleSubscribe(Completable.java:1564)
    at io.servicetalk.concurrent.api.Completable.delegateSubscribe(Completable.java:1520)
    at io.servicetalk.concurrent.api.AbstractSynchronousCompletableOperator.handleSubscribe(AbstractSynchronousCompletableOperator.java:46)
    at io.servicetalk.concurrent.api.Completable.delegateSubscribe(Completable.java:1520)
    at io.servicetalk.concurrent.api.ResumeCompletable.handleSubscribe(ResumeCompletable.java:44)
    at io.servicetalk.concurrent.api.Completable.delegateSubscribe(Completable.java:1520)
    at io.servicetalk.concurrent.api.AbstractSynchronousCompletableOperator.handleSubscribe(AbstractSynchronousCompletableOperator.java:46)
    at io.servicetalk.concurrent.api.CompletableSubscribeShareContext.handleSubscribe(CompletableSubscribeShareContext.java:34)
    at io.servicetalk.concurrent.api.Completable.lambda$subscribeWithContext$0(Completable.java:1541)
    at io.servicetalk.concurrent.api.ContextPreservingConsumer.accept(ContextPreservingConsumer.java:37)
    at io.servicetalk.concurrent.api.NoopOffloader.offloadSubscribe(NoopOffloader.java:80)
    at io.servicetalk.concurrent.api.Completable.subscribeWithContext(Completable.java:1540)
    at io.servicetalk.concurrent.api.Completable.subscribeInternal(Completable.java:1137)
    at io.servicetalk.concurrent.api.CompletableDefer.handleSubscribe(CompletableDefer.java:47)
    at io.servicetalk.concurrent.api.Completable.handleSubscribe(Completable.java:1564)
    at io.servicetalk.concurrent.api.Completable.lambda$subscribeWithContext$0(Completable.java:1541)
    at io.servicetalk.concurrent.api.ContextPreservingConsumer.accept(ContextPreservingConsumer.java:37)
    at io.servicetalk.concurrent.api.NoopOffloader.offloadSubscribe(NoopOffloader.java:80)
    at io.servicetalk.concurrent.api.Completable.subscribeWithContext(Completable.java:1540)
    at io.servicetalk.concurrent.api.Completable.subscribeInternal(Completable.java:1137)
    at io.servicetalk.concurrent.api.CompletableDefer.subscribe(CompletableDefer.java:52)
    at io.servicetalk.transport.netty.internal.DefaultNettyPipelinedConnection$WriteQueue.execute(DefaultNettyPipelinedConnection.java:235)
    at io.servicetalk.transport.netty.internal.DefaultNettyPipelinedConnection$WriteQueue.execute(DefaultNettyPipelinedConnection.java:222)
    at io.servicetalk.transport.netty.internal.SequentialTaskQueue.executeNextTask(SequentialTaskQueue.java:108)
    at io.servicetalk.transport.netty.internal.SequentialTaskQueue.postTaskTermination(SequentialTaskQueue.java:84)
    at io.servicetalk.transport.netty.internal.DefaultNettyPipelinedConnection$WriteSourceSubscriber.safePostTaskTermination(DefaultNettyPipelinedConnection.java:339)
    at io.servicetalk.transport.netty.internal.DefaultNettyPipelinedConnection$WriteSourceSubscriber.onComplete(DefaultNettyPipelinedConnection.java:311)
    at io.servicetalk.concurrent.api.ContextPreservingCancellableCompletableSubscriber.onComplete(ContextPreservingCancellableCompletableSubscriber.java:41)
    at io.servicetalk.concurrent.api.ContextPreservingCompletableSubscriber.onComplete(ContextPreservingCompletableSubscriber.java:49)
    at io.servicetalk.concurrent.api.ContextPreservingCancellableCompletableSubscriber.onComplete(ContextPreservingCancellableCompletableSubscriber.java:41)
    at io.servicetalk.concurrent.api.AfterFinallyCompletable$AfterFinallyCompletableSubscriber.onComplete(AfterFinallyCompletable.java:60)
    at io.servicetalk.concurrent.api.ResumeCompletable$ResumeSubscriber.onComplete(ResumeCompletable.java:83)
    at io.servicetalk.concurrent.api.BeforeFinallyCompletable$BeforeFinallyCompletableSubscriber.onComplete(BeforeFinallyCompletable.java:65)
    at io.servicetalk.concurrent.api.ContextPreservingCompletableSubscriber.onComplete(ContextPreservingCompletableSubscriber.java:49)
    at io.servicetalk.transport.netty.internal.WriteStreamSubscriber$AllWritesPromise.terminateSubscriber(WriteStreamSubscriber.java:394)
    at io.servicetalk.transport.netty.internal.WriteStreamSubscriber$AllWritesPromise.sourceTerminated(WriteStreamSubscriber.java:284)
    at io.servicetalk.transport.netty.internal.WriteStreamSubscriber.onComplete(WriteStreamSubscriber.java:179)
    at io.servicetalk.concurrent.api.ContextPreservingSubscriptionSubscriber.onComplete(ContextPreservingSubscriptionSubscriber.java:56)
    at io.servicetalk.transport.netty.internal.Flush$FlushSubscriber.onComplete(Flush.java:130)
    at io.servicetalk.concurrent.api.SingleFlatMapPublisher$SubscriberImpl.onComplete(SingleFlatMapPublisher.java:111)
    at io.servicetalk.concurrent.api.ContextPreservingSubscriber.onComplete(ContextPreservingSubscriber.java:71)
    at io.servicetalk.concurrent.api.ContextPreservingSubscriptionSubscriber.onComplete(ContextPreservingSubscriptionSubscriber.java:56)
    at io.servicetalk.concurrent.api.ContextPreservingSubscriber.onComplete(ContextPreservingSubscriber.java:71)
    at io.servicetalk.concurrent.api.FromArrayPublisher$FromArraySubscription.sendComplete(FromArrayPublisher.java:113)
    at io.servicetalk.concurrent.api.FromArrayPublisher$FromArraySubscription.request(FromArrayPublisher.java:89)
    at io.servicetalk.concurrent.api.ContextPreservingSubscription.request(ContextPreservingSubscription.java:43)
    at io.servicetalk.concurrent.api.CancellableThenSubscription.request(CancellableThenSubscription.java:62)
    at io.servicetalk.transport.netty.internal.Flush$FlushSubscriber$1.request(Flush.java:86)
    at io.servicetalk.concurrent.api.ContextPreservingSubscription.request(ContextPreservingSubscription.java:43)
    at io.servicetalk.concurrent.internal.ConcurrentSubscription.request(ConcurrentSubscription.java:122)
    at io.servicetalk.transport.netty.internal.WriteStreamSubscriber.requestMoreIfRequired(WriteStreamSubscriber.java:245)
    at io.servicetalk.transport.netty.internal.WriteStreamSubscriber.lambda$onSubscribe$0(WriteStreamSubscriber.java:126)
    at io.netty.util.concurrent.AbstractEventExecutor.safeExecute(AbstractEventExecutor.java:163)
    at io.netty.util.concurrent.SingleThreadEventExecutor.runAllTasks(SingleThreadEventExecutor.java:405)
    at io.netty.channel.epoll.EpollEventLoop.run(EpollEventLoop.java:338)
    at io.netty.util.concurrent.SingleThreadEventExecutor$5.run(SingleThreadEventExecutor.java:906)
    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:834)
Caused by: io.netty.channel.unix.Errors$NativeIoException: syscall:writev(..) failed: Broken pipe
    at io.netty.channel.unix.FileDescriptor.writeAddresses(..)(Unknown Source)

io.netty.channel.socket.ChannelOutputShutdownException: Channel output shutdown
    at io.netty.channel.AbstractChannel$AbstractUnsafe.shutdownOutput(AbstractChannel.java:646) [netty-transport-4.1.36.Final.jar:4.1.36.Final]
    at io.netty.channel.AbstractChannel$AbstractUnsafe.flush0(AbstractChannel.java:954) [netty-transport-4.1.36.Final.jar:4.1.36.Final]
    at io.netty.channel.epoll.AbstractEpollChannel$AbstractEpollUnsafe.flush0(AbstractEpollChannel.java:517) [netty-transport-native-epoll-4.1.36.Final-linux-x86_64.jar:4.1.36.Final]
    at io.netty.channel.AbstractChannel$AbstractUnsafe.flush(AbstractChannel.java:906) [netty-transport-4.1.36.Final.jar:4.1.36.Final]
    at io.netty.channel.DefaultChannelPipeline$HeadContext.flush(DefaultChannelPipeline.java:1370) [netty-transport-4.1.36.Final.jar:4.1.36.Final]
    at io.netty.channel.AbstractChannelHandlerContext.invokeFlush0(AbstractChannelHandlerContext.java:749) [netty-transport-4.1.36.Final.jar:4.1.36.Final]
    at io.netty.channel.AbstractChannelHandlerContext.invokeFlush(AbstractChannelHandlerContext.java:741) [netty-transport-4.1.36.Final.jar:4.1.36.Final]
    at io.netty.channel.AbstractChannelHandlerContext.flush(AbstractChannelHandlerContext.java:727) [netty-transport-4.1.36.Final.jar:4.1.36.Final]
    at io.netty.channel.DefaultChannelPipeline.flush(DefaultChannelPipeline.java:978) [netty-transport-4.1.36.Final.jar:4.1.36.Final]
    at io.netty.channel.AbstractChannel.flush(AbstractChannel.java:253) [netty-transport-4.1.36.Final.jar:4.1.36.Final]
    at io.servicetalk.transport.netty.internal.Flush$FlushSubscriber.lambda$new$0(Flush.java:68) [servicetalk-transport-netty-internal-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.transport.netty.internal.FlushOnEnd$1.writeTerminated(FlushOnEnd.java:31) [servicetalk-transport-netty-internal-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.transport.netty.internal.Flush$FlushSubscriber.onComplete(Flush.java:125) [servicetalk-transport-netty-internal-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.SingleFlatMapPublisher$SubscriberImpl.onComplete(SingleFlatMapPublisher.java:111) [servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.ContextPreservingSubscriber.onComplete(ContextPreservingSubscriber.java:71) [servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.ContextPreservingSubscriptionSubscriber.onComplete(ContextPreservingSubscriptionSubscriber.java:56) [servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.ContextPreservingSubscriber.onComplete(ContextPreservingSubscriber.java:71) [servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.FromArrayPublisher$FromArraySubscription.sendComplete(FromArrayPublisher.java:113) [servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.FromArrayPublisher$FromArraySubscription.request(FromArrayPublisher.java:89) [servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.ContextPreservingSubscription.request(ContextPreservingSubscription.java:43) [servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.CancellableThenSubscription.setSubscription(CancellableThenSubscription.java:108) [servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.SingleFlatMapPublisher$SubscriberImpl.onSubscribe(SingleFlatMapPublisher.java:75) [servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.ContextPreservingSubscriber.onSubscribe(ContextPreservingSubscriber.java:38) [servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.ContextPreservingSubscriptionSubscriber.onSubscribe(ContextPreservingSubscriptionSubscriber.java:41) [servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.ContextPreservingSubscriber.onSubscribe(ContextPreservingSubscriber.java:38) [servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.FromArrayPublisher.doSubscribe(FromArrayPublisher.java:45) [servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.AbstractSynchronousPublisher.handleSubscribe(AbstractSynchronousPublisher.java:36) [servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.Publisher.lambda$subscribeWithContext$10(Publisher.java:2436) [servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.ContextPreservingConsumer.accept(ContextPreservingConsumer.java:37) [servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.NoopOffloader.offloadSubscribe(NoopOffloader.java:68) [servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.Publisher.subscribeWithContext(Publisher.java:2435) [servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.Publisher.subscribeInternal(Publisher.java:2206) [servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.SingleFlatMapPublisher$SubscriberImpl.onSuccess(SingleFlatMapPublisher.java:95) [servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.ReduceSingle$ReduceSubscriber.onComplete(ReduceSingle.java:114) [servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.ContextPreservingSubscriptionSubscriber.onComplete(ContextPreservingSubscriptionSubscriber.java:56) [servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.FilterPublisher$1.onComplete(FilterPublisher.java:72) [servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.ContextPreservingSubscriber.onComplete(ContextPreservingSubscriber.java:71) [servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.internal.ScalarValueSubscription.request(ScalarValueSubscription.java:71) [servicetalk-concurrent-internal-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.internal.ConcurrentSubscription.request(ConcurrentSubscription.java:122) [servicetalk-concurrent-internal-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.ContextPreservingSubscription.request(ContextPreservingSubscription.java:43) [servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.internal.ConcurrentSubscription.request(ConcurrentSubscription.java:122) [servicetalk-concurrent-internal-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.ReduceSingle$ReduceSubscriber.onSubscribe(ReduceSingle.java:97) [servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.ContextPreservingSubscriptionSubscriber.onSubscribe(ContextPreservingSubscriptionSubscriber.java:41) [servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.FilterPublisher$1.onSubscribe(FilterPublisher.java:49) [servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.ContextPreservingSubscriber.onSubscribe(ContextPreservingSubscriber.java:38) [servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.FromSingleItemPublisher.doSubscribe(FromSingleItemPublisher.java:38) [servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.AbstractSynchronousPublisher.handleSubscribe(AbstractSynchronousPublisher.java:36) [servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.Publisher.delegateSubscribe(Publisher.java:2414) [servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.AbstractSynchronousPublisherOperator.handleSubscribe(AbstractSynchronousPublisherOperator.java:48) [servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.Publisher.delegateSubscribe(Publisher.java:2414) [servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.ReduceSingle.handleSubscribe(ReduceSingle.java:76) [servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.Single.delegateSubscribe(Single.java:1498) [servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.SingleFlatMapPublisher.handleSubscribe(SingleFlatMapPublisher.java:44) [servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.Publisher.delegateSubscribe(Publisher.java:2414) [servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.AbstractSynchronousPublisherOperator.handleSubscribe(AbstractSynchronousPublisherOperator.java:48) [servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.Publisher.lambda$subscribeWithContext$10(Publisher.java:2436) [servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.ContextPreservingConsumer.accept(ContextPreservingConsumer.java:37) [servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.NoopOffloader.offloadSubscribe(NoopOffloader.java:68) [servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.Publisher.subscribeWithContext(Publisher.java:2435) [servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.Publisher.subscribeInternal(Publisher.java:2206) [servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.AbstractNoHandleSubscribePublisher.subscribe(AbstractNoHandleSubscribePublisher.java:52) [servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.transport.netty.internal.DefaultNettyConnection$2.handleSubscribe(DefaultNettyConnection.java:313) [servicetalk-transport-netty-internal-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.Completable.handleSubscribe(Completable.java:1564) [servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.Completable.delegateSubscribe(Completable.java:1520) [servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.AbstractSynchronousCompletableOperator.handleSubscribe(AbstractSynchronousCompletableOperator.java:46) [servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.Completable.delegateSubscribe(Completable.java:1520) [servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.ResumeCompletable.handleSubscribe(ResumeCompletable.java:44) [servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.Completable.delegateSubscribe(Completable.java:1520) [servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.AbstractSynchronousCompletableOperator.handleSubscribe(AbstractSynchronousCompletableOperator.java:46) [servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.CompletableSubscribeShareContext.handleSubscribe(CompletableSubscribeShareContext.java:34) [servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.Completable.lambda$subscribeWithContext$0(Completable.java:1541) [servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.ContextPreservingConsumer.accept(ContextPreservingConsumer.java:37) [servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.NoopOffloader.offloadSubscribe(NoopOffloader.java:80) [servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.Completable.subscribeWithContext(Completable.java:1540) [servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.Completable.subscribeInternal(Completable.java:1137) [servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.CompletableDefer.handleSubscribe(CompletableDefer.java:47) [servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.Completable.handleSubscribe(Completable.java:1564) [servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.Completable.lambda$subscribeWithContext$0(Completable.java:1541) [servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.ContextPreservingConsumer.accept(ContextPreservingConsumer.java:37) [servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.NoopOffloader.offloadSubscribe(NoopOffloader.java:80) [servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.Completable.subscribeWithContext(Completable.java:1540) [servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.Completable.subscribeInternal(Completable.java:1137) [servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.CompletableDefer.subscribe(CompletableDefer.java:52) [servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.transport.netty.internal.DefaultNettyPipelinedConnection$WriteQueue.execute(DefaultNettyPipelinedConnection.java:235) [servicetalk-transport-netty-internal-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.transport.netty.internal.DefaultNettyPipelinedConnection$WriteQueue.execute(DefaultNettyPipelinedConnection.java:222) [servicetalk-transport-netty-internal-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.transport.netty.internal.SequentialTaskQueue.executeNextTask(SequentialTaskQueue.java:108) [servicetalk-transport-netty-internal-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.transport.netty.internal.SequentialTaskQueue.postTaskTermination(SequentialTaskQueue.java:84) [servicetalk-transport-netty-internal-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.transport.netty.internal.DefaultNettyPipelinedConnection$WriteSourceSubscriber.safePostTaskTermination(DefaultNettyPipelinedConnection.java:339) [servicetalk-transport-netty-internal-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.transport.netty.internal.DefaultNettyPipelinedConnection$WriteSourceSubscriber.onComplete(DefaultNettyPipelinedConnection.java:311) [servicetalk-transport-netty-internal-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.ContextPreservingCancellableCompletableSubscriber.onComplete(ContextPreservingCancellableCompletableSubscriber.java:41) [servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.ContextPreservingCompletableSubscriber.onComplete(ContextPreservingCompletableSubscriber.java:49) [servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.ContextPreservingCancellableCompletableSubscriber.onComplete(ContextPreservingCancellableCompletableSubscriber.java:41) [servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.AfterFinallyCompletable$AfterFinallyCompletableSubscriber.onComplete(AfterFinallyCompletable.java:60) [servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.ResumeCompletable$ResumeSubscriber.onComplete(ResumeCompletable.java:83) [servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.BeforeFinallyCompletable$BeforeFinallyCompletableSubscriber.onComplete(BeforeFinallyCompletable.java:65) [servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.ContextPreservingCompletableSubscriber.onComplete(ContextPreservingCompletableSubscriber.java:49) [servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.transport.netty.internal.WriteStreamSubscriber$AllWritesPromise.terminateSubscriber(WriteStreamSubscriber.java:394) [servicetalk-transport-netty-internal-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.transport.netty.internal.WriteStreamSubscriber$AllWritesPromise.sourceTerminated(WriteStreamSubscriber.java:284) [servicetalk-transport-netty-internal-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.transport.netty.internal.WriteStreamSubscriber.onComplete(WriteStreamSubscriber.java:179) [servicetalk-transport-netty-internal-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.ContextPreservingSubscriptionSubscriber.onComplete(ContextPreservingSubscriptionSubscriber.java:56) [servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.transport.netty.internal.Flush$FlushSubscriber.onComplete(Flush.java:130) [servicetalk-transport-netty-internal-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.SingleFlatMapPublisher$SubscriberImpl.onComplete(SingleFlatMapPublisher.java:111) [servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.ContextPreservingSubscriber.onComplete(ContextPreservingSubscriber.java:71) [servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.ContextPreservingSubscriptionSubscriber.onComplete(ContextPreservingSubscriptionSubscriber.java:56) [servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.ContextPreservingSubscriber.onComplete(ContextPreservingSubscriber.java:71) [servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.FromArrayPublisher$FromArraySubscription.sendComplete(FromArrayPublisher.java:113) [servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.FromArrayPublisher$FromArraySubscription.request(FromArrayPublisher.java:89) [servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.ContextPreservingSubscription.request(ContextPreservingSubscription.java:43) [servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.CancellableThenSubscription.request(CancellableThenSubscription.java:62) [servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.transport.netty.internal.Flush$FlushSubscriber$1.request(Flush.java:86) [servicetalk-transport-netty-internal-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.ContextPreservingSubscription.request(ContextPreservingSubscription.java:43) [servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.internal.ConcurrentSubscription.request(ConcurrentSubscription.java:122) [servicetalk-concurrent-internal-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.transport.netty.internal.WriteStreamSubscriber.requestMoreIfRequired(WriteStreamSubscriber.java:245) [servicetalk-transport-netty-internal-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.transport.netty.internal.WriteStreamSubscriber.lambda$onSubscribe$0(WriteStreamSubscriber.java:126) [servicetalk-transport-netty-internal-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    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.epoll.EpollEventLoop.run(EpollEventLoop.java:338) [netty-transport-native-epoll-4.1.36.Final-linux-x86_64.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 io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30) [netty-common-4.1.36.Final.jar:4.1.36.Final]
    at java.lang.Thread.run(Thread.java:834) [?:?]
Caused by: io.netty.channel.unix.Errors$NativeIoException: syscall:writev(..) failed: Broken pipe
    at io.netty.channel.unix.FileDescriptor.writeAddresses(..)(Unknown Source) ~[netty-transport-native-unix-common-4.1.36.Final.jar:4.1.36.Final]
2019-06-28 03:04:22,486              Time-limited test [INFO ] ClientClosureRaceTest          - Completed 12 requests
2019-06-28 03:04:24,356              Time-limited test [INFO ] ClientClosureRaceTest          - Completed 1000 requests
NiteshKant commented 5 years ago

Another failure:

https://ci.servicetalk.io/job/servicetalk-snapshot/630/testReport/io.servicetalk.http.netty/ClientClosureRaceTest/testPipelinedPosts/

io.servicetalk.http.netty.ClientClosureRaceTest.testPipelinedPosts
Error Message

java.util.concurrent.ExecutionException: io.netty.channel.socket.ChannelOutputShutdownException: Channel output shutdown
Stacktrace

java.util.concurrent.ExecutionException: io.netty.channel.socket.ChannelOutputShutdownException: Channel output shutdown
    at io.servicetalk.concurrent.api.SourceToFuture.reportGet(SourceToFuture.java:121)
    at io.servicetalk.concurrent.api.SourceToFuture.get(SourceToFuture.java:92)
    at io.servicetalk.http.netty.ClientClosureRaceTest.runIterations(ClientClosureRaceTest.java:148)
    at io.servicetalk.http.netty.ClientClosureRaceTest.testPipelinedPosts(ClientClosureRaceTest.java:137)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:498)
    at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:50)
    at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
    at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:47)
    at org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:17)
    at org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:26)
    at org.junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:27)
    at io.servicetalk.concurrent.internal.ServiceTalkTestTimeout$TimeoutStatement$CallableStatement.call(ServiceTalkTestTimeout.java:171)
    at io.servicetalk.concurrent.internal.ServiceTalkTestTimeout$TimeoutStatement$CallableStatement.call(ServiceTalkTestTimeout.java:163)
    at java.util.concurrent.FutureTask.run(FutureTask.java:266)
    at java.lang.Thread.run(Thread.java:748)
Caused by: io.netty.channel.socket.ChannelOutputShutdownException: Channel output shutdown
    at io.netty.channel.AbstractChannel$AbstractUnsafe.shutdownOutput(AbstractChannel.java:635)
    at io.netty.channel.AbstractChannel$AbstractUnsafe.flush0(AbstractChannel.java:943)
    at io.netty.channel.epoll.AbstractEpollChannel$AbstractEpollUnsafe.flush0(AbstractEpollChannel.java:514)
    at io.netty.channel.AbstractChannel$AbstractUnsafe.flush(AbstractChannel.java:895)
    at io.netty.channel.DefaultChannelPipeline$HeadContext.flush(DefaultChannelPipeline.java:1370)
    at io.netty.channel.AbstractChannelHandlerContext.invokeFlush0(AbstractChannelHandlerContext.java:749)
    at io.netty.channel.AbstractChannelHandlerContext.invokeFlush(AbstractChannelHandlerContext.java:741)
    at io.netty.channel.AbstractChannelHandlerContext.flush(AbstractChannelHandlerContext.java:727)
    at io.netty.channel.DefaultChannelPipeline.flush(DefaultChannelPipeline.java:978)
    at io.netty.channel.AbstractChannel.flush(AbstractChannel.java:241)
    at io.servicetalk.transport.netty.internal.Flush$FlushSubscriber.lambda$new$0(Flush.java:68)
    at io.servicetalk.transport.netty.internal.FlushOnEnd$1.writeTerminated(FlushOnEnd.java:31)
    at io.servicetalk.transport.netty.internal.Flush$FlushSubscriber.onComplete(Flush.java:125)
    at io.servicetalk.concurrent.api.SingleFlatMapPublisher$SubscriberImpl.onComplete(SingleFlatMapPublisher.java:111)
    at io.servicetalk.concurrent.api.ContextPreservingSubscriber.onComplete(ContextPreservingSubscriber.java:71)
    at io.servicetalk.concurrent.api.ContextPreservingSubscriptionSubscriber.onComplete(ContextPreservingSubscriptionSubscriber.java:56)
    at io.servicetalk.concurrent.api.ContextPreservingSubscriber.onComplete(ContextPreservingSubscriber.java:71)
    at io.servicetalk.concurrent.api.FromArrayPublisher$FromArraySubscription.sendComplete(FromArrayPublisher.java:113)
    at io.servicetalk.concurrent.api.FromArrayPublisher$FromArraySubscription.request(FromArrayPublisher.java:89)
    at io.servicetalk.concurrent.api.ContextPreservingSubscription.request(ContextPreservingSubscription.java:43)
    at io.servicetalk.concurrent.api.CancellableThenSubscription.setSubscription(CancellableThenSubscription.java:108)
    at io.servicetalk.concurrent.api.SingleFlatMapPublisher$SubscriberImpl.onSubscribe(SingleFlatMapPublisher.java:75)
    at io.servicetalk.concurrent.api.ContextPreservingSubscriber.onSubscribe(ContextPreservingSubscriber.java:38)
    at io.servicetalk.concurrent.api.ContextPreservingSubscriptionSubscriber.onSubscribe(ContextPreservingSubscriptionSubscriber.java:41)
    at io.servicetalk.concurrent.api.ContextPreservingSubscriber.onSubscribe(ContextPreservingSubscriber.java:38)
    at io.servicetalk.concurrent.api.FromArrayPublisher.doSubscribe(FromArrayPublisher.java:45)
    at io.servicetalk.concurrent.api.AbstractSynchronousPublisher.handleSubscribe(AbstractSynchronousPublisher.java:36)
    at io.servicetalk.concurrent.api.Publisher.lambda$subscribeWithContext$10(Publisher.java:2436)
    at io.servicetalk.concurrent.api.ContextPreservingConsumer.accept(ContextPreservingConsumer.java:37)
    at io.servicetalk.concurrent.api.NoopOffloader.offloadSubscribe(NoopOffloader.java:68)
    at io.servicetalk.concurrent.api.Publisher.subscribeWithContext(Publisher.java:2435)
    at io.servicetalk.concurrent.api.Publisher.subscribeInternal(Publisher.java:2206)
    at io.servicetalk.concurrent.api.SingleFlatMapPublisher$SubscriberImpl.onSuccess(SingleFlatMapPublisher.java:95)
    at io.servicetalk.concurrent.api.ReduceSingle$ReduceSubscriber.onComplete(ReduceSingle.java:114)
    at io.servicetalk.concurrent.api.ContextPreservingSubscriptionSubscriber.onComplete(ContextPreservingSubscriptionSubscriber.java:56)
    at io.servicetalk.concurrent.api.FilterPublisher$1.onComplete(FilterPublisher.java:72)
    at io.servicetalk.concurrent.api.ContextPreservingSubscriber.onComplete(ContextPreservingSubscriber.java:71)
    at io.servicetalk.concurrent.internal.ScalarValueSubscription.request(ScalarValueSubscription.java:71)
    at io.servicetalk.concurrent.internal.ConcurrentSubscription.request(ConcurrentSubscription.java:122)
    at io.servicetalk.concurrent.api.ContextPreservingSubscription.request(ContextPreservingSubscription.java:43)
    at io.servicetalk.concurrent.internal.ConcurrentSubscription.request(ConcurrentSubscription.java:122)
    at io.servicetalk.concurrent.api.ReduceSingle$ReduceSubscriber.onSubscribe(ReduceSingle.java:97)
    at io.servicetalk.concurrent.api.ContextPreservingSubscriptionSubscriber.onSubscribe(ContextPreservingSubscriptionSubscriber.java:41)
    at io.servicetalk.concurrent.api.FilterPublisher$1.onSubscribe(FilterPublisher.java:49)
    at io.servicetalk.concurrent.api.ContextPreservingSubscriber.onSubscribe(ContextPreservingSubscriber.java:38)
    at io.servicetalk.concurrent.api.FromSingleItemPublisher.doSubscribe(FromSingleItemPublisher.java:38)
    at io.servicetalk.concurrent.api.AbstractSynchronousPublisher.handleSubscribe(AbstractSynchronousPublisher.java:36)
    at io.servicetalk.concurrent.api.Publisher.delegateSubscribe(Publisher.java:2414)
    at io.servicetalk.concurrent.api.AbstractSynchronousPublisherOperator.handleSubscribe(AbstractSynchronousPublisherOperator.java:48)
    at io.servicetalk.concurrent.api.Publisher.delegateSubscribe(Publisher.java:2414)
    at io.servicetalk.concurrent.api.ReduceSingle.handleSubscribe(ReduceSingle.java:76)
    at io.servicetalk.concurrent.api.Single.delegateSubscribe(Single.java:1498)
    at io.servicetalk.concurrent.api.SingleFlatMapPublisher.handleSubscribe(SingleFlatMapPublisher.java:44)
    at io.servicetalk.concurrent.api.Publisher.delegateSubscribe(Publisher.java:2414)
    at io.servicetalk.concurrent.api.AbstractSynchronousPublisherOperator.handleSubscribe(AbstractSynchronousPublisherOperator.java:48)
    at io.servicetalk.concurrent.api.Publisher.lambda$subscribeWithContext$10(Publisher.java:2436)
    at io.servicetalk.concurrent.api.ContextPreservingConsumer.accept(ContextPreservingConsumer.java:37)
    at io.servicetalk.concurrent.api.NoopOffloader.offloadSubscribe(NoopOffloader.java:68)
    at io.servicetalk.concurrent.api.Publisher.subscribeWithContext(Publisher.java:2435)
    at io.servicetalk.concurrent.api.Publisher.subscribeInternal(Publisher.java:2206)
    at io.servicetalk.concurrent.api.AbstractNoHandleSubscribePublisher.subscribe(AbstractNoHandleSubscribePublisher.java:52)
    at io.servicetalk.transport.netty.internal.DefaultNettyConnection$2.handleSubscribe(DefaultNettyConnection.java:313)
    at io.servicetalk.concurrent.api.Completable.handleSubscribe(Completable.java:1564)
    at io.servicetalk.concurrent.api.Completable.delegateSubscribe(Completable.java:1520)
    at io.servicetalk.concurrent.api.AbstractSynchronousCompletableOperator.handleSubscribe(AbstractSynchronousCompletableOperator.java:46)
    at io.servicetalk.concurrent.api.Completable.delegateSubscribe(Completable.java:1520)
    at io.servicetalk.concurrent.api.ResumeCompletable.handleSubscribe(ResumeCompletable.java:44)
    at io.servicetalk.concurrent.api.Completable.delegateSubscribe(Completable.java:1520)
    at io.servicetalk.concurrent.api.AbstractSynchronousCompletableOperator.handleSubscribe(AbstractSynchronousCompletableOperator.java:46)
    at io.servicetalk.concurrent.api.CompletableSubscribeShareContext.handleSubscribe(CompletableSubscribeShareContext.java:34)
    at io.servicetalk.concurrent.api.Completable.lambda$subscribeWithContext$0(Completable.java:1541)
    at io.servicetalk.concurrent.api.ContextPreservingConsumer.accept(ContextPreservingConsumer.java:37)
    at io.servicetalk.concurrent.api.NoopOffloader.offloadSubscribe(NoopOffloader.java:80)
    at io.servicetalk.concurrent.api.Completable.subscribeWithContext(Completable.java:1540)
    at io.servicetalk.concurrent.api.Completable.subscribeInternal(Completable.java:1137)
    at io.servicetalk.concurrent.api.CompletableDefer.handleSubscribe(CompletableDefer.java:47)
    at io.servicetalk.concurrent.api.Completable.handleSubscribe(Completable.java:1564)
    at io.servicetalk.concurrent.api.Completable.lambda$subscribeWithContext$0(Completable.java:1541)
    at io.servicetalk.concurrent.api.ContextPreservingConsumer.accept(ContextPreservingConsumer.java:37)
    at io.servicetalk.concurrent.api.NoopOffloader.offloadSubscribe(NoopOffloader.java:80)
    at io.servicetalk.concurrent.api.Completable.subscribeWithContext(Completable.java:1540)
    at io.servicetalk.concurrent.api.Completable.subscribeInternal(Completable.java:1137)
    at io.servicetalk.concurrent.api.CompletableDefer.subscribe(CompletableDefer.java:52)
    at io.servicetalk.transport.netty.internal.DefaultNettyPipelinedConnection$WriteQueue.execute(DefaultNettyPipelinedConnection.java:244)
    at io.servicetalk.transport.netty.internal.DefaultNettyPipelinedConnection$WriteQueue.execute(DefaultNettyPipelinedConnection.java:231)
    at io.servicetalk.transport.netty.internal.SequentialTaskQueue.executeNextTask(SequentialTaskQueue.java:108)
    at io.servicetalk.transport.netty.internal.SequentialTaskQueue.postTaskTermination(SequentialTaskQueue.java:84)
    at io.servicetalk.transport.netty.internal.DefaultNettyPipelinedConnection$WriteSourceSubscriber.safePostTaskTermination(DefaultNettyPipelinedConnection.java:348)
    at io.servicetalk.transport.netty.internal.DefaultNettyPipelinedConnection$WriteSourceSubscriber.onComplete(DefaultNettyPipelinedConnection.java:320)
    at io.servicetalk.concurrent.api.ContextPreservingCancellableCompletableSubscriber.onComplete(ContextPreservingCancellableCompletableSubscriber.java:41)
    at io.servicetalk.concurrent.api.ContextPreservingCompletableSubscriber.onComplete(ContextPreservingCompletableSubscriber.java:49)
    at io.servicetalk.concurrent.api.ContextPreservingCancellableCompletableSubscriber.onComplete(ContextPreservingCancellableCompletableSubscriber.java:41)
    at io.servicetalk.concurrent.api.AfterFinallyCompletable$AfterFinallyCompletableSubscriber.onComplete(AfterFinallyCompletable.java:60)
    at io.servicetalk.concurrent.api.ResumeCompletable$ResumeSubscriber.onComplete(ResumeCompletable.java:82)
    at io.servicetalk.concurrent.api.BeforeFinallyCompletable$BeforeFinallyCompletableSubscriber.onComplete(BeforeFinallyCompletable.java:65)
    at io.servicetalk.concurrent.api.ContextPreservingCompletableSubscriber.onComplete(ContextPreservingCompletableSubscriber.java:49)
    at io.servicetalk.transport.netty.internal.WriteStreamSubscriber$AllWritesPromise.terminateSubscriber(WriteStreamSubscriber.java:394)
    at io.servicetalk.transport.netty.internal.WriteStreamSubscriber$AllWritesPromise.sourceTerminated(WriteStreamSubscriber.java:284)
    at io.servicetalk.transport.netty.internal.WriteStreamSubscriber.onComplete(WriteStreamSubscriber.java:179)
    at io.servicetalk.concurrent.api.ContextPreservingSubscriptionSubscriber.onComplete(ContextPreservingSubscriptionSubscriber.java:56)
    at io.servicetalk.transport.netty.internal.Flush$FlushSubscriber.onComplete(Flush.java:130)
    at io.servicetalk.concurrent.api.SingleFlatMapPublisher$SubscriberImpl.onComplete(SingleFlatMapPublisher.java:111)
    at io.servicetalk.concurrent.api.ContextPreservingSubscriber.onComplete(ContextPreservingSubscriber.java:71)
    at io.servicetalk.concurrent.api.ContextPreservingSubscriptionSubscriber.onComplete(ContextPreservingSubscriptionSubscriber.java:56)
    at io.servicetalk.concurrent.api.ContextPreservingSubscriber.onComplete(ContextPreservingSubscriber.java:71)
    at io.servicetalk.concurrent.api.FromArrayPublisher$FromArraySubscription.sendComplete(FromArrayPublisher.java:113)
    at io.servicetalk.concurrent.api.FromArrayPublisher$FromArraySubscription.request(FromArrayPublisher.java:89)
    at io.servicetalk.concurrent.api.ContextPreservingSubscription.request(ContextPreservingSubscription.java:43)
    at io.servicetalk.concurrent.api.CancellableThenSubscription.request(CancellableThenSubscription.java:62)
    at io.servicetalk.transport.netty.internal.Flush$FlushSubscriber$1.request(Flush.java:86)
    at io.servicetalk.concurrent.api.ContextPreservingSubscription.request(ContextPreservingSubscription.java:43)
    at io.servicetalk.concurrent.internal.ConcurrentSubscription.request(ConcurrentSubscription.java:122)
    at io.servicetalk.transport.netty.internal.WriteStreamSubscriber.requestMoreIfRequired(WriteStreamSubscriber.java:245)
    at io.servicetalk.transport.netty.internal.WriteStreamSubscriber.lambda$onSubscribe$0(WriteStreamSubscriber.java:126)
    at io.netty.util.concurrent.AbstractEventExecutor.safeExecute(AbstractEventExecutor.java:163)
    at io.netty.util.concurrent.SingleThreadEventExecutor.runAllTasks(SingleThreadEventExecutor.java:416)
    at io.netty.channel.epoll.EpollEventLoop.run(EpollEventLoop.java:331)
    at io.netty.util.concurrent.SingleThreadEventExecutor$5.run(SingleThreadEventExecutor.java:918)
    at io.netty.util.internal.ThreadExecutorMap$2.run(ThreadExecutorMap.java:74)
    at io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30)
    ... 1 more
Caused by: io.netty.channel.unix.Errors$NativeIoException: writevAddresses(..) failed: Broken pipe
Standard Output

2019-06-28 22:00:28,337              Time-limited test [INFO ] ClientClosureRaceTest          - Completed 51 requests
2019-06-28 22:00:28,757              Time-limited test [INFO ] ClientClosureRaceTest          - Completed 171 requests
2019-06-28 22:00:28,765 servicetalk-global-io-executor-2-10 [WARN ] ChannelOutboundBuffer          - Failed to mark a promise as failure because it has failed already: WriteStreamSubscriber$AllWritesPromise@72818f9b(failure: io.netty.channel.socket.ChannelOutputShutdownException: Channel output shutdown), unnotified cause: io.netty.channel.socket.ChannelOutputShutdownException: Channel output shutdown
    at io.netty.channel.AbstractChannel$AbstractUnsafe.shutdownOutput(AbstractChannel.java:635)
    at io.netty.channel.AbstractChannel$AbstractUnsafe.flush0(AbstractChannel.java:943)
    at io.netty.channel.epoll.AbstractEpollChannel$AbstractEpollUnsafe.flush0(AbstractEpollChannel.java:514)
    at io.netty.channel.AbstractChannel$AbstractUnsafe.flush(AbstractChannel.java:895)
    at io.netty.channel.DefaultChannelPipeline$HeadContext.flush(DefaultChannelPipeline.java:1370)
    at io.netty.channel.AbstractChannelHandlerContext.invokeFlush0(AbstractChannelHandlerContext.java:749)
    at io.netty.channel.AbstractChannelHandlerContext.invokeFlush(AbstractChannelHandlerContext.java:741)
    at io.netty.channel.AbstractChannelHandlerContext.flush(AbstractChannelHandlerContext.java:727)
    at io.netty.channel.DefaultChannelPipeline.flush(DefaultChannelPipeline.java:978)
    at io.netty.channel.AbstractChannel.flush(AbstractChannel.java:241)
    at io.servicetalk.transport.netty.internal.Flush$FlushSubscriber.lambda$new$0(Flush.java:68)
    at io.servicetalk.transport.netty.internal.FlushOnEnd$1.writeTerminated(FlushOnEnd.java:31)
    at io.servicetalk.transport.netty.internal.Flush$FlushSubscriber.onComplete(Flush.java:125)
    at io.servicetalk.concurrent.api.SingleFlatMapPublisher$SubscriberImpl.onComplete(SingleFlatMapPublisher.java:111)
    at io.servicetalk.concurrent.api.ContextPreservingSubscriber.onComplete(ContextPreservingSubscriber.java:71)
    at io.servicetalk.concurrent.api.ContextPreservingSubscriptionSubscriber.onComplete(ContextPreservingSubscriptionSubscriber.java:56)
    at io.servicetalk.concurrent.api.ContextPreservingSubscriber.onComplete(ContextPreservingSubscriber.java:71)
    at io.servicetalk.concurrent.api.FromArrayPublisher$FromArraySubscription.sendComplete(FromArrayPublisher.java:113)
    at io.servicetalk.concurrent.api.FromArrayPublisher$FromArraySubscription.request(FromArrayPublisher.java:89)
    at io.servicetalk.concurrent.api.ContextPreservingSubscription.request(ContextPreservingSubscription.java:43)
    at io.servicetalk.concurrent.api.CancellableThenSubscription.setSubscription(CancellableThenSubscription.java:108)
    at io.servicetalk.concurrent.api.SingleFlatMapPublisher$SubscriberImpl.onSubscribe(SingleFlatMapPublisher.java:75)
    at io.servicetalk.concurrent.api.ContextPreservingSubscriber.onSubscribe(ContextPreservingSubscriber.java:38)
    at io.servicetalk.concurrent.api.ContextPreservingSubscriptionSubscriber.onSubscribe(ContextPreservingSubscriptionSubscriber.java:41)
    at io.servicetalk.concurrent.api.ContextPreservingSubscriber.onSubscribe(ContextPreservingSubscriber.java:38)
    at io.servicetalk.concurrent.api.FromArrayPublisher.doSubscribe(FromArrayPublisher.java:45)
    at io.servicetalk.concurrent.api.AbstractSynchronousPublisher.handleSubscribe(AbstractSynchronousPublisher.java:36)
    at io.servicetalk.concurrent.api.Publisher.lambda$subscribeWithContext$10(Publisher.java:2436)
    at io.servicetalk.concurrent.api.ContextPreservingConsumer.accept(ContextPreservingConsumer.java:37)
    at io.servicetalk.concurrent.api.NoopOffloader.offloadSubscribe(NoopOffloader.java:68)
    at io.servicetalk.concurrent.api.Publisher.subscribeWithContext(Publisher.java:2435)
    at io.servicetalk.concurrent.api.Publisher.subscribeInternal(Publisher.java:2206)
    at io.servicetalk.concurrent.api.SingleFlatMapPublisher$SubscriberImpl.onSuccess(SingleFlatMapPublisher.java:95)
    at io.servicetalk.concurrent.api.ReduceSingle$ReduceSubscriber.onComplete(ReduceSingle.java:114)
    at io.servicetalk.concurrent.api.ContextPreservingSubscriptionSubscriber.onComplete(ContextPreservingSubscriptionSubscriber.java:56)
    at io.servicetalk.concurrent.api.FilterPublisher$1.onComplete(FilterPublisher.java:72)
    at io.servicetalk.concurrent.api.ContextPreservingSubscriber.onComplete(ContextPreservingSubscriber.java:71)
    at io.servicetalk.concurrent.internal.ScalarValueSubscription.request(ScalarValueSubscription.java:71)
    at io.servicetalk.concurrent.internal.ConcurrentSubscription.request(ConcurrentSubscription.java:122)
    at io.servicetalk.concurrent.api.ContextPreservingSubscription.request(ContextPreservingSubscription.java:43)
    at io.servicetalk.concurrent.internal.ConcurrentSubscription.request(ConcurrentSubscription.java:122)
    at io.servicetalk.concurrent.api.ReduceSingle$ReduceSubscriber.onSubscribe(ReduceSingle.java:97)
    at io.servicetalk.concurrent.api.ContextPreservingSubscriptionSubscriber.onSubscribe(ContextPreservingSubscriptionSubscriber.java:41)
    at io.servicetalk.concurrent.api.FilterPublisher$1.onSubscribe(FilterPublisher.java:49)
    at io.servicetalk.concurrent.api.ContextPreservingSubscriber.onSubscribe(ContextPreservingSubscriber.java:38)
    at io.servicetalk.concurrent.api.FromSingleItemPublisher.doSubscribe(FromSingleItemPublisher.java:38)
    at io.servicetalk.concurrent.api.AbstractSynchronousPublisher.handleSubscribe(AbstractSynchronousPublisher.java:36)
    at io.servicetalk.concurrent.api.Publisher.delegateSubscribe(Publisher.java:2414)
    at io.servicetalk.concurrent.api.AbstractSynchronousPublisherOperator.handleSubscribe(AbstractSynchronousPublisherOperator.java:48)
    at io.servicetalk.concurrent.api.Publisher.delegateSubscribe(Publisher.java:2414)
    at io.servicetalk.concurrent.api.ReduceSingle.handleSubscribe(ReduceSingle.java:76)
    at io.servicetalk.concurrent.api.Single.delegateSubscribe(Single.java:1498)
    at io.servicetalk.concurrent.api.SingleFlatMapPublisher.handleSubscribe(SingleFlatMapPublisher.java:44)
    at io.servicetalk.concurrent.api.Publisher.delegateSubscribe(Publisher.java:2414)
    at io.servicetalk.concurrent.api.AbstractSynchronousPublisherOperator.handleSubscribe(AbstractSynchronousPublisherOperator.java:48)
    at io.servicetalk.concurrent.api.Publisher.lambda$subscribeWithContext$10(Publisher.java:2436)
    at io.servicetalk.concurrent.api.ContextPreservingConsumer.accept(ContextPreservingConsumer.java:37)
    at io.servicetalk.concurrent.api.NoopOffloader.offloadSubscribe(NoopOffloader.java:68)
    at io.servicetalk.concurrent.api.Publisher.subscribeWithContext(Publisher.java:2435)
    at io.servicetalk.concurrent.api.Publisher.subscribeInternal(Publisher.java:2206)
    at io.servicetalk.concurrent.api.AbstractNoHandleSubscribePublisher.subscribe(AbstractNoHandleSubscribePublisher.java:52)
    at io.servicetalk.transport.netty.internal.DefaultNettyConnection$2.handleSubscribe(DefaultNettyConnection.java:313)
    at io.servicetalk.concurrent.api.Completable.handleSubscribe(Completable.java:1564)
    at io.servicetalk.concurrent.api.Completable.delegateSubscribe(Completable.java:1520)
    at io.servicetalk.concurrent.api.AbstractSynchronousCompletableOperator.handleSubscribe(AbstractSynchronousCompletableOperator.java:46)
    at io.servicetalk.concurrent.api.Completable.delegateSubscribe(Completable.java:1520)
    at io.servicetalk.concurrent.api.ResumeCompletable.handleSubscribe(ResumeCompletable.java:44)
    at io.servicetalk.concurrent.api.Completable.delegateSubscribe(Completable.java:1520)
    at io.servicetalk.concurrent.api.AbstractSynchronousCompletableOperator.handleSubscribe(AbstractSynchronousCompletableOperator.java:46)
    at io.servicetalk.concurrent.api.CompletableSubscribeShareContext.handleSubscribe(CompletableSubscribeShareContext.java:34)
    at io.servicetalk.concurrent.api.Completable.lambda$subscribeWithContext$0(Completable.java:1541)
    at io.servicetalk.concurrent.api.ContextPreservingConsumer.accept(ContextPreservingConsumer.java:37)
    at io.servicetalk.concurrent.api.NoopOffloader.offloadSubscribe(NoopOffloader.java:80)
    at io.servicetalk.concurrent.api.Completable.subscribeWithContext(Completable.java:1540)
    at io.servicetalk.concurrent.api.Completable.subscribeInternal(Completable.java:1137)
    at io.servicetalk.concurrent.api.CompletableDefer.handleSubscribe(CompletableDefer.java:47)
    at io.servicetalk.concurrent.api.Completable.handleSubscribe(Completable.java:1564)
    at io.servicetalk.concurrent.api.Completable.lambda$subscribeWithContext$0(Completable.java:1541)
    at io.servicetalk.concurrent.api.ContextPreservingConsumer.accept(ContextPreservingConsumer.java:37)
    at io.servicetalk.concurrent.api.NoopOffloader.offloadSubscribe(NoopOffloader.java:80)
    at io.servicetalk.concurrent.api.Completable.subscribeWithContext(Completable.java:1540)
    at io.servicetalk.concurrent.api.Completable.subscribeInternal(Completable.java:1137)
    at io.servicetalk.concurrent.api.CompletableDefer.subscribe(CompletableDefer.java:52)
    at io.servicetalk.transport.netty.internal.DefaultNettyPipelinedConnection$WriteQueue.execute(DefaultNettyPipelinedConnection.java:244)
    at io.servicetalk.transport.netty.internal.DefaultNettyPipelinedConnection$WriteQueue.execute(DefaultNettyPipelinedConnection.java:231)
    at io.servicetalk.transport.netty.internal.SequentialTaskQueue.executeNextTask(SequentialTaskQueue.java:108)
    at io.servicetalk.transport.netty.internal.SequentialTaskQueue.postTaskTermination(SequentialTaskQueue.java:84)
    at io.servicetalk.transport.netty.internal.DefaultNettyPipelinedConnection$WriteSourceSubscriber.safePostTaskTermination(DefaultNettyPipelinedConnection.java:348)
    at io.servicetalk.transport.netty.internal.DefaultNettyPipelinedConnection$WriteSourceSubscriber.onComplete(DefaultNettyPipelinedConnection.java:320)
    at io.servicetalk.concurrent.api.ContextPreservingCancellableCompletableSubscriber.onComplete(ContextPreservingCancellableCompletableSubscriber.java:41)
    at io.servicetalk.concurrent.api.ContextPreservingCompletableSubscriber.onComplete(ContextPreservingCompletableSubscriber.java:49)
    at io.servicetalk.concurrent.api.ContextPreservingCancellableCompletableSubscriber.onComplete(ContextPreservingCancellableCompletableSubscriber.java:41)
    at io.servicetalk.concurrent.api.AfterFinallyCompletable$AfterFinallyCompletableSubscriber.onComplete(AfterFinallyCompletable.java:60)
    at io.servicetalk.concurrent.api.ResumeCompletable$ResumeSubscriber.onComplete(ResumeCompletable.java:82)
    at io.servicetalk.concurrent.api.BeforeFinallyCompletable$BeforeFinallyCompletableSubscriber.onComplete(BeforeFinallyCompletable.java:65)
    at io.servicetalk.concurrent.api.ContextPreservingCompletableSubscriber.onComplete(ContextPreservingCompletableSubscriber.java:49)
    at io.servicetalk.transport.netty.internal.WriteStreamSubscriber$AllWritesPromise.terminateSubscriber(WriteStreamSubscriber.java:394)
    at io.servicetalk.transport.netty.internal.WriteStreamSubscriber$AllWritesPromise.sourceTerminated(WriteStreamSubscriber.java:284)
    at io.servicetalk.transport.netty.internal.WriteStreamSubscriber.onComplete(WriteStreamSubscriber.java:179)
    at io.servicetalk.concurrent.api.ContextPreservingSubscriptionSubscriber.onComplete(ContextPreservingSubscriptionSubscriber.java:56)
    at io.servicetalk.transport.netty.internal.Flush$FlushSubscriber.onComplete(Flush.java:130)
    at io.servicetalk.concurrent.api.SingleFlatMapPublisher$SubscriberImpl.onComplete(SingleFlatMapPublisher.java:111)
    at io.servicetalk.concurrent.api.ContextPreservingSubscriber.onComplete(ContextPreservingSubscriber.java:71)
    at io.servicetalk.concurrent.api.ContextPreservingSubscriptionSubscriber.onComplete(ContextPreservingSubscriptionSubscriber.java:56)
    at io.servicetalk.concurrent.api.ContextPreservingSubscriber.onComplete(ContextPreservingSubscriber.java:71)
    at io.servicetalk.concurrent.api.FromArrayPublisher$FromArraySubscription.sendComplete(FromArrayPublisher.java:113)
    at io.servicetalk.concurrent.api.FromArrayPublisher$FromArraySubscription.request(FromArrayPublisher.java:89)
    at io.servicetalk.concurrent.api.ContextPreservingSubscription.request(ContextPreservingSubscription.java:43)
    at io.servicetalk.concurrent.api.CancellableThenSubscription.request(CancellableThenSubscription.java:62)
    at io.servicetalk.transport.netty.internal.Flush$FlushSubscriber$1.request(Flush.java:86)
    at io.servicetalk.concurrent.api.ContextPreservingSubscription.request(ContextPreservingSubscription.java:43)
    at io.servicetalk.concurrent.internal.ConcurrentSubscription.request(ConcurrentSubscription.java:122)
    at io.servicetalk.transport.netty.internal.WriteStreamSubscriber.requestMoreIfRequired(WriteStreamSubscriber.java:245)
    at io.servicetalk.transport.netty.internal.WriteStreamSubscriber.lambda$onSubscribe$0(WriteStreamSubscriber.java:126)
    at io.netty.util.concurrent.AbstractEventExecutor.safeExecute(AbstractEventExecutor.java:163)
    at io.netty.util.concurrent.SingleThreadEventExecutor.runAllTasks(SingleThreadEventExecutor.java:416)
    at io.netty.channel.epoll.EpollEventLoop.run(EpollEventLoop.java:331)
    at io.netty.util.concurrent.SingleThreadEventExecutor$5.run(SingleThreadEventExecutor.java:918)
    at io.netty.util.internal.ThreadExecutorMap$2.run(ThreadExecutorMap.java:74)
    at io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30)
    at java.lang.Thread.run(Thread.java:748)
Caused by: io.netty.channel.unix.Errors$NativeIoException: writevAddresses(..) failed: Broken pipe

io.netty.channel.socket.ChannelOutputShutdownException: Channel output shutdown
    at io.netty.channel.AbstractChannel$AbstractUnsafe.shutdownOutput(AbstractChannel.java:635) ~[netty-transport-4.1.37.Final.jar:4.1.37.Final]
    at io.netty.channel.AbstractChannel$AbstractUnsafe.flush0(AbstractChannel.java:943) ~[netty-transport-4.1.37.Final.jar:4.1.37.Final]
    at io.netty.channel.epoll.AbstractEpollChannel$AbstractEpollUnsafe.flush0(AbstractEpollChannel.java:514) ~[netty-transport-native-epoll-4.1.37.Final-linux-x86_64.jar:4.1.37.Final]
    at io.netty.channel.AbstractChannel$AbstractUnsafe.flush(AbstractChannel.java:895) ~[netty-transport-4.1.37.Final.jar:4.1.37.Final]
    at io.netty.channel.DefaultChannelPipeline$HeadContext.flush(DefaultChannelPipeline.java:1370) ~[netty-transport-4.1.37.Final.jar:4.1.37.Final]
    at io.netty.channel.AbstractChannelHandlerContext.invokeFlush0(AbstractChannelHandlerContext.java:749) ~[netty-transport-4.1.37.Final.jar:4.1.37.Final]
    at io.netty.channel.AbstractChannelHandlerContext.invokeFlush(AbstractChannelHandlerContext.java:741) ~[netty-transport-4.1.37.Final.jar:4.1.37.Final]
    at io.netty.channel.AbstractChannelHandlerContext.flush(AbstractChannelHandlerContext.java:727) ~[netty-transport-4.1.37.Final.jar:4.1.37.Final]
    at io.netty.channel.DefaultChannelPipeline.flush(DefaultChannelPipeline.java:978) ~[netty-transport-4.1.37.Final.jar:4.1.37.Final]
    at io.netty.channel.AbstractChannel.flush(AbstractChannel.java:241) ~[netty-transport-4.1.37.Final.jar:4.1.37.Final]
    at io.servicetalk.transport.netty.internal.Flush$FlushSubscriber.lambda$new$0(Flush.java:68) ~[servicetalk-transport-netty-internal-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.transport.netty.internal.FlushOnEnd$1.writeTerminated(FlushOnEnd.java:31) ~[servicetalk-transport-netty-internal-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.transport.netty.internal.Flush$FlushSubscriber.onComplete(Flush.java:125) ~[servicetalk-transport-netty-internal-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.SingleFlatMapPublisher$SubscriberImpl.onComplete(SingleFlatMapPublisher.java:111) ~[servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.ContextPreservingSubscriber.onComplete(ContextPreservingSubscriber.java:71) ~[servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.ContextPreservingSubscriptionSubscriber.onComplete(ContextPreservingSubscriptionSubscriber.java:56) ~[servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.ContextPreservingSubscriber.onComplete(ContextPreservingSubscriber.java:71) ~[servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.FromArrayPublisher$FromArraySubscription.sendComplete(FromArrayPublisher.java:113) ~[servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.FromArrayPublisher$FromArraySubscription.request(FromArrayPublisher.java:89) ~[servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.ContextPreservingSubscription.request(ContextPreservingSubscription.java:43) ~[servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.CancellableThenSubscription.setSubscription(CancellableThenSubscription.java:108) ~[servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.SingleFlatMapPublisher$SubscriberImpl.onSubscribe(SingleFlatMapPublisher.java:75) ~[servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.ContextPreservingSubscriber.onSubscribe(ContextPreservingSubscriber.java:38) ~[servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.ContextPreservingSubscriptionSubscriber.onSubscribe(ContextPreservingSubscriptionSubscriber.java:41) ~[servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.ContextPreservingSubscriber.onSubscribe(ContextPreservingSubscriber.java:38) ~[servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.FromArrayPublisher.doSubscribe(FromArrayPublisher.java:45) ~[servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.AbstractSynchronousPublisher.handleSubscribe(AbstractSynchronousPublisher.java:36) ~[servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.Publisher.lambda$subscribeWithContext$10(Publisher.java:2436) ~[servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.ContextPreservingConsumer.accept(ContextPreservingConsumer.java:37) ~[servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.NoopOffloader.offloadSubscribe(NoopOffloader.java:68) ~[servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.Publisher.subscribeWithContext(Publisher.java:2435) ~[servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.Publisher.subscribeInternal(Publisher.java:2206) ~[servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.SingleFlatMapPublisher$SubscriberImpl.onSuccess(SingleFlatMapPublisher.java:95) ~[servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.ReduceSingle$ReduceSubscriber.onComplete(ReduceSingle.java:114) ~[servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.ContextPreservingSubscriptionSubscriber.onComplete(ContextPreservingSubscriptionSubscriber.java:56) ~[servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.FilterPublisher$1.onComplete(FilterPublisher.java:72) ~[servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.ContextPreservingSubscriber.onComplete(ContextPreservingSubscriber.java:71) ~[servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.internal.ScalarValueSubscription.request(ScalarValueSubscription.java:71) ~[servicetalk-concurrent-internal-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.internal.ConcurrentSubscription.request(ConcurrentSubscription.java:122) ~[servicetalk-concurrent-internal-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.ContextPreservingSubscription.request(ContextPreservingSubscription.java:43) ~[servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.internal.ConcurrentSubscription.request(ConcurrentSubscription.java:122) ~[servicetalk-concurrent-internal-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.ReduceSingle$ReduceSubscriber.onSubscribe(ReduceSingle.java:97) ~[servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.ContextPreservingSubscriptionSubscriber.onSubscribe(ContextPreservingSubscriptionSubscriber.java:41) ~[servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.FilterPublisher$1.onSubscribe(FilterPublisher.java:49) ~[servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.ContextPreservingSubscriber.onSubscribe(ContextPreservingSubscriber.java:38) ~[servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.FromSingleItemPublisher.doSubscribe(FromSingleItemPublisher.java:38) ~[servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.AbstractSynchronousPublisher.handleSubscribe(AbstractSynchronousPublisher.java:36) ~[servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.Publisher.delegateSubscribe(Publisher.java:2414) ~[servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.AbstractSynchronousPublisherOperator.handleSubscribe(AbstractSynchronousPublisherOperator.java:48) ~[servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.Publisher.delegateSubscribe(Publisher.java:2414) ~[servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.ReduceSingle.handleSubscribe(ReduceSingle.java:76) ~[servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.Single.delegateSubscribe(Single.java:1498) ~[servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.SingleFlatMapPublisher.handleSubscribe(SingleFlatMapPublisher.java:44) ~[servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.Publisher.delegateSubscribe(Publisher.java:2414) ~[servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.AbstractSynchronousPublisherOperator.handleSubscribe(AbstractSynchronousPublisherOperator.java:48) ~[servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.Publisher.lambda$subscribeWithContext$10(Publisher.java:2436) ~[servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.ContextPreservingConsumer.accept(ContextPreservingConsumer.java:37) ~[servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.NoopOffloader.offloadSubscribe(NoopOffloader.java:68) ~[servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.Publisher.subscribeWithContext(Publisher.java:2435) ~[servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.Publisher.subscribeInternal(Publisher.java:2206) ~[servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.AbstractNoHandleSubscribePublisher.subscribe(AbstractNoHandleSubscribePublisher.java:52) ~[servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.transport.netty.internal.DefaultNettyConnection$2.handleSubscribe(DefaultNettyConnection.java:313) ~[servicetalk-transport-netty-internal-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.Completable.handleSubscribe(Completable.java:1564) ~[servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.Completable.delegateSubscribe(Completable.java:1520) ~[servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.AbstractSynchronousCompletableOperator.handleSubscribe(AbstractSynchronousCompletableOperator.java:46) ~[servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.Completable.delegateSubscribe(Completable.java:1520) ~[servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.ResumeCompletable.handleSubscribe(ResumeCompletable.java:44) ~[servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.Completable.delegateSubscribe(Completable.java:1520) ~[servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.AbstractSynchronousCompletableOperator.handleSubscribe(AbstractSynchronousCompletableOperator.java:46) ~[servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.CompletableSubscribeShareContext.handleSubscribe(CompletableSubscribeShareContext.java:34) ~[servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.Completable.lambda$subscribeWithContext$0(Completable.java:1541) ~[servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.ContextPreservingConsumer.accept(ContextPreservingConsumer.java:37) ~[servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.NoopOffloader.offloadSubscribe(NoopOffloader.java:80) ~[servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.Completable.subscribeWithContext(Completable.java:1540) ~[servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.Completable.subscribeInternal(Completable.java:1137) ~[servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.CompletableDefer.handleSubscribe(CompletableDefer.java:47) ~[servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.Completable.handleSubscribe(Completable.java:1564) ~[servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.Completable.lambda$subscribeWithContext$0(Completable.java:1541) ~[servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.ContextPreservingConsumer.accept(ContextPreservingConsumer.java:37) ~[servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.NoopOffloader.offloadSubscribe(NoopOffloader.java:80) ~[servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.Completable.subscribeWithContext(Completable.java:1540) ~[servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.Completable.subscribeInternal(Completable.java:1137) ~[servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.CompletableDefer.subscribe(CompletableDefer.java:52) ~[servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.transport.netty.internal.DefaultNettyPipelinedConnection$WriteQueue.execute(DefaultNettyPipelinedConnection.java:244) ~[servicetalk-transport-netty-internal-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.transport.netty.internal.DefaultNettyPipelinedConnection$WriteQueue.execute(DefaultNettyPipelinedConnection.java:231) ~[servicetalk-transport-netty-internal-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.transport.netty.internal.SequentialTaskQueue.executeNextTask(SequentialTaskQueue.java:108) ~[servicetalk-transport-netty-internal-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.transport.netty.internal.SequentialTaskQueue.postTaskTermination(SequentialTaskQueue.java:84) ~[servicetalk-transport-netty-internal-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.transport.netty.internal.DefaultNettyPipelinedConnection$WriteSourceSubscriber.safePostTaskTermination(DefaultNettyPipelinedConnection.java:348) ~[servicetalk-transport-netty-internal-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.transport.netty.internal.DefaultNettyPipelinedConnection$WriteSourceSubscriber.onComplete(DefaultNettyPipelinedConnection.java:320) ~[servicetalk-transport-netty-internal-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.ContextPreservingCancellableCompletableSubscriber.onComplete(ContextPreservingCancellableCompletableSubscriber.java:41) ~[servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.ContextPreservingCompletableSubscriber.onComplete(ContextPreservingCompletableSubscriber.java:49) ~[servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.ContextPreservingCancellableCompletableSubscriber.onComplete(ContextPreservingCancellableCompletableSubscriber.java:41) ~[servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.AfterFinallyCompletable$AfterFinallyCompletableSubscriber.onComplete(AfterFinallyCompletable.java:60) ~[servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.ResumeCompletable$ResumeSubscriber.onComplete(ResumeCompletable.java:82) ~[servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.BeforeFinallyCompletable$BeforeFinallyCompletableSubscriber.onComplete(BeforeFinallyCompletable.java:65) ~[servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.ContextPreservingCompletableSubscriber.onComplete(ContextPreservingCompletableSubscriber.java:49) ~[servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.transport.netty.internal.WriteStreamSubscriber$AllWritesPromise.terminateSubscriber(WriteStreamSubscriber.java:394) ~[servicetalk-transport-netty-internal-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.transport.netty.internal.WriteStreamSubscriber$AllWritesPromise.sourceTerminated(WriteStreamSubscriber.java:284) ~[servicetalk-transport-netty-internal-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.transport.netty.internal.WriteStreamSubscriber.onComplete(WriteStreamSubscriber.java:179) ~[servicetalk-transport-netty-internal-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.ContextPreservingSubscriptionSubscriber.onComplete(ContextPreservingSubscriptionSubscriber.java:56) ~[servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.transport.netty.internal.Flush$FlushSubscriber.onComplete(Flush.java:130) ~[servicetalk-transport-netty-internal-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.SingleFlatMapPublisher$SubscriberImpl.onComplete(SingleFlatMapPublisher.java:111) ~[servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.ContextPreservingSubscriber.onComplete(ContextPreservingSubscriber.java:71) ~[servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.ContextPreservingSubscriptionSubscriber.onComplete(ContextPreservingSubscriptionSubscriber.java:56) ~[servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.ContextPreservingSubscriber.onComplete(ContextPreservingSubscriber.java:71) ~[servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.FromArrayPublisher$FromArraySubscription.sendComplete(FromArrayPublisher.java:113) ~[servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.FromArrayPublisher$FromArraySubscription.request(FromArrayPublisher.java:89) ~[servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.ContextPreservingSubscription.request(ContextPreservingSubscription.java:43) ~[servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.CancellableThenSubscription.request(CancellableThenSubscription.java:62) ~[servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.transport.netty.internal.Flush$FlushSubscriber$1.request(Flush.java:86) ~[servicetalk-transport-netty-internal-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.ContextPreservingSubscription.request(ContextPreservingSubscription.java:43) ~[servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.internal.ConcurrentSubscription.request(ConcurrentSubscription.java:122) ~[servicetalk-concurrent-internal-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.transport.netty.internal.WriteStreamSubscriber.requestMoreIfRequired(WriteStreamSubscriber.java:245) ~[servicetalk-transport-netty-internal-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.transport.netty.internal.WriteStreamSubscriber.lambda$onSubscribe$0(WriteStreamSubscriber.java:126) ~[servicetalk-transport-netty-internal-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.netty.util.concurrent.AbstractEventExecutor.safeExecute(AbstractEventExecutor.java:163) [netty-common-4.1.37.Final.jar:4.1.37.Final]
    at io.netty.util.concurrent.SingleThreadEventExecutor.runAllTasks(SingleThreadEventExecutor.java:416) [netty-common-4.1.37.Final.jar:4.1.37.Final]
    at io.netty.channel.epoll.EpollEventLoop.run(EpollEventLoop.java:331) [netty-transport-native-epoll-4.1.37.Final-linux-x86_64.jar:4.1.37.Final]
    at io.netty.util.concurrent.SingleThreadEventExecutor$5.run(SingleThreadEventExecutor.java:918) [netty-common-4.1.37.Final.jar:4.1.37.Final]
    at io.netty.util.internal.ThreadExecutorMap$2.run(ThreadExecutorMap.java:74) [netty-common-4.1.37.Final.jar:4.1.37.Final]
    at io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30) [netty-common-4.1.37.Final.jar:4.1.37.Final]
    at java.lang.Thread.run(Thread.java:748) [?:1.8.0_192]
Caused by: io.netty.channel.unix.Errors$NativeIoException: writevAddresses(..) failed: Broken pipe
2019-06-28 22:00:28,785 servicetalk-global-io-executor-2-10 [WARN ] ChannelOutboundBuffer          - Failed to mark a promise as failure because it has failed already: WriteStreamSubscriber$AllWritesPromise@72818f9b(failure: io.netty.channel.socket.ChannelOutputShutdownException: Channel output shutdown), unnotified cause: io.netty.channel.socket.ChannelOutputShutdownException: Channel output shutdown
    at io.netty.channel.AbstractChannel$AbstractUnsafe.shutdownOutput(AbstractChannel.java:635)
    at io.netty.channel.AbstractChannel$AbstractUnsafe.flush0(AbstractChannel.java:943)
    at io.netty.channel.epoll.AbstractEpollChannel$AbstractEpollUnsafe.flush0(AbstractEpollChannel.java:514)
    at io.netty.channel.AbstractChannel$AbstractUnsafe.flush(AbstractChannel.java:895)
    at io.netty.channel.DefaultChannelPipeline$HeadContext.flush(DefaultChannelPipeline.java:1370)
    at io.netty.channel.AbstractChannelHandlerContext.invokeFlush0(AbstractChannelHandlerContext.java:749)
    at io.netty.channel.AbstractChannelHandlerContext.invokeFlush(AbstractChannelHandlerContext.java:741)
    at io.netty.channel.AbstractChannelHandlerContext.flush(AbstractChannelHandlerContext.java:727)
    at io.netty.channel.DefaultChannelPipeline.flush(DefaultChannelPipeline.java:978)
    at io.netty.channel.AbstractChannel.flush(AbstractChannel.java:241)
    at io.servicetalk.transport.netty.internal.Flush$FlushSubscriber.lambda$new$0(Flush.java:68)
    at io.servicetalk.transport.netty.internal.FlushOnEnd$1.writeTerminated(FlushOnEnd.java:31)
    at io.servicetalk.transport.netty.internal.Flush$FlushSubscriber.onComplete(Flush.java:125)
    at io.servicetalk.concurrent.api.SingleFlatMapPublisher$SubscriberImpl.onComplete(SingleFlatMapPublisher.java:111)
    at io.servicetalk.concurrent.api.ContextPreservingSubscriber.onComplete(ContextPreservingSubscriber.java:71)
    at io.servicetalk.concurrent.api.ContextPreservingSubscriptionSubscriber.onComplete(ContextPreservingSubscriptionSubscriber.java:56)
    at io.servicetalk.concurrent.api.ContextPreservingSubscriber.onComplete(ContextPreservingSubscriber.java:71)
    at io.servicetalk.concurrent.api.FromArrayPublisher$FromArraySubscription.sendComplete(FromArrayPublisher.java:113)
    at io.servicetalk.concurrent.api.FromArrayPublisher$FromArraySubscription.request(FromArrayPublisher.java:89)
    at io.servicetalk.concurrent.api.ContextPreservingSubscription.request(ContextPreservingSubscription.java:43)
    at io.servicetalk.concurrent.api.CancellableThenSubscription.setSubscription(CancellableThenSubscription.java:108)
    at io.servicetalk.concurrent.api.SingleFlatMapPublisher$SubscriberImpl.onSubscribe(SingleFlatMapPublisher.java:75)
    at io.servicetalk.concurrent.api.ContextPreservingSubscriber.onSubscribe(ContextPreservingSubscriber.java:38)
    at io.servicetalk.concurrent.api.ContextPreservingSubscriptionSubscriber.onSubscribe(ContextPreservingSubscriptionSubscriber.java:41)
    at io.servicetalk.concurrent.api.ContextPreservingSubscriber.onSubscribe(ContextPreservingSubscriber.java:38)
    at io.servicetalk.concurrent.api.FromArrayPublisher.doSubscribe(FromArrayPublisher.java:45)
    at io.servicetalk.concurrent.api.AbstractSynchronousPublisher.handleSubscribe(AbstractSynchronousPublisher.java:36)
    at io.servicetalk.concurrent.api.Publisher.lambda$subscribeWithContext$10(Publisher.java:2436)
    at io.servicetalk.concurrent.api.ContextPreservingConsumer.accept(ContextPreservingConsumer.java:37)
    at io.servicetalk.concurrent.api.NoopOffloader.offloadSubscribe(NoopOffloader.java:68)
    at io.servicetalk.concurrent.api.Publisher.subscribeWithContext(Publisher.java:2435)
    at io.servicetalk.concurrent.api.Publisher.subscribeInternal(Publisher.java:2206)
    at io.servicetalk.concurrent.api.SingleFlatMapPublisher$SubscriberImpl.onSuccess(SingleFlatMapPublisher.java:95)
    at io.servicetalk.concurrent.api.ReduceSingle$ReduceSubscriber.onComplete(ReduceSingle.java:114)
    at io.servicetalk.concurrent.api.ContextPreservingSubscriptionSubscriber.onComplete(ContextPreservingSubscriptionSubscriber.java:56)
    at io.servicetalk.concurrent.api.FilterPublisher$1.onComplete(FilterPublisher.java:72)
    at io.servicetalk.concurrent.api.ContextPreservingSubscriber.onComplete(ContextPreservingSubscriber.java:71)
    at io.servicetalk.concurrent.internal.ScalarValueSubscription.request(ScalarValueSubscription.java:71)
    at io.servicetalk.concurrent.internal.ConcurrentSubscription.request(ConcurrentSubscription.java:122)
    at io.servicetalk.concurrent.api.ContextPreservingSubscription.request(ContextPreservingSubscription.java:43)
    at io.servicetalk.concurrent.internal.ConcurrentSubscription.request(ConcurrentSubscription.java:122)
    at io.servicetalk.concurrent.api.ReduceSingle$ReduceSubscriber.onSubscribe(ReduceSingle.java:97)
    at io.servicetalk.concurrent.api.ContextPreservingSubscriptionSubscriber.onSubscribe(ContextPreservingSubscriptionSubscriber.java:41)
    at io.servicetalk.concurrent.api.FilterPublisher$1.onSubscribe(FilterPublisher.java:49)
    at io.servicetalk.concurrent.api.ContextPreservingSubscriber.onSubscribe(ContextPreservingSubscriber.java:38)
    at io.servicetalk.concurrent.api.FromSingleItemPublisher.doSubscribe(FromSingleItemPublisher.java:38)
    at io.servicetalk.concurrent.api.AbstractSynchronousPublisher.handleSubscribe(AbstractSynchronousPublisher.java:36)
    at io.servicetalk.concurrent.api.Publisher.delegateSubscribe(Publisher.java:2414)
    at io.servicetalk.concurrent.api.AbstractSynchronousPublisherOperator.handleSubscribe(AbstractSynchronousPublisherOperator.java:48)
    at io.servicetalk.concurrent.api.Publisher.delegateSubscribe(Publisher.java:2414)
    at io.servicetalk.concurrent.api.ReduceSingle.handleSubscribe(ReduceSingle.java:76)
    at io.servicetalk.concurrent.api.Single.delegateSubscribe(Single.java:1498)
    at io.servicetalk.concurrent.api.SingleFlatMapPublisher.handleSubscribe(SingleFlatMapPublisher.java:44)
    at io.servicetalk.concurrent.api.Publisher.delegateSubscribe(Publisher.java:2414)
    at io.servicetalk.concurrent.api.AbstractSynchronousPublisherOperator.handleSubscribe(AbstractSynchronousPublisherOperator.java:48)
    at io.servicetalk.concurrent.api.Publisher.lambda$subscribeWithContext$10(Publisher.java:2436)
    at io.servicetalk.concurrent.api.ContextPreservingConsumer.accept(ContextPreservingConsumer.java:37)
    at io.servicetalk.concurrent.api.NoopOffloader.offloadSubscribe(NoopOffloader.java:68)
    at io.servicetalk.concurrent.api.Publisher.subscribeWithContext(Publisher.java:2435)
    at io.servicetalk.concurrent.api.Publisher.subscribeInternal(Publisher.java:2206)
    at io.servicetalk.concurrent.api.AbstractNoHandleSubscribePublisher.subscribe(AbstractNoHandleSubscribePublisher.java:52)
    at io.servicetalk.transport.netty.internal.DefaultNettyConnection$2.handleSubscribe(DefaultNettyConnection.java:313)
    at io.servicetalk.concurrent.api.Completable.handleSubscribe(Completable.java:1564)
    at io.servicetalk.concurrent.api.Completable.delegateSubscribe(Completable.java:1520)
    at io.servicetalk.concurrent.api.AbstractSynchronousCompletableOperator.handleSubscribe(AbstractSynchronousCompletableOperator.java:46)
    at io.servicetalk.concurrent.api.Completable.delegateSubscribe(Completable.java:1520)
    at io.servicetalk.concurrent.api.ResumeCompletable.handleSubscribe(ResumeCompletable.java:44)
    at io.servicetalk.concurrent.api.Completable.delegateSubscribe(Completable.java:1520)
    at io.servicetalk.concurrent.api.AbstractSynchronousCompletableOperator.handleSubscribe(AbstractSynchronousCompletableOperator.java:46)
    at io.servicetalk.concurrent.api.CompletableSubscribeShareContext.handleSubscribe(CompletableSubscribeShareContext.java:34)
    at io.servicetalk.concurrent.api.Completable.lambda$subscribeWithContext$0(Completable.java:1541)
    at io.servicetalk.concurrent.api.ContextPreservingConsumer.accept(ContextPreservingConsumer.java:37)
    at io.servicetalk.concurrent.api.NoopOffloader.offloadSubscribe(NoopOffloader.java:80)
    at io.servicetalk.concurrent.api.Completable.subscribeWithContext(Completable.java:1540)
    at io.servicetalk.concurrent.api.Completable.subscribeInternal(Completable.java:1137)
    at io.servicetalk.concurrent.api.CompletableDefer.handleSubscribe(CompletableDefer.java:47)
    at io.servicetalk.concurrent.api.Completable.handleSubscribe(Completable.java:1564)
    at io.servicetalk.concurrent.api.Completable.lambda$subscribeWithContext$0(Completable.java:1541)
    at io.servicetalk.concurrent.api.ContextPreservingConsumer.accept(ContextPreservingConsumer.java:37)
    at io.servicetalk.concurrent.api.NoopOffloader.offloadSubscribe(NoopOffloader.java:80)
    at io.servicetalk.concurrent.api.Completable.subscribeWithContext(Completable.java:1540)
    at io.servicetalk.concurrent.api.Completable.subscribeInternal(Completable.java:1137)
    at io.servicetalk.concurrent.api.CompletableDefer.subscribe(CompletableDefer.java:52)
    at io.servicetalk.transport.netty.internal.DefaultNettyPipelinedConnection$WriteQueue.execute(DefaultNettyPipelinedConnection.java:244)
    at io.servicetalk.transport.netty.internal.DefaultNettyPipelinedConnection$WriteQueue.execute(DefaultNettyPipelinedConnection.java:231)
    at io.servicetalk.transport.netty.internal.SequentialTaskQueue.executeNextTask(SequentialTaskQueue.java:108)
    at io.servicetalk.transport.netty.internal.SequentialTaskQueue.postTaskTermination(SequentialTaskQueue.java:84)
    at io.servicetalk.transport.netty.internal.DefaultNettyPipelinedConnection$WriteSourceSubscriber.safePostTaskTermination(DefaultNettyPipelinedConnection.java:348)
    at io.servicetalk.transport.netty.internal.DefaultNettyPipelinedConnection$WriteSourceSubscriber.onComplete(DefaultNettyPipelinedConnection.java:320)
    at io.servicetalk.concurrent.api.ContextPreservingCancellableCompletableSubscriber.onComplete(ContextPreservingCancellableCompletableSubscriber.java:41)
    at io.servicetalk.concurrent.api.ContextPreservingCompletableSubscriber.onComplete(ContextPreservingCompletableSubscriber.java:49)
    at io.servicetalk.concurrent.api.ContextPreservingCancellableCompletableSubscriber.onComplete(ContextPreservingCancellableCompletableSubscriber.java:41)
    at io.servicetalk.concurrent.api.AfterFinallyCompletable$AfterFinallyCompletableSubscriber.onComplete(AfterFinallyCompletable.java:60)
    at io.servicetalk.concurrent.api.ResumeCompletable$ResumeSubscriber.onComplete(ResumeCompletable.java:82)
    at io.servicetalk.concurrent.api.BeforeFinallyCompletable$BeforeFinallyCompletableSubscriber.onComplete(BeforeFinallyCompletable.java:65)
    at io.servicetalk.concurrent.api.ContextPreservingCompletableSubscriber.onComplete(ContextPreservingCompletableSubscriber.java:49)
    at io.servicetalk.transport.netty.internal.WriteStreamSubscriber$AllWritesPromise.terminateSubscriber(WriteStreamSubscriber.java:394)
    at io.servicetalk.transport.netty.internal.WriteStreamSubscriber$AllWritesPromise.sourceTerminated(WriteStreamSubscriber.java:284)
    at io.servicetalk.transport.netty.internal.WriteStreamSubscriber.onComplete(WriteStreamSubscriber.java:179)
    at io.servicetalk.concurrent.api.ContextPreservingSubscriptionSubscriber.onComplete(ContextPreservingSubscriptionSubscriber.java:56)
    at io.servicetalk.transport.netty.internal.Flush$FlushSubscriber.onComplete(Flush.java:130)
    at io.servicetalk.concurrent.api.SingleFlatMapPublisher$SubscriberImpl.onComplete(SingleFlatMapPublisher.java:111)
    at io.servicetalk.concurrent.api.ContextPreservingSubscriber.onComplete(ContextPreservingSubscriber.java:71)
    at io.servicetalk.concurrent.api.ContextPreservingSubscriptionSubscriber.onComplete(ContextPreservingSubscriptionSubscriber.java:56)
    at io.servicetalk.concurrent.api.ContextPreservingSubscriber.onComplete(ContextPreservingSubscriber.java:71)
    at io.servicetalk.concurrent.api.FromArrayPublisher$FromArraySubscription.sendComplete(FromArrayPublisher.java:113)
    at io.servicetalk.concurrent.api.FromArrayPublisher$FromArraySubscription.request(FromArrayPublisher.java:89)
    at io.servicetalk.concurrent.api.ContextPreservingSubscription.request(ContextPreservingSubscription.java:43)
    at io.servicetalk.concurrent.api.CancellableThenSubscription.request(CancellableThenSubscription.java:62)
    at io.servicetalk.transport.netty.internal.Flush$FlushSubscriber$1.request(Flush.java:86)
    at io.servicetalk.concurrent.api.ContextPreservingSubscription.request(ContextPreservingSubscription.java:43)
    at io.servicetalk.concurrent.internal.ConcurrentSubscription.request(ConcurrentSubscription.java:122)
    at io.servicetalk.transport.netty.internal.WriteStreamSubscriber.requestMoreIfRequired(WriteStreamSubscriber.java:245)
    at io.servicetalk.transport.netty.internal.WriteStreamSubscriber.lambda$onSubscribe$0(WriteStreamSubscriber.java:126)
    at io.netty.util.concurrent.AbstractEventExecutor.safeExecute(AbstractEventExecutor.java:163)
    at io.netty.util.concurrent.SingleThreadEventExecutor.runAllTasks(SingleThreadEventExecutor.java:416)
    at io.netty.channel.epoll.EpollEventLoop.run(EpollEventLoop.java:331)
    at io.netty.util.concurrent.SingleThreadEventExecutor$5.run(SingleThreadEventExecutor.java:918)
    at io.netty.util.internal.ThreadExecutorMap$2.run(ThreadExecutorMap.java:74)
    at io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30)
    at java.lang.Thread.run(Thread.java:748)
Caused by: io.netty.channel.unix.Errors$NativeIoException: writevAddresses(..) failed: Broken pipe

io.netty.channel.socket.ChannelOutputShutdownException: Channel output shutdown
    at io.netty.channel.AbstractChannel$AbstractUnsafe.shutdownOutput(AbstractChannel.java:635) ~[netty-transport-4.1.37.Final.jar:4.1.37.Final]
    at io.netty.channel.AbstractChannel$AbstractUnsafe.flush0(AbstractChannel.java:943) ~[netty-transport-4.1.37.Final.jar:4.1.37.Final]
    at io.netty.channel.epoll.AbstractEpollChannel$AbstractEpollUnsafe.flush0(AbstractEpollChannel.java:514) ~[netty-transport-native-epoll-4.1.37.Final-linux-x86_64.jar:4.1.37.Final]
    at io.netty.channel.AbstractChannel$AbstractUnsafe.flush(AbstractChannel.java:895) ~[netty-transport-4.1.37.Final.jar:4.1.37.Final]
    at io.netty.channel.DefaultChannelPipeline$HeadContext.flush(DefaultChannelPipeline.java:1370) ~[netty-transport-4.1.37.Final.jar:4.1.37.Final]
    at io.netty.channel.AbstractChannelHandlerContext.invokeFlush0(AbstractChannelHandlerContext.java:749) ~[netty-transport-4.1.37.Final.jar:4.1.37.Final]
    at io.netty.channel.AbstractChannelHandlerContext.invokeFlush(AbstractChannelHandlerContext.java:741) ~[netty-transport-4.1.37.Final.jar:4.1.37.Final]
    at io.netty.channel.AbstractChannelHandlerContext.flush(AbstractChannelHandlerContext.java:727) ~[netty-transport-4.1.37.Final.jar:4.1.37.Final]
    at io.netty.channel.DefaultChannelPipeline.flush(DefaultChannelPipeline.java:978) ~[netty-transport-4.1.37.Final.jar:4.1.37.Final]
    at io.netty.channel.AbstractChannel.flush(AbstractChannel.java:241) ~[netty-transport-4.1.37.Final.jar:4.1.37.Final]
    at io.servicetalk.transport.netty.internal.Flush$FlushSubscriber.lambda$new$0(Flush.java:68) ~[servicetalk-transport-netty-internal-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.transport.netty.internal.FlushOnEnd$1.writeTerminated(FlushOnEnd.java:31) ~[servicetalk-transport-netty-internal-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.transport.netty.internal.Flush$FlushSubscriber.onComplete(Flush.java:125) ~[servicetalk-transport-netty-internal-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.SingleFlatMapPublisher$SubscriberImpl.onComplete(SingleFlatMapPublisher.java:111) ~[servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.ContextPreservingSubscriber.onComplete(ContextPreservingSubscriber.java:71) ~[servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.ContextPreservingSubscriptionSubscriber.onComplete(ContextPreservingSubscriptionSubscriber.java:56) ~[servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.ContextPreservingSubscriber.onComplete(ContextPreservingSubscriber.java:71) ~[servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.FromArrayPublisher$FromArraySubscription.sendComplete(FromArrayPublisher.java:113) ~[servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.FromArrayPublisher$FromArraySubscription.request(FromArrayPublisher.java:89) ~[servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.ContextPreservingSubscription.request(ContextPreservingSubscription.java:43) ~[servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.CancellableThenSubscription.setSubscription(CancellableThenSubscription.java:108) ~[servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.SingleFlatMapPublisher$SubscriberImpl.onSubscribe(SingleFlatMapPublisher.java:75) ~[servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.ContextPreservingSubscriber.onSubscribe(ContextPreservingSubscriber.java:38) ~[servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.ContextPreservingSubscriptionSubscriber.onSubscribe(ContextPreservingSubscriptionSubscriber.java:41) ~[servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.ContextPreservingSubscriber.onSubscribe(ContextPreservingSubscriber.java:38) ~[servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.FromArrayPublisher.doSubscribe(FromArrayPublisher.java:45) ~[servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.AbstractSynchronousPublisher.handleSubscribe(AbstractSynchronousPublisher.java:36) ~[servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.Publisher.lambda$subscribeWithContext$10(Publisher.java:2436) ~[servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.ContextPreservingConsumer.accept(ContextPreservingConsumer.java:37) ~[servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.NoopOffloader.offloadSubscribe(NoopOffloader.java:68) ~[servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.Publisher.subscribeWithContext(Publisher.java:2435) ~[servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.Publisher.subscribeInternal(Publisher.java:2206) ~[servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.SingleFlatMapPublisher$SubscriberImpl.onSuccess(SingleFlatMapPublisher.java:95) ~[servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.ReduceSingle$ReduceSubscriber.onComplete(ReduceSingle.java:114) ~[servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.ContextPreservingSubscriptionSubscriber.onComplete(ContextPreservingSubscriptionSubscriber.java:56) ~[servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.FilterPublisher$1.onComplete(FilterPublisher.java:72) ~[servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.ContextPreservingSubscriber.onComplete(ContextPreservingSubscriber.java:71) ~[servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.internal.ScalarValueSubscription.request(ScalarValueSubscription.java:71) ~[servicetalk-concurrent-internal-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.internal.ConcurrentSubscription.request(ConcurrentSubscription.java:122) ~[servicetalk-concurrent-internal-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.ContextPreservingSubscription.request(ContextPreservingSubscription.java:43) ~[servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.internal.ConcurrentSubscription.request(ConcurrentSubscription.java:122) ~[servicetalk-concurrent-internal-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.ReduceSingle$ReduceSubscriber.onSubscribe(ReduceSingle.java:97) ~[servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.ContextPreservingSubscriptionSubscriber.onSubscribe(ContextPreservingSubscriptionSubscriber.java:41) ~[servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.FilterPublisher$1.onSubscribe(FilterPublisher.java:49) ~[servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.ContextPreservingSubscriber.onSubscribe(ContextPreservingSubscriber.java:38) ~[servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.FromSingleItemPublisher.doSubscribe(FromSingleItemPublisher.java:38) ~[servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.AbstractSynchronousPublisher.handleSubscribe(AbstractSynchronousPublisher.java:36) ~[servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.Publisher.delegateSubscribe(Publisher.java:2414) ~[servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.AbstractSynchronousPublisherOperator.handleSubscribe(AbstractSynchronousPublisherOperator.java:48) ~[servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.Publisher.delegateSubscribe(Publisher.java:2414) ~[servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.ReduceSingle.handleSubscribe(ReduceSingle.java:76) ~[servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.Single.delegateSubscribe(Single.java:1498) ~[servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.SingleFlatMapPublisher.handleSubscribe(SingleFlatMapPublisher.java:44) ~[servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.Publisher.delegateSubscribe(Publisher.java:2414) ~[servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.AbstractSynchronousPublisherOperator.handleSubscribe(AbstractSynchronousPublisherOperator.java:48) ~[servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.Publisher.lambda$subscribeWithContext$10(Publisher.java:2436) ~[servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.ContextPreservingConsumer.accept(ContextPreservingConsumer.java:37) ~[servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.NoopOffloader.offloadSubscribe(NoopOffloader.java:68) ~[servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.Publisher.subscribeWithContext(Publisher.java:2435) ~[servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.Publisher.subscribeInternal(Publisher.java:2206) ~[servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.AbstractNoHandleSubscribePublisher.subscribe(AbstractNoHandleSubscribePublisher.java:52) ~[servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.transport.netty.internal.DefaultNettyConnection$2.handleSubscribe(DefaultNettyConnection.java:313) ~[servicetalk-transport-netty-internal-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.Completable.handleSubscribe(Completable.java:1564) ~[servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.Completable.delegateSubscribe(Completable.java:1520) ~[servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.AbstractSynchronousCompletableOperator.handleSubscribe(AbstractSynchronousCompletableOperator.java:46) ~[servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.Completable.delegateSubscribe(Completable.java:1520) ~[servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.ResumeCompletable.handleSubscribe(ResumeCompletable.java:44) ~[servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.Completable.delegateSubscribe(Completable.java:1520) ~[servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.AbstractSynchronousCompletableOperator.handleSubscribe(AbstractSynchronousCompletableOperator.java:46) ~[servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.CompletableSubscribeShareContext.handleSubscribe(CompletableSubscribeShareContext.java:34) ~[servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.Completable.lambda$subscribeWithContext$0(Completable.java:1541) ~[servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.ContextPreservingConsumer.accept(ContextPreservingConsumer.java:37) ~[servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.NoopOffloader.offloadSubscribe(NoopOffloader.java:80) ~[servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.Completable.subscribeWithContext(Completable.java:1540) ~[servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.Completable.subscribeInternal(Completable.java:1137) ~[servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.CompletableDefer.handleSubscribe(CompletableDefer.java:47) ~[servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.Completable.handleSubscribe(Completable.java:1564) ~[servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.Completable.lambda$subscribeWithContext$0(Completable.java:1541) ~[servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.ContextPreservingConsumer.accept(ContextPreservingConsumer.java:37) ~[servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.NoopOffloader.offloadSubscribe(NoopOffloader.java:80) ~[servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.Completable.subscribeWithContext(Completable.java:1540) ~[servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.Completable.subscribeInternal(Completable.java:1137) ~[servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.CompletableDefer.subscribe(CompletableDefer.java:52) ~[servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.transport.netty.internal.DefaultNettyPipelinedConnection$WriteQueue.execute(DefaultNettyPipelinedConnection.java:244) ~[servicetalk-transport-netty-internal-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.transport.netty.internal.DefaultNettyPipelinedConnection$WriteQueue.execute(DefaultNettyPipelinedConnection.java:231) ~[servicetalk-transport-netty-internal-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.transport.netty.internal.SequentialTaskQueue.executeNextTask(SequentialTaskQueue.java:108) ~[servicetalk-transport-netty-internal-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.transport.netty.internal.SequentialTaskQueue.postTaskTermination(SequentialTaskQueue.java:84) ~[servicetalk-transport-netty-internal-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.transport.netty.internal.DefaultNettyPipelinedConnection$WriteSourceSubscriber.safePostTaskTermination(DefaultNettyPipelinedConnection.java:348) ~[servicetalk-transport-netty-internal-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.transport.netty.internal.DefaultNettyPipelinedConnection$WriteSourceSubscriber.onComplete(DefaultNettyPipelinedConnection.java:320) ~[servicetalk-transport-netty-internal-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.ContextPreservingCancellableCompletableSubscriber.onComplete(ContextPreservingCancellableCompletableSubscriber.java:41) ~[servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.ContextPreservingCompletableSubscriber.onComplete(ContextPreservingCompletableSubscriber.java:49) ~[servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.ContextPreservingCancellableCompletableSubscriber.onComplete(ContextPreservingCancellableCompletableSubscriber.java:41) ~[servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.AfterFinallyCompletable$AfterFinallyCompletableSubscriber.onComplete(AfterFinallyCompletable.java:60) ~[servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.ResumeCompletable$ResumeSubscriber.onComplete(ResumeCompletable.java:82) ~[servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.BeforeFinallyCompletable$BeforeFinallyCompletableSubscriber.onComplete(BeforeFinallyCompletable.java:65) ~[servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.ContextPreservingCompletableSubscriber.onComplete(ContextPreservingCompletableSubscriber.java:49) ~[servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.transport.netty.internal.WriteStreamSubscriber$AllWritesPromise.terminateSubscriber(WriteStreamSubscriber.java:394) ~[servicetalk-transport-netty-internal-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.transport.netty.internal.WriteStreamSubscriber$AllWritesPromise.sourceTerminated(WriteStreamSubscriber.java:284) ~[servicetalk-transport-netty-internal-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.transport.netty.internal.WriteStreamSubscriber.onComplete(WriteStreamSubscriber.java:179) ~[servicetalk-transport-netty-internal-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.ContextPreservingSubscriptionSubscriber.onComplete(ContextPreservingSubscriptionSubscriber.java:56) ~[servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.transport.netty.internal.Flush$FlushSubscriber.onComplete(Flush.java:130) ~[servicetalk-transport-netty-internal-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.SingleFlatMapPublisher$SubscriberImpl.onComplete(SingleFlatMapPublisher.java:111) ~[servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.ContextPreservingSubscriber.onComplete(ContextPreservingSubscriber.java:71) ~[servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.ContextPreservingSubscriptionSubscriber.onComplete(ContextPreservingSubscriptionSubscriber.java:56) ~[servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.ContextPreservingSubscriber.onComplete(ContextPreservingSubscriber.java:71) ~[servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.FromArrayPublisher$FromArraySubscription.sendComplete(FromArrayPublisher.java:113) ~[servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.FromArrayPublisher$FromArraySubscription.request(FromArrayPublisher.java:89) ~[servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.ContextPreservingSubscription.request(ContextPreservingSubscription.java:43) ~[servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.CancellableThenSubscription.request(CancellableThenSubscription.java:62) ~[servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.transport.netty.internal.Flush$FlushSubscriber$1.request(Flush.java:86) ~[servicetalk-transport-netty-internal-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.api.ContextPreservingSubscription.request(ContextPreservingSubscription.java:43) ~[servicetalk-concurrent-api-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.concurrent.internal.ConcurrentSubscription.request(ConcurrentSubscription.java:122) ~[servicetalk-concurrent-internal-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.transport.netty.internal.WriteStreamSubscriber.requestMoreIfRequired(WriteStreamSubscriber.java:245) ~[servicetalk-transport-netty-internal-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.servicetalk.transport.netty.internal.WriteStreamSubscriber.lambda$onSubscribe$0(WriteStreamSubscriber.java:126) ~[servicetalk-transport-netty-internal-0.16.0-SNAPSHOT.jar:0.16.0-SNAPSHOT]
    at io.netty.util.concurrent.AbstractEventExecutor.safeExecute(AbstractEventExecutor.java:163) [netty-common-4.1.37.Final.jar:4.1.37.Final]
    at io.netty.util.concurrent.SingleThreadEventExecutor.runAllTasks(SingleThreadEventExecutor.java:416) [netty-common-4.1.37.Final.jar:4.1.37.Final]
    at io.netty.channel.epoll.EpollEventLoop.run(EpollEventLoop.java:331) [netty-transport-native-epoll-4.1.37.Final-linux-x86_64.jar:4.1.37.Final]
    at io.netty.util.concurrent.SingleThreadEventExecutor$5.run(SingleThreadEventExecutor.java:918) [netty-common-4.1.37.Final.jar:4.1.37.Final]
    at io.netty.util.internal.ThreadExecutorMap$2.run(ThreadExecutorMap.java:74) [netty-common-4.1.37.Final.jar:4.1.37.Final]
    at io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30) [netty-common-4.1.37.Final.jar:4.1.37.Final]
    at java.lang.Thread.run(Thread.java:748) [?:1.8.0_192]
Caused by: io.netty.channel.unix.Errors$NativeIoException: writevAddresses(..) failed: Broken pipe
2019-06-28 22:00:28,887              Time-limited test [INFO ] ClientClosureRaceTest          - Completed 28 requests
2019-06-28 22:00:29,425              Time-limited test [INFO ] ClientClosureRaceTest          - Completed 293 requests
idelpivnitskiy commented 3 years ago

https://github.com/apple/servicetalk/pull/1744/checks?check_run_id=3396551070

java.util.concurrent.TimeoutException: testPipelinedPosts() timed out after 90 seconds
    at org.junit.jupiter.engine.extension.TimeoutInvocation.createTimeoutException(TimeoutInvocation.java:70)
    at org.junit.jupiter.engine.extension.TimeoutInvocation.proceed(TimeoutInvocation.java:59)
    at org.junit.jupiter.engine.extension.TimeoutExtension.intercept(TimeoutExtension.java:149)
    at org.junit.jupiter.engine.extension.TimeoutExtension.interceptTestableMethod(TimeoutExtension.java:140)
    at org.junit.jupiter.engine.extension.TimeoutExtension.interceptTestMethod(TimeoutExtension.java:84)
    at org.junit.jupiter.engine.execution.ExecutableInvoker$ReflectiveInterceptorCall.lambda$ofVoidMethod$0(ExecutableInvoker.java:115)
    at org.junit.jupiter.engine.execution.ExecutableInvoker.lambda$invoke$0(ExecutableInvoker.java:105)
    at org.junit.jupiter.engine.execution.InvocationInterceptorChain$InterceptedInvocation.proceed(InvocationInterceptorChain.java:106)
    at org.junit.jupiter.engine.execution.InvocationInterceptorChain.proceed(InvocationInterceptorChain.java:64)
    at org.junit.jupiter.engine.execution.InvocationInterceptorChain.chainAndInvoke(InvocationInterceptorChain.java:45)
    at org.junit.jupiter.engine.execution.InvocationInterceptorChain.invoke(InvocationInterceptorChain.java:37)
    at org.junit.jupiter.engine.execution.ExecutableInvoker.invoke(ExecutableInvoker.java:104)
    at org.junit.jupiter.engine.execution.ExecutableInvoker.invoke(ExecutableInvoker.java:98)
    at org.junit.jupiter.engine.descriptor.TestMethodTestDescriptor.lambda$invokeTestMethod$6(TestMethodTestDescriptor.java:210)
    at org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73)
    at org.junit.jupiter.engine.descriptor.TestMethodTestDescriptor.invokeTestMethod(TestMethodTestDescriptor.java:206)
    at org.junit.jupiter.engine.descriptor.TestMethodTestDescriptor.execute(TestMethodTestDescriptor.java:131)
    at org.junit.jupiter.engine.descriptor.TestMethodTestDescriptor.execute(TestMethodTestDescriptor.java:65)
    at org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$6(NodeTestTask.java:151)
    at org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73)
    at org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$8(NodeTestTask.java:141)
    at org.junit.platform.engine.support.hierarchical.Node.around(Node.java:137)
    at org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$9(NodeTestTask.java:139)
    at org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73)
    at org.junit.platform.engine.support.hierarchical.NodeTestTask.executeRecursively(NodeTestTask.java:138)
    at org.junit.platform.engine.support.hierarchical.NodeTestTask.execute(NodeTestTask.java:95)
    at org.junit.platform.engine.support.hierarchical.ForkJoinPoolHierarchicalTestExecutorService$ExclusiveTask.compute(ForkJoinPoolHierarchicalTestExecutorService.java:185)
    at org.junit.platform.engine.support.hierarchical.ForkJoinPoolHierarchicalTestExecutorService.executeNonConcurrentTasks(ForkJoinPoolHierarchicalTestExecutorService.java:155)
    at org.junit.platform.engine.support.hierarchical.ForkJoinPoolHierarchicalTestExecutorService.invokeAll(ForkJoinPoolHierarchicalTestExecutorService.java:135)
    at org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$6(NodeTestTask.java:155)
    at org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73)
    at org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$8(NodeTestTask.java:141)
    at org.junit.platform.engine.support.hierarchical.Node.around(Node.java:137)
    at org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$9(NodeTestTask.java:139)
    at org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73)
    at org.junit.platform.engine.support.hierarchical.NodeTestTask.executeRecursively(NodeTestTask.java:138)
    at org.junit.platform.engine.support.hierarchical.NodeTestTask.execute(NodeTestTask.java:95)
    at org.junit.platform.engine.support.hierarchical.ForkJoinPoolHierarchicalTestExecutorService$ExclusiveTask.compute(ForkJoinPoolHierarchicalTestExecutorService.java:185)
    at org.junit.platform.engine.support.hierarchical.ForkJoinPoolHierarchicalTestExecutorService.executeNonConcurrentTasks(ForkJoinPoolHierarchicalTestExecutorService.java:155)
    at org.junit.platform.engine.support.hierarchical.ForkJoinPoolHierarchicalTestExecutorService.invokeAll(ForkJoinPoolHierarchicalTestExecutorService.java:135)
    at org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$6(NodeTestTask.java:155)
    at org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73)
    at org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$8(NodeTestTask.java:141)
    at org.junit.platform.engine.support.hierarchical.Node.around(Node.java:137)
    at org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$9(NodeTestTask.java:139)
    at org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73)
    at org.junit.platform.engine.support.hierarchical.NodeTestTask.executeRecursively(NodeTestTask.java:138)
    at org.junit.platform.engine.support.hierarchical.NodeTestTask.execute(NodeTestTask.java:95)
    at org.junit.platform.engine.support.hierarchical.ForkJoinPoolHierarchicalTestExecutorService$ExclusiveTask.compute(ForkJoinPoolHierarchicalTestExecutorService.java:185)
    at java.util.concurrent.RecursiveAction.exec(RecursiveAction.java:189)
    at java.util.concurrent.ForkJoinTask.doExec(ForkJoinTask.java:289)
    at java.util.concurrent.ForkJoinPool$WorkQueue.runTask(ForkJoinPool.java:1056)
    at java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1692)
    at java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:175)
    Suppressed: java.lang.InterruptedException
        at java.util.concurrent.locks.AbstractQueuedSynchronizer.doAcquireSharedInterruptibly(AbstractQueuedSynchronizer.java:998)
        at java.util.concurrent.locks.AbstractQueuedSynchronizer.acquireSharedInterruptibly(AbstractQueuedSynchronizer.java:1304)
        at java.util.concurrent.CountDownLatch.await(CountDownLatch.java:231)
        at io.servicetalk.concurrent.api.SourceToFuture.get(SourceToFuture.java:91)
        at io.servicetalk.http.netty.ClientClosureRaceTest.runIterations(ClientClosureRaceTest.java:165)
        at io.servicetalk.http.netty.ClientClosureRaceTest.testPipelinedPosts(ClientClosureRaceTest.java:154)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.lang.reflect.Method.invoke(Method.java:498)
        at org.junit.platform.commons.util.ReflectionUtils.invokeMethod(ReflectionUtils.java:688)
        at org.junit.jupiter.engine.execution.MethodInvocation.proceed(MethodInvocation.java:60)
        at org.junit.jupiter.engine.execution.InvocationInterceptorChain$ValidatingInvocation.proceed(InvocationInterceptorChain.java:131)
        at org.junit.jupiter.engine.extension.TimeoutInvocation.proceed(TimeoutInvocation.java:46)
        ... 52 more
bondolo commented 3 years ago

https://github.com/apple/servicetalk/pull/1821/checks?check_run_id=3560981630

ClientClosureRaceTest > testPipelinedPosts() FAILED
696
    java.util.concurrent.TimeoutException: testPipelinedPosts() timed out after 90 seconds
697
        at org.junit.jupiter.engine.extension.TimeoutInvocation.createTimeoutException(TimeoutInvocation.java:70)
idelpivnitskiy commented 1 year ago

This test was not flaky for more than a year. Reopen if it fails again.

bryce-anderson commented 1 year ago

This failed when running a PR: https://github.com/apple/servicetalk/actions/runs/6857211833/job/18645877109?pr=2755 It's possible that it was the changes in the PR, but it doesn't appear to be.

ClientClosureRaceTest > testPipelinedPosts() FAILED
    java.util.concurrent.ExecutionException: io.servicetalk.transport.netty.internal.RetryableClosedChannelException
        at io.servicetalk.concurrent.api.SourceToFuture.reportGet(SourceToFuture.java:126)
        at io.servicetalk.concurrent.api.SourceToFuture.get(SourceToFuture.java:97)
        at io.servicetalk.http.netty.ClientClosureRaceTest.runIterations(ClientClosureRaceTest.java:167)
        at io.servicetalk.http.netty.ClientClosureRaceTest.testPipelinedPosts(ClientClosureRaceTest.java:156)

        Caused by:
        io.servicetalk.transport.netty.internal.RetryableClosedChannelException

            Caused by:
            io.servicetalk.transport.netty.internal.CloseHandler$CloseEventObservedException: CHANNEL_CLOSED_INBOUND(The transport backing this connection has been shutdown (read)) [id: 0x7d3fda5c, L:/127.0.0.1:57058 ! R:localhost/127.0.0.1:40885]

                Caused by:
                io.servicetalk.transport.netty.internal.StacklessClosedChannelException
                    at io.servicetalk.transport.netty.internal.DefaultNettyConnection.failIfWriteActive(...)(Unknown Source)
idelpivnitskiy commented 9 months ago

https://github.com/apple/servicetalk/pull/2840/checks?check_run_id=21740274066

ClientClosureRaceTest.testPipelinedPosts()

java.util.concurrent.ExecutionException: io.servicetalk.transport.netty.internal.RetryableClosedChannelException
    at io.servicetalk.concurrent.api.SourceToFuture.reportGet(SourceToFuture.java:126)
    at io.servicetalk.concurrent.api.SourceToFuture.get(SourceToFuture.java:97)
    at io.servicetalk.http.netty.ClientClosureRaceTest.runIterations(ClientClosureRaceTest.java:167)
    at io.servicetalk.http.netty.ClientClosureRaceTest.testPipelinedPosts(ClientClosureRaceTest.java:156)
    at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103)
    at java.base/java.lang.reflect.Method.invoke(Method.java:580)
Caused by: io.servicetalk.transport.netty.internal.RetryableClosedChannelException
Caused by: io.servicetalk.transport.netty.internal.CloseHandler$CloseEventObservedException: CHANNEL_CLOSED_INBOUND(The transport backing this connection has been shutdown (read)) [id: 0x4b93a9e6, L:/127.0.0.1:48902 ! R:localhost/127.0.0.1:33559]
Caused by: io.servicetalk.transport.netty.internal.StacklessClosedChannelException
    at io.servicetalk.transport.netty.internal.DefaultNettyConnection.failIfWriteActive(...)(Unknown Source)
idelpivnitskiy commented 4 months ago

https://github.com/apple/servicetalk/actions/runs/9864455403/job/27239416153?pr=2999

> Task :servicetalk-http-netty:test

ClientClosureRaceTest > testPipelinedPosts() FAILED
    java.util.concurrent.ExecutionException: io.servicetalk.transport.netty.internal.RetryableClosedChannelException
        at io.servicetalk.concurrent.api.SourceToFuture.reportGet(SourceToFuture.java:126)
        at io.servicetalk.concurrent.api.SourceToFuture.get(SourceToFuture.java:97)
        at io.servicetalk.http.netty.ClientClosureRaceTest.runIterations(ClientClosureRaceTest.java:167)
        at io.servicetalk.http.netty.ClientClosureRaceTest.testPipelinedPosts(ClientClosureRaceTest.java:156)

        Caused by:
        io.servicetalk.transport.netty.internal.RetryableClosedChannelException

            Caused by:
            io.servicetalk.transport.netty.internal.CloseHandler$CloseEventObservedException: CHANNEL_CLOSED_INBOUND(The transport backing this connection has been shutdown (read)) [id: 0x49ea3aca, L:/127.0.0.1:36202 ! R:localhost/127.0.0.1:39347]

                Caused by:
                io.servicetalk.transport.netty.internal.StacklessClosedChannelException
                    at io.servicetalk.transport.netty.internal.DefaultNettyConnection.failIfWriteActive(...)(Unknown Source)
idelpivnitskiy commented 3 months ago

https://github.com/apple/servicetalk/actions/runs/10463903906/job/28976645492?pr=3043

> Task :servicetalk-http-netty:test

ClientClosureRaceTest > testPipelinedPosts() FAILED
    java.util.concurrent.ExecutionException: io.servicetalk.transport.netty.internal.RetryableClosedChannelException
        at io.servicetalk.concurrent.api.SourceToFuture.reportGet(SourceToFuture.java:126)
        at io.servicetalk.concurrent.api.SourceToFuture.get(SourceToFuture.java:97)
        at io.servicetalk.http.netty.ClientClosureRaceTest.runIterations(ClientClosureRaceTest.java:167)
        at io.servicetalk.http.netty.ClientClosureRaceTest.testPipelinedPosts(ClientClosureRaceTest.java:156)

        Caused by:
        io.servicetalk.transport.netty.internal.RetryableClosedChannelException

            Caused by:
            io.servicetalk.transport.netty.internal.CloseHandler$CloseEventObservedException: CHANNEL_CLOSED_INBOUND(The transport backing this connection has been shutdown (read)) [id: 0x4954894b, L:/127.0.0.1:39184 ! R:localhost/127.0.0.1:39249]

                Caused by:
                io.servicetalk.transport.netty.internal.StacklessClosedChannelException
                    at io.servicetalk.transport.netty.internal.DefaultNettyConnection.failIfWriteActive(...)(Unknown Source)