@DTS Engineer
Hi,
Getting deleted records on the device that made the edits makes sense. It makes less sense to get them even after I fully deleted the app, but this would not be a problem if receiving the delete events and any other events were reasonably fast.
As I mentioned in the post, I have removed all of the processing logic from my app and only logged the number of items per batch using Logger. I found that on average a batch contains about 200 items. In very few batches, it can reach 600 items, but then it stabilizes at around 200 per batch, with roughly one second between batches. This is true for batches containing modifications or deletions. With that, simple math matches my observations in the post: 62,000 items need to be synced, which is about 310 batches of 200 items each. 310 divided by 60 is approximately 5.17 minutes.
If there is no way to increase the batch size or reduce the time between events, I believe there is nothing I can do to reduce the time it takes to sync everything on the device. Please do not think only in terms of deletions, as this is also true for modified items. Even with 62,000 items in CloudKit and zero deleted records, it would take roughly the same time to fetch all changes.
Topic:
App & System Services
SubTopic:
iCloud & Data
Tags: