Episerver Form Results Time Out During Export

  • Updated

This article describes an issue that can occur with exporting form submission results in Episerver. This happens for all export types CSV/JSON/XML and in all browsers. This is an issue because the request takes too long because the number of submissions exceeds the executionTimeout for the request.

To resolve this issue please add and raise the limit for executionTimeout in the <location path="EPiServer"> tag.

 <location path="EPiServer">
          <httpRuntime maxRequestLength="1048576" requestValidationMode="2.0" enableVersionHeader="false" executionTimeout="9000"/>              

If the deployment is in DXC the execution timeout cannot be modified. Timeout is enforced by Azure load balancers and by default is 4 minutes. This cannot be solved in web context.

The EPiServer.Forms.UI.DataExportingController does this:

- Prepare the Export
       o Get all submissions
       o Summon the Exporter
       o Exporter converts submissions to binary data
       o Write to (in UTF-8) bytes
       o Save to temp file
       o Return temp file to clientside via a JSON object
- Export
       o Return a FileStream to clientside

The only recommendations in this context would be to possibly disassemble our DataExportingController write it in a schedule job or console.app (so it does not have execution timeout) to send the export file via email.

We also recommend adding a feature request in our forums for a gadget if needed.  The link is here