Re: [Tracker] The org.freedesktop.Tracker.Files.Create method



2008/7/3 Philip Van Hoof <spam pvanhoof be>:
Hi there,

The indexer-split is all about moving the indexer to another process and
letting trackerd perform no writes itself.

Right now will the method org.freedesktop.Tracker.Files.Create trick
trackerd into writing a record. it doesn't even matter whether or not
that record is real (whether or not it's a thing that exists, is not
even seriously checked for).

We feel strange about letting the indexer index this. The indexer's
architecture is built around the concept of indexing things that are
real and that therefore exist.

We also feel strange about letting trackerd write a thing that doesn't
necessarily exist in the database. In fact, we feel strange about
letting trackerd write anything.

On top of that, I personally question the use of this method.

Wouldn't a org.freedesktop.Tracker.Files.Check be better here? Such an
API would illustrate to the indexer (via trackerd) that it should better
go check something. Like a VFS directory that might indeed not be in the
module's configuration as path-to-index.

Just adding arbitrary 'stuff' is going to confuse the indexer in all
sorts of interesting ways (like, the setting up of monitors on something
that doesn't exist, yet can't be auto-removed, yet must be returned if
there was a match yet doesn't seem to have any data to search for other
than simple meta data).

So what do we do with this capability?

Daze[1] actually use org.freedesktop.Tracker.Files.Exist to store user
annotations directly in Tracker. So the API is indeed of use. However
another incarnation of it may be more in order.

With my Xesam hat on I imagine that the Xesam Metadata Storage spec is
going to have something like:

CreateRecord (content, source, fields)

Where one could store a purely virtual record in the db. The indexer
should automatically pick this up somehow. I have not really thought
the API through so please don't take CreateRecord to seriously. I do
however see the need for something along those lines.

Cheers,
Mikkel

[1]: Daze was a part-serious part-sample application I stirred
together to test Tracker. See http://www.grillbar.org/wordpress/?p=173



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