View Single Post
Quote:
Originally Posted by tcowan View Post
One solution might be to improve the sync algorithm so that only added/changed/deleted data is sent and increase the frequency of syncs, particularly on the desktop. It looks like my Mac is syncing once per hour. If the Mac synced after a screen unlock or focus event (with a max of every 5 minutes or so), maybe that might decrease the likelihood of a dup.
OmniFocus actually does sync changes. We send a small file containing one or more files with "do <thing> to <some item ID>" instructions, in other words. Timestamps on those files help OmniFocus do the right things in the right order.

The issue here is that checking off an item on two devices gives you two new items in the database with their own IDs. Theoretically, we could start trying to track which items had which parents and attempt to resolve this, but that would make syncs take longer. It would also introduce the possibility of false positives deleting data you wanted to preserve.

If there's one things customers have told us they want, it's fast syncing. If there's two things customers have told us they want, it's fast syncing that doesn't delete things they wanted to remember. Better to have two copies than zero, right? ;-)

In any case, based on the amount of feedback we get about this issue, it appears that there are other things that customers would prefer we work on right now. It annoys me when it happens, as well, but once you get the hang of it, it becomes pretty rare.

Regarding sync frequency - by default, the app will initiate a sync of any new changes after one minute of idle time. (We'd rather be polite and sync when you switch to another app or get up from your chair than yank control of the app away when you're using it.)

If a copy of the app doesn't have any new changes, it'll sync once an hour to pull down any new info from the server.

However, if you'd prefer a more frequent sync, you can change the behavior with a Terminal command like
Code:
defaults write com.omnigroup.OmniFocus MaximumTimeBetweenSync <number of seconds>
(Note that Mac App Store customers will want to use "com.omnigroup.OmniFocus.MacAppStore" in the above command.)

Hope that helps!

Last edited by Brian; 2012-07-18 at 03:59 PM.. Reason: 'two new devices' -> 'two new items in the database'