I have several test cases now that cause an error when uploading files to AGO's utility.arcgis.com services. These are simple JPG files, usually less than a couple hundred KB in size. Quite small. The resulting error is:
As I mentioned, this happens with services behind AGO's internal proxy - utility.arcgis.com. Meaning, I have added a feature layer to AGO from an arcgis server, and used AGO to store the credentials to the service. As a result, this feature service gets a new URL pointing to a proxy inside of AGO. This is where the bug occurs but the bug cascades into Survey123 as well when this happens.
The related bug is https://my.esri.com/#/support/bugs/BUG-000107195
It would be great if someone at esri could take a look at this and fix the issue. As a result of this, the survey becomes "locked" meaning the survey appears in the user's outbox but it will not allow the user to modify it in any way. So it doesn't even matter if I can find the image that's causing the issue because the user cannot remove the image from their survey and resubmit - the survey gets stuck in this limbo and the data collected is ultimately worthless.
Here are some images that fail to upload (attached).
Hi Gregg,
We are investigating this and will get back shortly.
Hey James Tedrick just curious if you had any news on this? Had a couple more images come in this week that would cause the survey to lock up and am really getting interested in a solution.
Hi Gregg,
I've raised this with the ArcGIS Online team; they are investigating.
We are experiencing a similar problem, the images are uploaded successfully and the survey is moved to sent items when they are one per feature class or related table. But When we try to submit a survey 3 images using a repeat, the progress of submitting a survey stops at uploading 1 out of 3 attachments, then the submission fails and there is a red exclamation mark that does not open or give any additional information about the error.
Here is what we are seeing in the error log, check the Highlighted parts
<15>1 2019-01-08T21:26:13Z <PC Name> Survey123forArcGIS 25264 - [AppStudio@11205 category="qml" function="buildUploadsList" filename="XFormFeatureService.qml" line="534"] qml: uploads list: [
{
"editId": 4,
"parentGlobalId": "{18EFA70F-5568-4362-8D97-05A5A04FB21F}",
"fieldName": "RPTBEFOREPHOTOS_image",
"fileName": "RPTBEFOREPHOTOS_image-094d2b8d7dc64891b28ae56c4c3e5c8e.png",
"keywords": "RPTBEFOREPHOTOS_image",
"description": "Attachment field=RPTBEFOREPHOTOS_image"
},
{
"editId": 4,
"parentGlobalId": "{DCB68C4F-2C88-4EB9-95A3-47E944D643CE}",
"fieldName": "RPTBEFOREPHOTOS_image",
"fileName": "RPTBEFOREPHOTOS_image-5187e0be8b5e425c955bc139a0701f09.jpg",
"keywords": "RPTBEFOREPHOTOS_image",
"description": "Attachment field=RPTBEFOREPHOTOS_image"
},
{
"editId": 4,
"parentGlobalId": "{412C2FD4-15DD-4760-9572-591FDCDF0EA7}",
"fieldName": "RPTBEFOREPHOTOS_image",
"fileName": "RPTBEFOREPHOTOS_image-77fb652c4d4b470dba2bee3d5ad62c9f.jpg",
"keywords": "RPTBEFOREPHOTOS_image",
"description": "Attachment field=RPTBEFOREPHOTOS_image"
}
]
<15>1 2019-01-08T21:26:13Z <PC Name> Survey123forArcGIS 25264 - [AppStudio@11205 category="qml" function="uploadItem" filename="XFormFeatureService.qml" line="618"] qml: uploading: {
"description": "Attachment field=RPTBEFOREPHOTOS_image",
"file": "@C:/Users/<username>/ArcGIS/My Survey Attachments/RPTBEFOREPHOTOS_image-094d2b8d7dc64891b28ae56c4c3e5c8e.png"
}
<15>1 2019-01-08T21:26:13Z <PC Name> Survey123forArcGIS 25264 - [AppStudio@11205 category="default"] void __thiscall NetworkRequest::sendFormData(const class QMap<class QString,class QVariant> &,const class QMap<class QString,class QVariant> &) param "C:/Users/<username>/ArcGIS/My Survey Attachments/RPTBEFOREPHOTOS_image-094d2b8d7dc64891b28ae56c4c3e5c8e.png"
<15>1 2019-01-08T21:26:13Z <PC Name> Survey123forArcGIS 25264 - [AppStudio@11205 category="default"] void __thiscall NetworkRequest::sendFormData(const class QMap<class QString,class QVariant> &,const class QMap<class QString,class QVariant> &) Skipping Parameter "C:/Users/<username>/ArcGIS/My Survey Attachments/RPTBEFOREPHOTOS_image-094d2b8d7dc64891b28ae56c4c3e5c8e.png"
<15>1 2019-01-08T21:26:13Z <PC Name> Survey123forArcGIS 25264 - [AppStudio@11205 category="ArcGIS.AppFramework.Network"] ArcGIS.AppFramework.Network: void __thiscall NetworkRequest::setErrorCode(int) 0
<10>1 2019-01-08T21:26:13Z <PC Name> Survey123forArcGIS 25264 - [AppStudio@11205 category="qml" function="onErrorTextChanged" filename="PortalRequest.qml" line="75"] qml: portalRequest: https://utility.arcgis.com/usrsvcs/servers/<featureurl>FeatureServer/uploads/upload error
<15>1 2019-01-08T21:26:15Z <PC Name> Survey123forArcGIS 25264 - [AppStudio@11205 category="ArcGIS.AppFramework.Network"] ArcGIS.AppFramework.Network: void __thiscall NetworkRequest::setErrorCode(int) 401
<15>1 2019-01-08T21:26:15Z <PC Name> Survey123forArcGIS 25264 - [AppStudio@11205 category="ArcGIS.AppFramework.Network"] ArcGIS.AppFramework.Network: void __thiscall NetworkRequest::onFinished(class QNetworkReply *) url: QUrl("https://utility.arcgis.com/usrsvcs/servers/<featureurl>FeatureServer/uploads/upload")
<15>1 2019-01-08T21:26:15Z <PC Name> Survey123forArcGIS 25264 - [AppStudio@11205 category="ArcGIS.AppFramework.Network"] ArcGIS.AppFramework.Network: void __thiscall NetworkRequest::onFinished(class QNetworkReply *) systemProxy: (NoProxy """:0" ["Tunnel Listen UDP SctpTunnel SctpListen"])
<15>1 2019-01-08T21:26:15Z <PC Name> Survey123forArcGIS 25264 - [AppStudio@11205 category="ArcGIS.AppFramework.Network"] ArcGIS.AppFramework.Network: void __thiscall NetworkRequest::setErrorText(const class QString &) "Error transferring https://utility.arcgis.com/usrsvcs/servers/<featureurl>FeatureServer/uploads/upload - server replied: Server Error"
<10>1 2019-01-08T21:26:15Z <PC Name> Survey123forArcGIS 25264 - [AppStudio@11205 category="qml" function="onErrorTextChanged" filename="PortalRequest.qml" line="75"] qml: portalRequest: https://utility.arcgis.com/usrsvcs/servers/<featureurl>FeatureServer/uploads/upload error Error transferring https://utility.arcgis.com/usrsvcs/servers/<featureurl>FeatureServer/uploads/upload - server replied: Server Error
<15>1 2019-01-08T21:26:15Z <PC Name> Survey123forArcGIS 25264 - [AppStudio@11205 category="ArcGIS.Runtime.Utility"] ArcGIS.Runtime.Utility: class QVariant __cdecl JsonUtility::toVariant(const class QByteArray &,bool) Error: 5 "illegal value" Offset: 1 json: "<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.01//EN\" \"http://www.w3.org/TR/html4/strict.dtd\">\n\n\n<html>\n<head>\n<title>HTTP ERROR 500</title>\n<body>\n\n<h3>HTTP ERROR 500</h3>\n<p>Internal Server Error<p>\n\n</body>\n\n</head>\n</html>\n"
<10>1 2019-01-08T21:26:15Z <PC Name> Survey123forArcGIS 25264 - [AppStudio@11205 category="qml" function="onReadyStateChanged" filename="PortalRequest.qml" line="64"] qml: PortalRequest status: 500 500 Server Error
<10>1 2019-01-08T21:26:15Z <PC Name> Survey123forArcGIS 25264 - [AppStudio@11205 category="qml" function="onFailed" filename="PortalRequest.qml" line="79"] qml: PortalRequest failed: url https://utility.arcgis.com/usrsvcs/servers/<featureurl>FeatureServer/uploads/upload error {
"code": 500,
"message": "500 Server Error"
}
<15>1 2019-01-08T21:26:15Z <PC Name> Survey123forArcGIS 25264 - [AppStudio@11205 category="qml" function="onFailed" filename="XFormFeatureService.qml" line="592"] qml: upload error: {}
<15>1 2019-01-08T21:26:15Z <PC Name> Survey123forArcGIS 25264 - [AppStudio@11205 category="qml" function="onFailed" filename="SubmitSurveysPage.qml" line="351"] qml: Feature service error: undefined
Hi Ohan,
Just to confirm, it looks like this is submitting data to an ArcGIS Server service via an item in ArcGIS Online that has credentials embedded? We are investigating this with the ArcGIS Online team.
Hello James,
Yes, this is using an ArcGIS Server ( 10.4) Service vian an Item in AGOL with credentials embedded. I am not sure if the AGOL Team has done any changes but this is something we realized yesterday: we got the same or similar error when we worked with the same survey but with Hosted Feature Service where we tried to upload an existing picture from the Photos Gallery of an iPad, submitting this survey failed, while taking live pictures and submitting it did not fail.
It rang a bell that maybe i should look into the size limitations of the images, i updated the survey to use ArcGIS Server Service as an Item in AGOL and to use unrestricted photo size, i published and downloaded the survey on the app and I was able to submit a new survey with the same set of attachment. But still all the surveys stuck in my outbox are still there and would not resubmit, although new ones would go through and submit