Setting to disable automatic syncing
jaynavar opened this issue · 6 comments
It would be nice to have a setting to completely disable automatic syncing, so that we can just trigger it manually when we want to sync down. In this mode we would still want it to always "sync up" new item additions immediately, but just prevent from ever automatically syncing down.
On this note, what is the current automatic syncing behavior? (assuming on WiFi with "only auto sync on WiFi" setting selected):
- Does it ever sync in the background, or only when the app is opened? (wondering about effect on battery life if it does background sync)
- Does the app have to be opened in "full view" or does it attempt to sync even when just opened in "Quick Dialog" view?
- When adding an item in "Quick Dialog" does it only sync up the new item or does it also pull down changes at the same time? Are "sync-up" and "sync-down" always considered separate operations or are there any situations where both are triggered by the same event?
We can add an option to disable syncing as soon as the new API is available. Currently syncing is required for proper functioning of the app to fetch the new item ids after having added an item.
I'm not sure why you would want this function though. Syncing over WiFi doesn't really have disadvantages, does it?
-
Does it ever sync in the background, or only when the app is opened? (wondering about effect on battery life if it does background sync) Only when the app is opened
-
Does the app have to be opened in "full view" or does it attempt to sync even when just opened in "Quick Dialog" view? Any view, including Quick Dialog
-
When adding an item in "Quick Dialog" does it only sync up the new item or does it also pull down changes at the same time? Are "sync-up" and "sync-down" always considered separate operations or are there any situations where both are triggered by the same event? Syncing up always happens immediately if any network connection is available. Syncing down only at the specified conditions. Currently, syncing down is also triggered to fetch the new item id if necessary, but this will go away with the new API.
The reason for the separate operations is that syncing down is expensive (network & battery) while syncing up is cheap.
Thanks for answering these questions!
The reason I want to disable automatic sync down is that I only use Quick Dynalist for adding new items in Quick Dialog, but I rarely view them in the app, so I'd like to avoid the network and battery hit of syncing down everytime I add a new item. Then if I do want to view items in the app I can always manually hit "Sync now".
The "auto sync" setting could be ternary: "always", "on WiFi", and "never".
I just experienced a more practical reason to want to disable automatic sync down when using the app this afternoon.
I was adding multiple items within a short time period, and I noticed that the Syncing takes a bit longer than usual. Dynalist's API slowed us down.
toast message popped up. I then observed that my most recently added items weren't getting synced up immediately!
So it seems like the sync down hits the API cap, causing the rate limit delay (60 seconds), causing some of my items to not be able to sync up immediately. However, if I had automatic sync down disabled, the API request cap would have never been hit (as I'm assuming the issue stemmed from the large sync down not the small sync up), allowing my new items to be synced up immediately.
Just thought I'd share this experience for wanting this feature, as it adds a stronger reason besides the argument of "avoiding WiFi bandwidth and battery hit".
Also, in your original response, you mentioned that we need the new API before this feature can be supported. Why is that? Aren't sync-up and sync-down already decoupled, so couldn't there just be a ternary option like I mentioned in the post above?
Thanks!
Fair enough. It might be due to the sync triggering a global api limit hit, yes.
Whenever a new item is added we do not know its id. To do any operation on it, editing, moving, adding child items etc we need a full sync currently.
That makes sense. However for the "just use Quick Dialog to add new items" workflow (like the one I use), those operations mentioned are not needed. Having an option (can even be hidden in an "advanced settings" section) would be really useful for users that follow this workflow.
Yes, it doesn't prevent us from adding a disable automatic sync option. Even now, sync is only triggered for this reason if any operation you have performed requires the item id.