[ https://issues.apache.org/jira/browse/CAMEL-13999?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16934173#comment-16934173 ]
Claus Ibsen commented on CAMEL-13999: ------------------------------------- Would be good if you can provide the PR for this yourself and we can review and get it merged. > Salesforce Component IDLE_TIMEOUT Blocks Async Request Responses for 2.x > ------------------------------------------------------------------------ > > Key: CAMEL-13999 > URL: https://issues.apache.org/jira/browse/CAMEL-13999 > Project: Camel > Issue Type: Bug > Components: camel-salesforce > Affects Versions: 2.23.0 > Reporter: Hemang Ajmera > Assignee: Claus Ibsen > Priority: Minor > Labels: camel-salesforce, httpclient, salesforce > Fix For: 3.0.0, 3.0.0.RC1 > > > Bulk, Composite Batch, etc. all throw an exception when trying to return on > more than a few records due to [static final > IDLE_TIMEOUT|https://github.com/apache/camel/blob/master/components/camel-salesforce/camel-salesforce-component/src/main/java/org/apache/camel/component/salesforce/SalesforceComponent.java#L80] > on the instantiated salesforce component httpClient: > > Caused by: org.apache.camel.component.salesforce.api.SalesforceException: > Unexpected error \{0:null} executing > \{POST:https://genericSFDCInstance.salesforce.com/services/data/v38.0/composite/batch} > at > org.apache.camel.component.salesforce.internal.client.AbstractClientBase$1.onComplete(AbstractClientBase.java:199) > ~[camel-salesforce-2.23.0.jar:2.23.0] > at > org.eclipse.jetty.client.ResponseNotifier.notifyComplete(ResponseNotifier.java:202) > ~[jetty-client-9.4.12.v20180830.jar:9.4.12.v20180830] > at > org.eclipse.jetty.client.ResponseNotifier.notifyComplete(ResponseNotifier.java:194) > ~[jetty-client-9.4.12.v20180830.jar:9.4.12.v20180830] > at > org.eclipse.jetty.client.HttpReceiver.terminateResponse(HttpReceiver.java:470) > ~[jetty-client-9.4.12.v20180830.jar:9.4.12.v20180830] > at org.eclipse.jetty.client.HttpReceiver.abort(HttpReceiver.java:552) > ~[jetty-client-9.4.12.v20180830.jar:9.4.12.v20180830] > at > org.eclipse.jetty.client.HttpChannel.abortResponse(HttpChannel.java:156) > ~[jetty-client-9.4.12.v20180830.jar:9.4.12.v20180830] > at org.eclipse.jetty.client.HttpChannel.abort(HttpChannel.java:149) > ~[jetty-client-9.4.12.v20180830.jar:9.4.12.v20180830] > at org.eclipse.jetty.client.HttpExchange.abort(HttpExchange.java:257) > ~[jetty-client-9.4.12.v20180830.jar:9.4.12.v20180830] > at > org.eclipse.jetty.client.HttpConversation.abort(HttpConversation.java:141) > ~[jetty-client-9.4.12.v20180830.jar:9.4.12.v20180830] > at org.eclipse.jetty.client.HttpRequest.abort(HttpRequest.java:767) > ~[jetty-client-9.4.12.v20180830.jar:9.4.12.v20180830] > at > org.eclipse.jetty.client.http.HttpConnectionOverHTTP.abort(HttpConnectionOverHTTP.java:204) > ~[jetty-client-9.4.12.v20180830.jar:9.4.12.v20180830] > at > org.eclipse.jetty.client.http.HttpConnectionOverHTTP.close(HttpConnectionOverHTTP.java:190) > ~[jetty-client-9.4.12.v20180830.jar:9.4.12.v20180830] > at > org.eclipse.jetty.client.http.HttpConnectionOverHTTP.onIdleExpired(HttpConnectionOverHTTP.java:145) > ~[jetty-client-9.4.12.v20180830.jar:9.4.12.v20180830] > at > org.eclipse.jetty.io.ssl.SslConnection.onIdleExpired(SslConnection.java:286) > ~[jetty-io-9.4.12.v20180830.jar:9.4.12.v20180830] > at > org.eclipse.jetty.io.AbstractEndPoint.onIdleExpired(AbstractEndPoint.java:401) > ~[jetty-io-9.4.12.v20180830.jar:9.4.12.v20180830] > at > org.eclipse.jetty.io.IdleTimeout.checkIdleTimeout(IdleTimeout.java:166) > ~[jetty-io-9.4.12.v20180830.jar:9.4.12.v20180830] > at org.eclipse.jetty.io.IdleTimeout$1.run(IdleTimeout.java:50) > ~[jetty-io-9.4.12.v20180830.jar:9.4.12.v20180830] > at > java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) > ~[?:1.8.0_201] > at java.util.concurrent.FutureTask.run(FutureTask.java:266) > ~[?:1.8.0_201] > at > java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$201(ScheduledThreadPoolExecutor.java:180) > ~[?:1.8.0_201] > at > java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:293) > ~[?:1.8.0_201] > at > java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) > ~[?:1.8.0_201] > at > java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) > ~[?:1.8.0_201] > ... 1 more > *Caused by: java.util.concurrent.TimeoutException: Idle timeout 5000 ms* > at > org.eclipse.jetty.client.http.HttpConnectionOverHTTP.onIdleExpired(HttpConnectionOverHTTP.java:145) > ~[jetty-client-9.4.12.v20180830.jar:9.4.12.v20180830] > at > org.eclipse.jetty.io.ssl.SslConnection.onIdleExpired(SslConnection.java:286) > ~[jetty-io-9.4.12.v20180830.jar:9.4.12.v20180830] > at > org.eclipse.jetty.io.AbstractEndPoint.onIdleExpired(AbstractEndPoint.java:401) > ~[jetty-io-9.4.12.v20180830.jar:9.4.12.v20180830] > at > org.eclipse.jetty.io.IdleTimeout.checkIdleTimeout(IdleTimeout.java:166) > ~[jetty-io-9.4.12.v20180830.jar:9.4.12.v20180830] > at org.eclipse.jetty.io.IdleTimeout$1.run(IdleTimeout.java:50) > ~[jetty-io-9.4.12.v20180830.jar:9.4.12.v20180830] > at > java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) > ~[?:1.8.0_201] > at java.util.concurrent.FutureTask.run(FutureTask.java:266) > ~[?:1.8.0_201] > at > java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$201(ScheduledThreadPoolExecutor.java:180) > ~[?:1.8.0_201] > at > java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:293) > ~[?:1.8.0_201] > at > java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) > ~[?:1.8.0_201] > at > java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) > ~[?:1.8.0_201] > ... 1 more > > Note that as IDLE_TIMEOUT is static, it cannot be set via Spring, and the > httpClientProperties map is [never used to set any > timeouts|https://github.com/apache/camel/blob/master/components/camel-salesforce/camel-salesforce-component/src/main/java/org/apache/camel/component/salesforce/SalesforceComponent.java#L714], > instead opting to take the [hardcoded > defaults|https://github.com/apache/camel/blob/master/components/camel-salesforce/camel-salesforce-component/src/main/java/org/apache/camel/component/salesforce/SalesforceComponent.java#L707]. > -- This message was sent by Atlassian Jira (v8.3.4#803005)