PDA

View Full Version : Ical-Omnifocus sync causes duplicated items in OF


Mickmorrison
2010-03-06, 05:00 PM
Hello everyone,

I have searched the forums to try to find a solution to this issue, and have yet to find it described elsewhere so am posting here in the hope that someone can assist. I use OF exclusively and don't try and sync with other task managers. I have all of my contexts mapped to calendars. Under Ical Preferences, I only have the log debugging option selected - nothing else. Finally, I never create new actions in Ical (or any other program), only from OF. Sometimes I will change a due date or mark an action as complete from within Ical, but that doesn't seem to cause the problem described below.

Normally when I tell OF to 'sync with ical', OF does as asked and does a true sync with ical - ie adds new actions to ical and brings back any completed/amended items from ical. 50% of the time it works fine, no issues.

My problem is that, now and again, OF seems to import all existing ical todos/actions (with correct project/context info) back into my OF inbox. The end result is that I get an inbox full of duplicate actions that are already in the OF database. If I hit 'clean up' the duplicated inbox actions get sent to their correct projects/contexts but as duplicate values of those already there. So I end up with a database full of duplicate actions.

It's not a consistent thing, and I can not seem to replicate the problem. It just happens, seemingly randomly.

It's a minor issue and is easily fixed by deleting everything in the inbox when duplicates appear. But I just thought I would find out what might be going on and if there is something I can do to fix it. I'll update again here if I can work out what it is I'm doing that causes the problem.

kirkafur
2010-03-07, 04:26 PM
I'd like to second this. I have no other information to add.

Brian
2010-03-08, 04:13 PM
Sorry for the trouble this is causing, guys - there's some information on the root cause of issues like this in this post (http://forums.omnigroup.com/showpost.php?p=52416&postcount=2).

Is it possible that Mail.app is also interacting with iCal's To-Do database?

