I have a couple of questions regarding the ArcGIS Collector app 10.3
It will help us troubleshoot the sync errors.
Having in mind the following architecture:
If the Collector user makes edits everyday and adds attachments, does this add to the same local geodatabase ?
if yes then does all this data get uploaded to arcgis server for syncing every time ?
Can anyone from ESRI staff let us know in detail on what is actually sent to the server during a sync process ?
After the edits are made, they will be pushed to the local geodatabase when the user syncs the edits. For example, if the user collects 10 features and attaches 10 images, 10 features and images will be written to the geodatabase upon sync.
This is not clear enough.
Lets say that a user adds 10 photos and 10 features each day to the offline map. for 7 days in total. and he syncs everyday.
I want to know what information gets uploaded to arcgis server during the sync on each day. Does the collector send on the last sync 70 photos and 70 new features ?
No, for the last sync only the photos and features collected since the previous sync are synchronized. In the above example, only 10 photos and 10 features will by synchronized on day 7.
Jake... on the last day on the Collector there is a geodatabase with 70 new photos in it right ?
My question is (again) what file gets uploaded to the arcgis server endpoint on the first day and what on the 7th day ?
Is the Collector uploading the whole geodatabase each time and then server is extracting the edits on the serverside ?
Or is it not uploading any .geodatabase at all and is doing syncs one by one from the rest service?
My understanding is that you have a web map with an ArcGIS Server feature service, and you are accessing this web map with Collector. Let's say that the service does not contain any features.
You then download a copy of this data to your mobile device. Day 1, you collect 10 features and 10 attachments. At the end of the day you sync. These 10 features and attachments are synchronized back to your enterprise geodatabase feature class.
Day 2, you collect 10 features and 10 attachments. At the end of the day you sync. These 10 features and attachments are synchronized back to your enterprise geodatabase. Your enterprise geodatabase feature class now contains 20 features and 20 attachments.
Day 3, same steps as above. Your enterprise geodatabase feature class contains 30 features and 30 attachments.
So, only the edits you collect since the last sync are being synchronized back to the geodatabase, it will not upload the entire geodatabase. This is similar to geodatabase replication.
If its not uploading the whole geodatabase. What exactly is the Collector uploading then on each sync ?
I mean what type of file, and how is it created before the upload ?
I could be wrong, but I don't believe there is any 'file' that is uploaded during a sync.
Simply put, Collector (and the local GDB), is managing/tracking what has changed since the last sync.
When you Sync, only the changes since the last sync are synchronized/written to the server GDB. The local GDB will continue to grow until you remove it from the device.
I hope this adds some clarification.
It is my belief that the sync process for Collector is much like the sync process for geodatabase replication, since in essence, you are doing the same thing - syncing a disconnected geodatabase. When you create or edit features, your disconnected copy of the geodatabase records what changes you have made to it in delta tables (or change tables). These are system tables within the geodatabase that contain the Create, Update or Delete statements that you have applied since the last sync was performed. These system tables are what is transmitted back to the parent geodatabase, and the changes are then applied (after taking care of conflicts, if required). The changes are recorded as being synced and applied to the child geodatabase as well, and the change tables are then reset/emptied - ready to record a new set of edits.
Hope this helps!