Re: Proposing Tracker for inclusion into GNOME 2.18



Joe Shaw wrote:
Hi,

I realize that my opinion probably cannot be considered objective, but I
will try my best.  I strongly feel that Tracker isn't ready to go into
GNOME in either the platform or the desktop.  Note that I'm not arguing
for Beagle here, just against Tracker.
okay, I was holding back on criticising beagle by not comparing it to 
tracker but I guess Im allowed to now... (I'll be nice dont worry!)
The reasons essentially are:

        * Tracker hasn't gotten enough widespread use.  It is not
        shipped by default on any distribution, let alone enabled.  For
        something which by its nature has to touch *all your data*, this
        is a larger negative for an indexer than, say, Tomboy or
        Deskbar.
possibly but a number of users have used it and they have not had 
anything like the problems that beagle has. We have test suites and a 
very vibrant community and mailing list where things have been very well 
tested. Touching data is read only - we are not writing anything to 
files so it wont eat your docs! (lets keep the FUD out!)

* The scope of Tracker isn't clear. Is the point to be fast
        search for files, or for all the user's data?  To what end has
        Tracker achieved its goal?
It should be clear - to be the best

* If Tracker's aim is to index all of the user's personal
        information (and not just files), the indexer is far too
        immature and lacking in functionality at this point.
tracker is mature at indexing files and does a much better job than some 
leading contenders including spotlight and other commercial indexers 
which all seem to consume significant resources. Tracker is different 
and arguably better in this area.
* The metadata storage APIs are not used by anything outside of
        Tracker as far as I know, and a Google Code Search turns up
        nothing.  Proposing an unused API for inclusion is a bad idea to
        me.
Not yet but I will be doing the  bookmark history stuff in Epiphany 
using this so time will tell on this. I note there is no other metadata 
server available to Gnome and its a huge missing part of the platform so 
 it should not be dismissed out of hand. Im also a database expert with 
over 10 years of designing and optimising relational databases so Im 
confident I can deliver here (especially as its a piece of cake for me!).

* There doesn't appear to be any API documentation. At least,
        none in either the libtracker/tracker.[ch] files or generated as
        part of the build process.  To give an example, there is this
        method:
GPtrArray *tracker_search_query ( TrackerClient *client, int live_query_id, ServiceType service, char **fields, const char *search_text, const char *keywords, const char *query, int offset, int max_hits, gboolean sort_by_service, GError **error); It is hardly clear to me what fields, search_text, keywords, and
        query are or how they are different from one another.  Nor is it
        clear what type is encapsulated in the GPtrArray returned here.
this is the thin wrapper around the dbus method - see the introspect 
file for details :
http://cvs.gnome.org/viewcvs/tracker/data/tracker-introspect.xml?rev=1.12&view=markup

* It's hard to tell for certain because of the above point, but
        the search APIs appear to have a major usability problem in that
        you can't search for both text and metadata at the same time
        using freeform text entered by the user.  (Think Google here,
        which searches both document content and metadata.)  This will
        be a problem when searching emails, for instance, because people
        will type "Joe Shaw eggplant" and expect it to match from the
        author field and the body of the message.
of course you can - have you tried it?

We index all indexable metadata in qdbm and its fully searchable - even the tags from our keyword database is searching from the fulltext index (they are also searchable from sqlite too in case a keyword happens to be a stopword)
Also rdf query allows for easy and effortless mixing of data searched 
from inverted word index  and the sqlite database so there are no limits 
here
* The graphical search tool is a C application that has been
        written entirely within the last month.  This isn't long enough
        to test for stability or user experience.
Considering it uses the gnome-search-tool source which is very stable 
and I have simply removed some code and added a little here and there 
then its not as exaggerated as you make out. The application is pretty 
stable but the only way to confirm this is to try it out.
* There doesn't appear to be any way to configure tracker short
        of editing a config file in ~/.Tracker.  This also means that
        emails won't be indexed by default, and if that is turned on,
        only "Inbox" and "Sent".
we only have preliminary indexing of emails which is disabled for this 
release. The next release will have it on. trackerd --help will show the 
command line options available as well.

While I don't want this to devolve into a Tracker vs. Beagle debate,
Beagle *is* worth mentioning because it is substantially ahead of
Tracker both in terms of functionality and maturity.
Tracker is much more stable though from what people have told me - we 
dont hang or crash or get stuck on docs. We also dont leak much. We are 
very viable on lower end machines. Combined with our KISS approach, it 
is a fairly well designed piece of software with relatively few 
(critical) bugs.
Tracker is miles ahead on the database side (which is non-existant in 
Beagle bar your backup for systems without EA's)- we have tags/keywords, 
extensible metadata, first class object storage etc. Beagle is only 
ahead on what it indexes and heres the big point - tracker's goal is not 
to index everything under the sun but only the important stuff.

I haven't proposed
it for inclusion yet because I want it to be suitable for all GNOME
users, but I certainly don't feel that Tracker fits that criteria at
this point either.
Well Im proposing it to replace gnome-search-tool with 
tracker-search-tool and nothing you said above has any bearing on this 
(ignoring the FUD).
To sum up,

Tracker is the only desktop search that can run well on any system that runs Gnome (especially 256 MB machines) and therefore makes a good default. Desktop search is a vital part of the platform and every other major platform has a competent system. Allowing tracker in allows desktop search for everyone not just those who have the luxury of a modern machine.
Tracker provides a faster, lighter and stabler alternative to Beagle for 
indexing files + a whole load of other goodies thrown in for free!
It fills in vital holes in our platform (tagging,  extensible metadata 
and persistent storage)
However, as Beagle is not being proposed, cannot get into the platform ( 
C is only allowed in the platform) and is plagued by a significant no of 
problems (all of which do not apply to tracker), I dont see how 
comparing beagle to tracker is relevant to this discussion?
In any event, almost everyone who has used both have preferred tracker - 
see the ubuntu forums :
http://www.ubuntuforums.org/showthread.php?t=213844

Our mailing list is also quite busy and we have lots of *regular* contributors - if tracker was not as good as I say it is then how do you explain that? (and no I have not marketed tracker and these guys came to me!)
FWIW though, if tracker and beagle can share a common dbus interface 
then letting tracker in would benefit everyone - thats the way I see it!
So if you are interested then let me know...


--
Mr Jamie McCracken
http://jamiemcc.livejournal.com/




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