On Tue, 2005-03-08 at 12:54 +0100, Kristian Berg wrote: > we will have a worker which > watches the f-spot photo database for changes. When these occur, it will > update the info in the data stored by FileSystemQueryable. Since the > photo database stores both filenames and metadata, it would be possible > to get the indexed data from lucene based on the filename? If so, an > updater shouldn't be too hard to write.
Yes, you can access the indexed data by filename, but the problem is knowing exactly what change has occurred in the f-spot db. We can easily determine when *something* has changed by watching the db, but I don't think (and I could be wrong) that there is a trivial way to know which specific records in the db have changed and thus which images need to be re-indexed. Doing this efficiently might require changes to f-spot. One approach would be to add a "last modified" field to the photo db that f-spot would update every time a photo's metadata changed. Then when beagle noticed that the photo db had changed, it could search for all photos which had been changed since the last time we indexed f-spot metadata, and re-index them accordingly. This would also make it easy to efficiently find photos that were added or changed while the daemon wasn't running. > > The second approach would be to do a separate search of the f-spot > > metadata at query-time... > Something like the google search? No, this would still be a hack to the file system backend. I'm just suggesting that rather than duplicating the f-spot metadata in our index, we could attach it to hits after the fact... but doing it the first way is probably easier. -J _______________________________________________ Dashboard-hackers mailing list [email protected] http://mail.gnome.org/mailman/listinfo/dashboard-hackers
