Re: [Tracker] PATCH fixing error when deleting from fts table
- From: Jürg Billeter <j bitron ch>
- To: Philip Van Hoof <spam pvanhoof be>
- Cc: tracker-list <tracker-list gnome org>
- Subject: Re: [Tracker] PATCH fixing error when deleting from fts table
- Date: Tue, 28 Jul 2009 09:27:07 +0200
On Mon, 2009-07-27 at 21:23 +0200, Philip Van Hoof wrote:
+
tracker_db_statement_bind_text (stmt, 0, object);
I just realize that the object here is probably wrong. As the object
holds the rdf:type's value, and not the value of the original. As is the
case in the else block of the function.
Yes, object is wrong here.
I'll await your review to check if this is the right way to solve this
issue. We could for example first SELECT the value out of the fts table,
to feed it back during the UPDATE. Not sure ...
We need to retrieve the value from the decomposed table, the virtual fts
table only stores the full-text index, it does not store the content in
fields.
The remove_fts conditional inside the loop is wrong, we should always
remove all property values with the right domain. The string comparison
with "rdfs:Resource" is only relevant for deciding whether to delete the
whole row, not for the individual properties.
The DELETE statement for the fts table should be kept, it just needs to
be moved down after the property loop. The implementation in the
tracker-fts module needs to be fixed as well - that's what is really
responsible for the error messages in the log -, I'll take care of that.
Thanks.
JÃrg
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]