Probably just missing a step, but I keep missing it consistently. I have a Traditional versioned dataset in our Portal. The Web Map and layers is configured for sync with a version per user. Creating offline area, editing and syncing all works fine. But when I go to delete the version created for this user I get the error "Operation not allowed on a version with dependent children." I know how to fix this in the SQL Server backend, by manually deleting all the dependent children first. But am I missing a step in a typical offline editing process? thanks!
Solved! Go to Solution.
So its been a few months.. I've been having my field users regularly log out and log back into Field Maps while on the Network and otherwise just conduct their field work as normal, business as usual. I always have them manually log out / log in in Field Maps prior to removing any Offline Areas.
This seems to have reduced the times where I see the orphaned versions error and I have been able to smoothly pare down the version list and delete Field Maps versions after projects are completed as expected without resorting to the SQL Server route.
So maybe it just needs more frequent log out / log in to Field Maps while connected to the network? I don't know. If we don't perform the log out / log in Data Collection and Sync seems to work just fine.
This is where I am right now. THANK YOU for posting this and as detailed as it is.
I had been consistently experiencing this issue as well. One of my problems was I could not get staff to consistently delete their offline areas. I also wanted to implement a weekly process to automate the unregistering the feature service replicas so I could then delete the corresponding versions from the database. My solution was to unregister the replica in ArcGIS Pro. The problem with that is it would not actually delete the child SYNC versions like it should when you remove the offline area on the device (plus removing the area doesn't always work as has been noted by others). After some more testing, I found out that if you unregister the replica through the REST service instead of ArcGIS Pro, it will actually delete the child SYNC versions. This can be automated and done in batch through the API for python.
As a side note, if the child SYNC versions don't get deleted for whatever reason, deleting the main offline editing version through ArcMap/ArcCatalog works: it deletes the version and any dependent children. ArcGIS Pro does not seem to have this capability and I have no desire to try to delete those rows out of the sde versions table. It would be nice if this could be implemented in ArcGIS Pro before ArcMap is retired.
@EdwardMcFarlin that is super interesting that you can delete the main offline sync parent version with Desktop and not Pro! I assume it deletes all the dependent children as well?
I totally agree that working directly in SDE next to the DEFAULT version record is horrible.
It cropped up randomly with another field worker a few months back with one map / area, but not others with the same worker on the same iPad. So i really don't know what causes it.
Yes! For these cases if I try to delete the offline editing version in Pro it throws the error about having dependent children. If I then try to delete the same offline editing version in ArcMap it works and I can confirm that it deleted all of its dependent child versions as well through looking at the sde versions table.
This comment knocked a couple of the rocks loose in my memory. We found the same thing before we'd upgraded to Enterprise 11.1! My ex-colleague kept using his ArcMap b/c it had more control over situations that would cause table locks!