Symptom
You are trying to execute a GET in the SurveyResponseCollection of c4codataapi, but the process runs for too long without completing or eventually times out.
Environment
SAP Cloud for Customer
Reproducing the Issue
- Go to the Administrator work center.
- Access the OData Service Explorer view.
- Select the row for c4codataapi and click Test.
- In the OData Service Explorer, locate and select SurveyResponseCollection.
- Navigate to the Test tab.
- Click Execute.
- Process will run for a long time or time out.
By accessing the GET URL (https://myXXXXXX.crm.ondemand.com/sap/c4c/odata/v1/c4codataapi/SurveyResponseCollection) in a browser, you might see the following message:
Internal Server Error - Read
The server encountered an internal error or misconfiguration and was unable to complete your request.
Cause
GET calls to SurveyResponseCollection are process-intensive because of property RepresentationBinaryObject in the collection: entire survey data is collected and organized in a certain way and then converted into Binary format before it is sent through this property. As there are around 1001 records for SurveyResponseCollection, the OData times out because of this.
Resolution
There are two workarounds for this, depending on whether you need RepresentationBinaryObject in the response:
- If binaryObject is required, please use filters in the GET URL to restrict the call to a smaller set of data;
- If this binaryObject is not required, please use Data Workbench for the data download. In DWB, the column XML_Base64 (the binaryObject column) can be unchecked, which will speed up the download.
Keywords
SurveyResponseCollection, GET, Time Out, The server encountered an internal error , KBA , LOD-LE-SUR-DEF , Survey definition = design time , AP-RC-ODF , OData framework (C4C Only) , How To