Announcements
Can someone please explain how to avoid an HttpException (read timeout at 1:59:59) while waiting for an ExecuteMultiple request to process? This seems really counter intuitive to have a Batch function be constrained by a timeout.
I'm executing this code using the SDK from a C# Console Application.
// process invoice updates.
foreach (var list in SplitRequests<UpdateRequest>(invoiceUpdates))
{
ExecuteMultipleRequest request = new ExecuteMultipleRequest() { Settings = executionSettings };
request.Requests = new OrganizationRequestCollection();
request.Requests.AddRange(list);
ExecuteMultipleResponse response = (ExecuteMultipleResponse)service.Execute(request);
}
*This post is locked for comments
I'm getting an HttpException timeout on the read. The message is coming from the connector, not the CRM. We have two plugins registered on the invoice, one on Create, the other on Update. The update is a Post Operation and shouldn't interfere with the bulk upload.
I tried reducing the number but continued to get worse and worse performance. It is actually faster to update the records one at a time.
you should check if the update of the invoice triggers some plugins or workflows that go in timeout.
or try to reduce the number of requests you are batching in each executemultiplerequest
This is being executed outside of the CRM within a console application. To be precise, this would be executed by Windows Task Scheduler.
where are you having the timeout? I suppose inside a plugin or custom workflow activity
if yes, that is a limitation of the sandbox, has nothing to do with the executemultiplerequest, and the use of executemultiplerequest is not recommended inside plugins/custom workflow activities
André Arnaud de Cal...
294,060
Super User 2025 Season 1
Martin Dráb
232,858
Most Valuable Professional
nmaenpaa
101,158
Moderator