We are running 40jobs in parallel reading the message from azure queue, compute then using a Feign client to PATCH a CSV file with 700 lines each.
After 30 min, we start to see Http connection cancelations in the pool. No http patch message is sent in those threads (at least they don't appear in logs:
Dependencies:
implementation 'org.springframework.cloud:spring-cloud-starter-openfeign:4.1.3'
implementation 'io.github.openfeign:feign-hc5:12.4'
at com.azure.messaging.servicebus.MessagePump.notifyMessage(MessagePump.java:157)
at com.azure.messaging.servicebus.MessagePump.lambda$handleMessage$3(MessagePump.java:142)
at com.azure.messaging.servicebus.implementation.instrumentation.ServiceBusReceiverInstrumentation.wrap(ServiceBusReceiverInstrumentation.java:169)
at com.azure.messaging.servicebus.implementation.instrumentation.ServiceBusReceiverInstrumentation.instrumentProcess(ServiceBusReceiverInstrumentation.java:104)
at com.azure.messaging.servicebus.MessagePump.handleMessage(MessagePump.java:135)
at com.azure.messaging.servicebus.MessagePump$RunOnWorker.lambda$apply$0(MessagePump.java:212)
at reactor.core.publisher.MonoRunnable.call(MonoRunnable.java:73)
at reactor.core.publisher.MonoRunnable.call(MonoRunnable.java:32)
at reactor.core.publisher.FluxSubscribeOnCallable$CallableSubscribeOnSubscription.run(FluxSubscribeOnCallable.java:228)
at reactor.core.scheduler.SchedulerTask.call(SchedulerTask.java:68)
at reactor.core.scheduler.SchedulerTask.call(SchedulerTask.java:28)
at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
at java.base/java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:304)
at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136)
at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635)
at java.base/java.lang.Thread.run(Thread.java:833)
Caused by: java.util.concurrent.CancellationException: null
at org.apache.hc.core5.concurrent.BasicFuture.getResult(BasicFuture.java:75)
at org.apache.hc.core5.concurrent.BasicFuture.get(BasicFuture.java:96)
at org.apache.hc.core5.pool.StrictConnPool$1.get(StrictConnPool.java:184)
at org.apache.hc.core5.pool.StrictConnPool$1.get(StrictConnPool.java:178)
at org.apache.hc.client5.http.impl.io.PoolingHttpClientConnectionManager$3.get(PoolingHttpClientConnectionManager.java:311)
at org.apache.hc.client5.http.impl.classic.InternalExecRuntime.acquireEndpoint(InternalExecRuntime.java:109)
at org.apache.hc.client5.http.impl.classic.ConnectExec.execute(ConnectExec.java:125)
at org.apache.hc.client5.http.impl.classic.ExecChainElement.execute(ExecChainElement.java:51)
at org.apache.hc.client5.http.impl.classic.ProtocolExec.execute(ProtocolExec.java:192)
at org.apache.hc.client5.http.impl.classic.ExecChainElement.execute(ExecChainElement.java:51)
at org.apache.hc.client5.http.impl.classic.HttpRequestRetryExec.execute(HttpRequestRetryExec.java:113)
at org.apache.hc.client5.http.impl.classic.ExecChainElement.execute(ExecChainElement.java:51)
at org.apache.hc.client5.http.impl.classic.ContentCompressionExec.execute(ContentCompressionExec.java:152)
at org.apache.hc.client5.http.impl.classic.ExecChainElement.execute(ExecChainElement.java:51)
at org.apache.hc.client5.http.impl.classic.RedirectExec.execute(RedirectExec.java:116)
at org.apache.hc.client5.http.impl.classic.ExecChainElement.execute(ExecChainElement.java:51)
at org.apache.hc.client5.http.impl.classic.InternalHttpClient.doExecute(InternalHttpClient.java:170)
at org.apache.hc.client5.http.impl.classic.CloseableHttpClient.execute(CloseableHttpClient.java:87)
at org.apache.hc.client5.http.impl.classic.CloseableHttpClient.execute(CloseableHttpClient.java:55)
at feign.hc5.ApacheHttp5Client.execute(ApacheHttp5Client.java:88)
What could be the reason?
We are running 40jobs in parallel reading the message from azure queue, compute then using a Feign client to PATCH a CSV file with 700 lines each.
After 30 min, we start to see Http connection cancelations in the pool. No http patch message is sent in those threads (at least they don't appear in logs:
Dependencies:
implementation 'org.springframework.cloud:spring-cloud-starter-openfeign:4.1.3'
implementation 'io.github.openfeign:feign-hc5:12.4'
What could be the reason?