Re: [Tracker] questions



Samuel Cormier-Iijima wrote:
I had a couple of quick questions and comments about Tracker:

How come Tracker uses the low-level DBus interface? Exporting a
GObject over DBus would be *much* simpler (I've tried it :-),
especially for building parameters (GHashTable -> Python dict) and
doing signals (GObject signals get mapped to DBus signals) for the
eventual live query support. Also, this would automagically give us
certain nice things like introspection for free...

Do you mean use the dbus binding tool to generate server side gobjects?

If so it wont work because tracker is multi-threaded and dbus requests need to be queued for execution by one or more threads (currently only one in the code but its designed for supporting more).



Currently, much of Tracker is case-*in*sensitive. This is fine for
things like service types and metadata types, but could the file name
itself possibly be case-sensitive? Tracker can't tell the difference
right now between two files named Video and video...

hmm good one - I suspect the database for mysql is case insensitive by default so I will need to tell it otherwise (sqlite should be case sensitive by default)


Also, the DBus interface seems redundant at times, especially when it
asks for a pair of service and uri. I might be missing something here
(i.e. correct me if I'm wrong), but shouldn't the uri be unique? Why
do we have to pass a service type along with it?

Because when we support emails they will be in a different db or table so I will need to use the service name to work out which DB or table to use in queries. Storing all services in one table would cause performance problems if email count is very large.


tracker_log opens and closes the tracker.log file each time something
is logged. Maybe using an existing framework like syslog or GLib's
logging facilities [1] would be easier and faster...

Dont know oft hand.

We could probably do with a #debug compiler diretive so that the log traffic can be substantially reduced to improve performance.


Anyways, let me know if something needs to be done, I have a bunch of
free time :-P

in terms of urgency the gui and email support are top of the list. See my todo list for what needs doing with emails.

Im busy sorting out the new indexer with sqlite ATM so I wont be able to do much in the other areas til at least the end of the weekend.

All help greatly appreciated :)

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




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