Increase Timeout for running workflows?
Hi All,
I have a workflow that can be asked to process anywhere from 1 – 500 polygons (it copies attribute data from each record and inserts it into a new flat sql table).
However due to the large amount of processing, I keep getting the Alert: “There was a workflow error running activity: Timeout exceeded” whenever I select more than say 30 polygons at a time.
I updated the web.config, at c:\Program Files (x86)\Latitude Geographics\Geocortex Essentials\Default\REST Elements\REST, with the following and it didn’t make any difference:
<httpRuntime maxRequestLength="2097151" requestValidationMode="2.0" enableVersionHeader="false" />
Any help on how to extend the Timeout (session) for a running workflow would be really appreciated.
Thank You!
Laura
-
Hi Laura,
Could this ExecutionTimeout be the solution? http://msdn.microsoft.com/en-us/library/system.web.configuration.httpruntimesection.executiontimeout(v=vs.110).aspx
Let me know if that works for you!
-Kevin
0 -
Hi Kevin, thanks for the reply. I'm not sure how to implement the ExecutionTimeout you listed below, or where to add it. Sorry i'm still a novice at programming so any help would be really appreciated. Thanks -Laura
0 -
Hi Laura,
In REST web.config:
<httpRuntime maxRequestLength="20480" requestValidationMode="2.0" enableVersionHeader="false" executionTimeout="60" />
executionTimeout is a value in seconds.
Cheers,
Kevin
0 -
Hi Kevin, We were running into similar timeout problems with a workflow that calls another workflow which then buffers points. In our scenario we use the first workflow to give instant feedback to the user that something is running, which then uses a reference workflow activity to call the second, longer workflow. When run 'standalone' the buffer workflow runs fine, but when called from the reference workflow activity, we get timeouts as the number of features processed increases. Our production guys are unwilling to increase the timeout much past 3 mins, which will allow us to process up to around 150 points only. Any thoughts on why we're getting timeouts only with the reference activity? I'll open a separate thread to find out if this is the most appropriate method of giving instant user feedback when workflows take time to load... Thanks for your help.. 0 -
Hi James,
If the workflow runs only on the server without pinging the client for too long it will timeout. You mentioned that when you are using the reference workflow activity you are using larger sets of data. What you could possibly do is run an activity to update the client every 50 processed points or so to update the workflow container with a status like "300 of 560 records processed". This way the client maintains connection with the server throughout processing and wont time out. Where you have to get crafty is trying to limit the amount of data which is in scope at the time of the ping back to the client. Maybe call the reference activity multiple times passing in subsets of the data each time?
It would also be possible to run the workflow async and have it email the user upon completion. I'm not sure if the viewer needs to know when the processing is done or not in order to show items on the map. If it doesn't need to then this might work.
Cheers,
Kevin
0 -
I am also getting a timeout error when running a workflow using a datalink. I have tried to use Kevin's suggestion:
In REST web.config:
<httpRuntime maxRequestLength="20480" requestValidationMode="2.0" enableVersionHeader="false" executionTimeout="120"/>
But no matter what value I put in the executionTimeout, I get a timeout error after 60 seconds. Any other suggestions?
Thanks, Barbara
0 -
Hi Barbara
In IIS, you should recycle the EssentialsAppPool4 application pool. This may be why it's not registering the new timeout value you're putting in the web.config.
Mark
0 -
I'm having the same problem. Regardless of what value I put for the timeout in the REST web.config, it still times out after 60 seconds.
executionTimeout="300"
I've tried recycling the application pool, as I suggested to Barbara, but this doesn't help.
Is there a way to extend the timeout?
Thanks
Mark
0 -
Hello,
Adding the executionTimeout value and restarting the Web Site in IIS should be all that is needed.
You could also try increasing the idle timeout value for the EssentialsAppPool4 to see if it is a limiting factor, but that is just a guess.
If you are using Invoke Workflow, or Invoke Workflow Async, there's also a timeout parameter that can be used in GE 4.2+.
Thanks, Stefan.
0 -
Hi Stefan
Thanks for your help with this. Restarting the website in IIS has fixed the problem when running the workflow in the Silverlight Viewer, but when running it in the HTML5 Viewer it's still timing out after 1 minute. It's hence some client-side browser setting that needs to be adjusted. I'll check the settings for Internet Explorer.
Mark
0 -
My browser settings don't appear to have any timeout settings in them. Can anyone tell me how we avoid this timeout error for the HTML5 Viewer? Is it actually an issue with the HTML5 Viewer itself?
0 -
Hi,
Can anyone tell the path of the Web.config file that needs to be changed, because there are a lot of web.Config files.
also Recycle in the sense delete the EssentialsAppPool4 folder in inetpub >temp>IIS Temporary Compressed Files path??
0 -
The location of the web.config for Essentials is C:\Program Files (x86)\Latitude Geographics\Geocortex Essentials\<Instance>\REST Elements\REST\web.config
The default <Instance> folder name is 'Default'.
0 -
Srikanth
To recycle the application pool, in IIS select your default website, then select 'Application Pools', then right-click 'EssentialsAppPool4' and select 'Recycle...'.
0 -
I'm not seeing this entry in my Web.configs. executionTimeout="120" Is it okay to add it? (I am exeperiencing occasional aborted requests that show up in my event viewer as shown below. Nothing short of an IIS refresh fixes the resulting errors. 0 -
The web.config setting only controls how long the server is willing to allow a request to last. The web browser has its own internal timeout that determines how long it is willing to wait for a request to complete. It is almost certainly the browser limit you are encountering. There isn't a way to increase the browser's timeout. Or if there is... it is browser specific and not recommended. 0 -
Ryan, I'm experiencing workflow timeouts when simply picking a photo from my iPad using the FilePicker in my DisplayForm. I guess the workflow is loading the bytes into memory and due to slow cell collection hits that browser 60s timeout before it can complete. Is there any way around this such as offloading the client activity to the server? 0 -
Hello, 0 -
Sorry havn't finished my post above. 0 -
Here is the solution to extend the timeout. 0 -
Where is the Essentials.js file "in the viewer"? Did this actually resolve the workflow/browser timeout issue in conjunction with updating the IIS timeout setting? 0 -
Hi Sean,
The Essentials.js file is located here: C:\inetpub\wwwroot\{ViewerName}\Resources\Compiled\ssentials.bundle.js
Thanks,
Ali
0 -
Hi All, 0 -
Hi Fatin,
Thanks,
Ali
0 -
Thank you Ali for your comment , I will try your suggestions. 0 -
Hi all 0
Please sign in to leave a comment.
Comments
26 comments