[Tracker] more issues with indexer-split



As I will be working quite extensively on trunk post merge I require any
major changes to be done ASAP

list of changes required prior to merge (in order of priority) - all of
these already exist and work in trunk:


1) ïtrackerd: Handle file moves - update files in a directory
recursively when a directory is renamed/moved (need to pause indexer
before updating - watch out!). Likewise re-enable update of index from
trackerd as its needed for tagging and other user metadata

2) I could not see deletion of deleted and junk emails at startup (I see
it for new emails only but not for older emails that may have been
marked) - pls restore this functionality from trunk. Code needs to check
all summary files from start to end for junk and if not already marked
as junk in the JunkMail table then you must delete them and mark them.
If in doubt see trunk - older emails marked as deleted/junk will remain
in index which is unacceptable. see function check_summary_file in
trunks tracker-email-evolution.c

3) Clean and timely shutdown of trackerd and indexer if running (maybe
have a tracker-shutdown command as we have dbus interface for this which
is needed by the prefs/applet). Anyway crawler must end immediately and
must regularly force glib mainloop iterations so that any dbus requests
are handled in a timely fashion (they appear to be heavily slowed down
by the crawler)


4) Pause on detected external IO (IE from other apps). If we detect
writes in the watched directories the original trackerd paused for a few
seconds. this greatly sped up things like compiling sources which were
dog slow due to indexing. This appears to have been removed in the
branch - see pause_io in tracker-status.c

5) pause on battery (both for first time index and subsequent ones) -
needs to be done I think? (appears commented out in tracker-status.c)


Nice to have (not in trunk):

1) Put tracker-metadata.c and all related metadata functions from
tracker-db.c into a separate libtracker-metadata (I will put them in
libtracker-db if you dont!) as it is needed by both daemon, indexer (and
sqlite FTS when I add it)



Can be done after merge:

1) index progress for emails (indexer should be processing only when
type at a time IE files or emails but not both mixed at the same time)

2) Performance tuning/ memory leaks

3) update of tracker-preferences to use new pref locations and names

4) config migrations -  we really cant release anything if we ignore
existing config options. Can we provide a means to migrate them? 


I still need to do more testing of tracker to see if anything else is
wrong compared to trunk...


jamie





[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]