New items are sometimes not indexed quickly enough

Bug #289556 reported by Peng Deng on 2008-10-26
42
This bug affects 5 people
Affects Status Importance Assigned to Milestone
Do
Medium
Chris Halse Rogers
Do Plugins
Undecided
Unassigned
Nominated for 0.8 by Jiří Dudek

Bug Description

When using Google Calendar plugin to create an event, the new event is returned but not indexed immediately in the universe so all the calendars won't contain such a event until next time universe gets updated.

A manual update might be needed as the last step of New Event action.

Plugin Name: Google Calendar
Plugin Version: v1.5

Is is more of a Do bug.

Changed in do-plugins:
status: New → Confirmed

Plugins need a simple way to tell Do that new items have been created and should be added to the index immediately. A good way to provide this ability to plugins would be a method on CoreService.

Changed in do:
assignee: nobody → djsiegel
importance: Undecided → Medium
milestone: none → 0.8.1
status: New → Confirmed
Changed in do-plugins:
status: Confirmed → Invalid
Jiří Dudek (heevy) wrote :

Hello,
when do u think it could be fixed ? Milestone 8.1 alreade released but no fix of this bug.... :(

Peng Deng (d6g) wrote :

I recently have realized by calling the actually updating function at the last step in a plugin is not a good idea, because this will hide the changes of the item source from universe manager. It might be OK if items are just get modified or added, but if any item is removed and the list is updated before universe manager notices it, the item will stay in the universe for ever.

So currently the only way to let universe manager know an item is removed is to wait until the next update, this is really unfriendly to user because in some circumstances users may want to see changes immediately.

Peng Deng (d6g) wrote :

I added a branch to propose an ReloadItemSource method from Services.Core, which will allow plugins to update a specific ItemSource specified using the class' FullName. e.g. ReloadItemSource (typeof (GDocsItemSource).FullName);

I would like to know whether is there a better way to pass the identification of an ItemSource to core service, the current one feels a bit dirty.

Thomsen (thomsen) wrote :

Why not just give the type as parameter?

We've talked about this a number of times, we will not have a method to
allow itemsources to refresh their universe. It's not the correct way to
solve the problem.

--
-- Alex Launi

Michael Rooney (mrooney) wrote :

Can't we use inotify on the "watched" directories?

Chris Halse Rogers (raof) wrote :

Do 0.9 will include new API to allow plugins to do this.

Plugins which want to use this will need patches to transition to DynamicItemSource.

Changed in do:
status: Confirmed → Fix Committed
milestone: 0.8.1 → 0.9
Changed in do:
assignee: David Siegel (djsiegel) → Chris Halse Rogers (raof)
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Duplicates of this bug

Other bug subscribers