I suggest that we can check these values changes case by case:

For Example,
1. If check/uncheck "Enable Evolution mail",
we just need to check if evolution index data existing on database,
if Yes,user's action is to uncheck it,
we just need to make these data as "obsolete" or "invisible".

2. If user only change "Ignore file pattern",
we don't need to reindex everything,
just go through all existing data, if it matches ignore file pattern,
just remove it or make them as "obsolete".


3. If user only add some directory to watch,
we don't need to reindex all, just index these new added directories.



....

To avoid reindex everything, we need to check every preferences changes
carefully.


> Hi,
>
> Ava reported several bugs which commonly need restart&reindex trackerd
> when changing setting through tracker-preferences, here is bug list:
>
> 503350 ��� Ignored File Patterns function do not work well
> 503376 ��� Cannot disable evolution "Enable Evolution email Indexing" in 
> "Emails" tab
> 503573 ��� check/uncheck "Index file contents" needs trackerd reindex
> 503725 ��� check/uncheck "Index mounted directories" needs trackerd
> reindex
> 503727 ��� check/uncheck "Index and watch my home directory" needs 
> trackerd reindex
> 503960 ��� Set "Additional paths to index and watch" needs trackerd
> reindex
> 503966 ��� Set "Crawled Directories" needs trackerd reindex
> 503977 ��� check/uncheck "Enable Thunderbird email indexing" needs 
> trackerd reindex
> 504000 ��� Set "Ignored File Patterns" needs trackerd reindex
>
> >From user experience, it is a nightmare when he only does minor change
> like enable/disable evolution. (The index record for his $HOME will be
> also removed, which is very waste).
>
> I'm starting thinking whether any better approach to resolve this
> problem. We need offer a mechanics to let trackerd update database to
> reflect keys changing.
>
> For example, when user disable Evo through t-p, choose "Yes" to restart
> tracerd when close t-p, things will happen with current trunk code.
>
> 1) A D-Bus message "SetBoolOption" will be sent out
> 2) trackerd gets it and tracker_dbus_method_set_bool_option will be
> invoked.
> 3) tracker->index_evolution_emails will be set to false;
>
> How about we add step 4) remove Evolution data from database
>
> Or we add a boolean property to called "IsShown", set then all to FALSE.
> And when trackerd is requested to search, only return those result with
> "IsShown" is TRUE (I stolen Jerry's idea here).
>
> I composed a page on about the keys for tracker
> http://www.genunix.org/wiki/index.php/tracker_configuration
>
> There are two columns "need restart" and "need reindex" need more
> discussion.
>
> Any ideas?
>
> Thanks,
> Halton.
>
>   
> ------------------------------------------------------------------------
>
> _______________________________________________
> tracker-list mailing list
> [email protected]
> http://mail.gnome.org/mailman/listinfo/tracker-list
>   

_______________________________________________
tracker-list mailing list
[email protected]
http://mail.gnome.org/mailman/listinfo/tracker-list

Reply via email to