View Single Post
Jakobox, sorry for the trouble this is causing. I'll take a look at the support database and see if I can determine which Ninja sent you that response - it sounds like they have made an error when they referred to the issue as a bug. (Apologies for that, as well.)

What you're encountering is the consequence of a design tradeoff we made in order to keep sync acceptably fast on iOS devices. (Even newer iOS devices are still thousands of times slower than even a low-end desktop Mac.) There are ways we could re-architecture the sync process to prevent what you're describing here, but the cost would be making sync much, much slower. (As in multiple times as long as it currently takes.)

We're not thrilled with the current behavior, but it's predictable - and the feedback we get from customers strongly indicates that they want sync to be as fast as possible. For many customers, the fix for the issue you're describing (much longer syncs) would be worse than the problem it's addressing. That's why we haven't changed this.

In case it helps, here's what I suspect is happening:

Before you leave, your mac updates a bunch of information in the database and syncs it to the server.

Later on, the iPhone app launches. As you work with it, it takes the new changes from you, but also updates some actions in the database automatically. Since the last time you launched it, some of your deadlines have expired, actions have moved into your "due soon" window, and so forth.

Some of the changes on the iPhone touch the same actions that the last sync from the Mac did. That causes a "sync conflict". (The app has instructions from two different devices that say to change the same item in the database.)

In order to keep sync from taking too long, OmniFocus resolves those conflicts fairly simply. Whichever change happened last wins; earlier changes to that item are overridden. That's how the items get moved - the iPhone touched them most recently, so the changes from that version of the database win, even though they're based on an older snapshot of your database.

Again, apologies for the inconvenience this causes you, but there aren't any easy or quick fixes here - if there were, we would have added them already.

I'd counsel you against adding changes on multiple devices on one of those flights if you know your devices aren't in sync. The subway situation is tougher, of course - that can happen completely unintentionally. I'm really sorry for the trouble that causes.

One idea we've kicked around is adding something along the lines of this Instapaper update - in theory, that could kick off a sync in the background when you arrived at or left your home/office. That would reduce the chance that your phone would be using out-of-date information when you captured those items, at least. If you'd like me to attach you to that feature request, let me know and I'm happy to do so.

Last edited by Brian; 2012-08-17 at 03:53 PM.. Reason: forgot to include the link to the Instapaper blog post.