Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

iCloud syncs only one way (to iPhone, never from) #4024

Open
AndrewC-B opened this issue Jun 9, 2023 · 9 comments
Open

iCloud syncs only one way (to iPhone, never from) #4024

AndrewC-B opened this issue Jun 9, 2023 · 9 comments

Comments

@AndrewC-B
Copy link

AndrewC-B commented Jun 9, 2023

The Issue

For ~18 months I've been ignoring/working around a bug in iCloud syncing with NNW: No read/unread status changes are synced from my iPhone to my other devices. Read/unread changes sync between my Mac and iPad, and sync from my Mac/iPad to my phone, but not the other way around.

For example, if I mark something as read/unread on my iPhone, this change is never reflected on my Mac or iPad, but if I do the reverse, the change is reflected on my iPhone almost immediately. This works even for bulk changes (I've tested marking a hundred or so articles as read at a time).

Adding and removing feeds on my iPhone DOES sync to my other devices reliably (and vice versa).

What I've Tried

I have tried following the advice here, but my syncs appear to complete just fine on all devices (the progress bar does not hang), and I don't have many feeds, or many unread articles (I almost always have fewer than a hundred unread articles).

I've also tried reinstalling NNW on all devices, but everything ends up back in the same state (e.g. same read/unread status discrepancies between devices, and same sync issues).

Logging out/in of iCloud on my iPhone fixed the issue for a few weeks the first time I tried it, but did nothing the following two times I tried it (and now I've used up my quota of patience with logging in and out of iCloud for the year).

What Next?

I would really appreciate any help debugging this. I really don't want to switch to a different sync service for a variety of reasons, including that NNW iCloud sync seems to work "reliably" between two and a half of my devices.

I'm open to the "nuclear" option here, but 1) I'm not sure that it would help (since that page focuses on a slightly different issue to mine) and 2) I would rather not lose my starred articles and read/unread status.

@goranmoomin
Copy link

I have a similar issue… but the other way; 'from iPhone to Mac' status updates syncs as expected, but 'from Mac to iPhone' status updates don't get reflected.

Unfortunately it seems that when I disable/re-enable the iCloud feed (from scratch), the 'from Mac' status updates aren't applied at all, hence I'm suspecting something is disabling iCloud updates from the Mac.

@goranmoomin
Copy link

goranmoomin commented Aug 20, 2023

Looking at Console.app, it seems the error comes from a CloudKit failure while sending an article status modify:

https://github.com/Ranchero-Software/NetNewsWire/blob/mac-6.1.4/Account/Sources/Account/CloudKit/CloudKitSendStatusOperation.swift#L150

The above logs as: Send article status modify articles error: Partial Failure: some items failed, but the operation succeeded overall.. and a relevant CloudKit log (from the same job id) mentions:

Finished operation <CKModifyRecordsOperation: 0x16968bde0; databaseScope=Private, operationID=EB23EFCBEE9A1984, resolvedConfig={ timeoutForRequest=60, discretionary=Non-Disc }, qos=UserInitiated, stateFlags=executing, metrics=<CKOperationMetrics: 0x6000036ae520; cloudKitMetrics=<CKMetric: 0x600000164280; startDate=2023-08-20 05:49:38 +0000, duration=0.542, queueing=0.005, executing=1.039, bytesUploaded=39049, bytesDownloaded=14993, connections=1, connectionsCreated=0, totalBytesByChunkProfile={  }, chunkCountByChunkProfile={  }, fileCountByChunkProfile={  }>>, databaseScope=Private>  with error: <CKError 0x600003bac270: "Partial Failure" (1011); "Failed to modify some records"; partial errors: {
	a|716eb12d7ab664685a3c167d7bf9e194:(Articles:__defaultOwner__) = <CKError 0x600003b31140: "Invalid Arguments" (12/2006); server message = "Cannot create or modify field 'imageURL' in record 'Article' in production schema"; op = EB23EFCBEE9A1984; uuid = 4802C65A-DE53-4F29-AEA7-1A64685E89B4>
	... 181 "Batch Req

From the error message Cannot create or modify field 'imageURL' in record 'Article' in production schema, I think there's some mismatch between the CloudKit schema and the local DB, but I don't know CloudKit that much... hope this is enough information for debugging.

@oliver3
Copy link

oliver3 commented Oct 8, 2023

It seems I had the same issue: changes on my iPhone were visible on my iPad, but changes from my iPad did not appear on my iPhone. An extra problem was that changing a folder name on my iPad was not synced so new feeds that I added on my iPhone never appeared on my iPad either..

Reinstalling the app on my iPhone (the one that did not receive changes) fixed it just now..
Edit: what might be interesting is that I use the app mostly on my iPad and only sometimes (once every some weeks) on my iPhone, mostly to add a feed that I just discovered.

@oliver3
Copy link

oliver3 commented Oct 8, 2023

Nope, still strange syncing issues, e.g. when renaming a folder on iPad, it is being added as a new folder on iPhone next to the old one, with some feeds in the new folder and some in the old one. I give up and will use feedbin from now on.

@jjatie
Copy link

jjatie commented Mar 31, 2024

I have encountered this three times over the last ~6 months or so. Updates (mainly read status) from either my personal or work Mac are synced to iOS, however my activity from iOS is not synced back to those Macs. Both Macs see each other's changes.

The first time, I reinstalled NNW everywhere. NNW status was restored to my iOS status.
Second time I was experiencing other issues on my phone so I restored it from backup. This caused my NNW status to be restored to my macOS status.
Encountered this issue again this week. Still not resolved; not keen on trying to restore any devices again.

@vincode-io
Copy link
Member

@jjatie Read iCloud Syncing Limitations & Solutions and see if it can help you resolve your problem.

@jjatie
Copy link

jjatie commented Apr 13, 2024

Unfortunately I had to do the nuclear option. While that is certainly far less of a hassle to get back to a syncing situation, resetting devices also preserves the read status.

I was surprised to see just how much data NNW is using in iCloud. I have 45 subscriptions and before resetting I had between 450-1000 unread depending on which device was actually the SOT. iCloud storage read 70.0 MB. I was expecting "Larger number of unread articles" to mean at least another order of magnitude.

I guess I have a feature request, to opt-out of syncing the articles themselves. I know I would be more than willing to lose older, unread articles if it meant more stable iCloud syncing. Perhaps a balance is to sync unread URLs rather than the contents, or the ability to only keep articles for X amount of time (per feed)?

EDIT: Aww shucks. Just realized I lost my favourites. Might be good to add a disclaimer to support doc too.

@AndrewC-B
Copy link
Author

I ended up switching to another RSS client.* So far the iCloud syncing works great, and there are a few options for customising how sync works, which gives me some confidence I’d be able to at least attempt to troubleshoot an issue.

*No criticism intended to NNW or its developers. The root cause may well be at Apple’s end, and even if it’s not, it’s not like I paid for NNW - if anything, I owe the developers, not the other way around (and even if I had paid for it, NNW includes a big disclaimer about iCloud sync limitations in the app). Plus it’s early days for my new client (it was years before I had trouble with NNW’s iCloud sync).

@jjatie
Copy link

jjatie commented Jan 9, 2025

I've run into this issue again. I only have access to 2 devices, so I'm not sure if it's my Mac or iPhone that is problematic. This time I have only ~50 articles unread and 4 starred on my iPhone, with a few more unread articles on the Mac. Sync times seems unchanged, within ~3 seconds, but simply nothing seems to actually sync only pull in new content.

Has there been any new discoveries in this area? I noticed a related issue here.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

5 participants