For at least one other customer (http://forums.omnigroup.com/showpost.php?p=73064&postcount=17), Mail.app was the one that was re-writing the task IDs and confusing OmniFocus during the next sync.

Brian
2010-03-08, 04:14 PM
Moved this thread to the iCal sync forum.

Mickmorrison
2010-03-11, 02:25 PM
Thanks for your response, Brian.

I don't use any other todo apps, only mail which as far as I can tell just displays what is in the todo database. I don't interact with todos in any way in mail, and don't seem to be able to disable todos in mail either.

I've also noticed that the duplication sometimes happens outside of omnifocus, and duplicates will appear in ical/mail but not in omnifocus. This probably confirms what you say: that it's probably an apple bug that causes actions to be duplicated in omnifocus, rather than the other way around.

A few days ago I ran that 'kill all' sync command which I found here in the forums somewhere, but I still have the issue. The only place I have any syncing of todos enabled is on my iphone/itunes sync; I'll turn that off for a few days and see what that does and post here again.

perronne
2010-04-01, 04:32 AM
Thanks for your response, Brian.
I've also noticed that the duplication sometimes happens outside of omnifocus, and duplicates will appear in ical/mail but not in omnifocus. This probably confirms what you say: that it's probably an apple bug that causes actions to be duplicated in omnifocus, rather than the other way around.

A few days ago I ran that 'kill all' sync command which I found here in the forums somewhere, but I still have the issue. The only place I have any syncing of todos enabled is on my iphone/itunes sync; I'll turn that off for a few days and see what that does and post here again.

It is not an Apple bug but as I have mentioned in other posts, Apple has changed the behaviour of Sync Services and MobileMe.

OmniFocus does /not/ sync with iCal. It syncs with the now extensible Sync Services which in turn syncs with MobileMe and various applications like iCal, BusyCal and SOHO Organizer. Soon, it will also sync with a WebIS Desktop Sync [WebIS is the firm behind Pocket Informant on iPhone etc]. And with this sync, start dates, contexts and projects will come with in the sync. Remember: Sync Services is now extensible. So if OmniGroup decides to sync with WebIS' extended syncs it will also get synced with Pocket Informant's start dates, contexts and projects. Pocket Informant is a calendar with tasks.

If the extended set of syncs is not supported, only due dates will be synced to Pocket Informant.

As mentioned, Sync Services sync with MobileMe too. This means that if you are using more than one computer with Snow Leopard, OmniFocus actions are automatically synced to that computer too. And if you sync with that computer directly from OmniFocus you will get duplicates. Lots of them ...

harringg
2010-04-21, 07:05 PM
New user trying out OF and new to David Allen's GTD methodology. I'm starting to get dupes too and if this is an issue that isn't "fixable", I have no interest in spending $80 on a desktop app. I have been syncing with my BB/iCal without dupes until bringing OF into the equation.

OF>Preferences>iCal>Include Context in Calendar item Title is NOT checked
Added item on BB (PIBB) [Task 'A']
Sync BB>Desktop [Task 'A' in iCal]
Sync OF>iCal [Task in OF's InBox]
Clean up OF
Sync OF>iCal
[Task 'A'] AND [Task 'A' w/Project Name] are in iCal

MacBook Pro
2.2 GHz Intel Core 2 Duo
4 GB 667 MHz DDR2 SDRAM
10.5.8

Storm 2 9550, v5.0.0.320 (Platform 4.2.0.124), Verizon

BusyCal 1.2.3
PocketInformant BB v2.0
Product: OmniFocus-1.7.x
Tag: OmniFocus/1.7.5/GM-v77.41.7

Brian
2010-04-22, 02:58 PM
Sorry for the confusion here, Harringg. The way iCal's to-do database is designed has a few shortcomings. For example, it doesn't have a built-in way to uniquely identify items. (You can't rely on the name of the action for this purpose: it might be modified, or you may have more than one action with the same name.)

It's relatively simple to work around that shortcomings in a way that makes it simple to sync one other application with iCal. OmniFocus (and we suspect most other apps that sync to-dos) uniquely identify each action by adding a link to the "URL" field of each to-do.

This works when a single application is syncing with iCal, but each to-do can only have one URL attached. If two or more products both try to sync with iCal, their modifications to the URL field stomp all over each other.

The other product's links are going to look like brand-new actions to OmniFocus, and vice versa. I suspect that's why the duplicates started showing up when OmniFocus was added to the mix.

watchit
2010-04-29, 02:52 PM
I have separate Contexts and corresponding Calendars in iCal that those Contexts sync with for each department of a TV production team. The Calendars are Published so that members of those teams can Subscribe to those Calendars and thus receive the Actions I create with the relevant Contexts as iCal To Do items. This would be great work around for OF's lack of networked collaboration features it it wasn't for the cursed duplication of items created by Sync Services.
Brian, it there's any solution to this, it would be greatly appreciated.

harringg
2010-04-29, 04:20 PM
It's relatively simple to work around that shortcomings in a way that makes it simple to sync one other application with iCal. OmniFocus (and we suspect most other apps that sync to-dos) uniquely identify each action by adding a link to the "URL" field of each to-do.


So if I create a new To-do in BusyCal, and it doesn't add anything to the URL field, I should be able to sync that task to OF, check it off when done and have it "done" in BusyCal, without a dupe? Since the only thing in the URL field is from OF? Like wise, if my sync software (Missing Sync) doesn't 'touch' the URL field, nor does RexWireless' ToDoMatrix, I should be a happy camper? I think PIBB may have added content to the URL field (but have stopped syncing with it to be sure).

That said, as long as the URL field is left alone, two-way sync with BusyCal (iCal) and OF will work fine with no dupes?

Right now I have dozens of To-Do's I'm syncing between BusyCal and TDM on my BB and none of them have anything in the URL field. It's now safe to sync to OF?

watchit
2010-05-01, 06:41 PM
This item duplication situation has become a real problem for me. I have a whole bunch of people with dozens of duplicates in the iCal Calendars that I have published to them.
I have tried deleting all to-dos from both iCal and Mail and resetting iCal prefs in OmniFocus but all the duplicates come back when I match Contexts to Calendars in iCal Sync prefs in OF again.
I tried deleting the OmniFocus folder in my MobileMe iDisk online but that just wasted a whole lot of time getting sync connected again and the problem was there again immediately.
Can anyone tell me where I can delete all ToDos where they reside - in Apple's Sync Services and/or MobileMe?
Please help.

derekr
2010-05-02, 11:36 AM
Hey watchit, this tends to happen when used in conjunction with a third-party sync solution. Is that possible here?

watchit
2010-05-03, 05:56 AM
Hi derekr, MobileMe is sharing iCal ToDo data with Mail but I'm not sure if other apps are muscling in there. It seems to come and go. I've found that the only solution is to got through all of the ToDos I'm publishing from iCal and mark them as completed in iCal, then if they mark the Actions they're synced to in OF as completed then I go back and mark them as uncompleted in iCal and mark the duplicate as completed instead. This is a seriously laborious way of doing things but it is the only solution I've found so far. It would be so much easier if someone could tell me how to delete ALL of the iCal ToDos in Sync Services so I could start again simply by using OF's Sync with iCal command to send a fresh batch to iCal, then onto the published calendars. Any clues?