We can't reproduce this problem. It would be useful if you guys could
try to reproduce it after applying this patch:


On Tue, 2009-11-03 at 11:39 +0200, Tshepang Lekhonkhobe wrote:
> this is probably related to the crash Laurent reported a few days ago
> 
> On Tue, Nov 3, 2009 at 10:07, Tshepang Lekhonkhobe<[email protected]> wrote:
> > Hi,
> >
> > When starting tracker-store while miner-fs is still alive I get the
> > following crash:
> >
> > Tracker-Message: Waiting for D-Bus requests...
> > (tracker-store:7891): Tracker-DEBUG: <--- [1] D-Bus request for batch
> > SPARQL Update, update:'DROP GRAPH
> > <file:///usr/share/applications/gksu.desktop> INSERT {
> > <urn:nepomuk:datasource:84f20000-1241-11de-8c30-0800200c9a66> a 
> > nie:DataSource .
> > <file:///usr/share/applications/gksu.desktop> a
> > nfo:SoftwareApplication , nie:DataObject ;
> >         nie:dataSource 
> > <urn:nepomuk:datasource:84f20000-1241-11de-8c30-0800200c9a66> ;
> >         a nfo:Executable , nfo:FileDataObject , nie:DataObject ;
> >         nie:title "Root Terminal" .
> > <file:///usr/share/applications/gksu.desktop>
> > <http://www.semanticdesktop.org/ontologies/2007/01/19/nie#comment>
> > "Opens a terminal as the root user, using gksu to ask for the
> > password" .
> > <file:///usr/share/applications/gksu.desktop>
> > <http://www.semanticdesktop.org/ontologies/2007/03/22/nfo#softwareCmdLine>
> > "gksu /usr/bin/x-terminal-emulator" .
> > <urn:theme-icon:gksu-root-terminal> a nfo:Image .
> > <file:///usr/share/applications/gksu.desktop> nfo:softwareIcon
> > <urn:theme-icon:gksu-root-terminal> .
> > <urn:software-category:GTK> a nfo:SoftwareCategory ;
> >         nie:title "GTK" .
> > <file:///usr/share/applications/gksu.desktop> nie:isLogicalPartOf
> > <urn:software-category:GTK> .
> > <urn:software-category:Utility> a nfo:SoftwareCategory ;
> >         nie:title "Utility" .
> > <file:///usr/share/applications/gksu.desktop> nie:isLogicalPartOf
> > <urn:software-category:Utility> .
> > <urn:software-category:TerminalEmulator> a nfo:SoftwareCategory ;
> >         nie:title "TerminalEmulator" .
> > <file:///usr/share/applications/gksu.desktop> nie:isLogicalPartOf
> > <urn:software-category:TerminalEmulator> .
> > <file:///usr/share/applications/gksu.desktop> nie:dataSource
> > <urn:nepomuk:datasource:84f20000-1241-11de-8c30-0800200c9a66> ;
> >         nfo:fileName "gksu.desktop" .
> > <file:///usr/share/applications/gksu.desktop> a nfo:FileDataObject ,
> > nie:DataObject .
> > <file:///usr/share/applications/gksu.desktop> nie:isStoredAs
> > <file:///usr/share/applications/gksu.desktop> ;
> >         nfo:fileLastModified "2009-04-10T16:34:09Z" .
> > }
> > '
> > (tracker-store:7891): Tracker-DEBUG: Preparing query: 'SELECT ID FROM
> > "rdfs:Resource" WHERE Uri = ?'
> > (tracker-store:7891): Tracker-DEBUG: Preparing query: 'SELECT (SELECT
> > Uri FROM "rdfs:Resource" WHERE ID = "rdf:type") FROM
> > "rdfs:Resource_rdf:type" WHERE ID = ?'
> > (tracker-store:7891): Tracker-DEBUG: Preparing query: 'SELECT
> > "rdfs:comment", "rdfs:label", strftime ("%Y-%m-%dT%H:%M:%SZ",
> > "tracker:added", "unixepoch"), CAST ("tracker:modified" AS TEXT),
> > "dc:title", "dc:creator", "dc:subject", "dc:description",
> > "dc:publisher", "dc:contributor", "dc:type", "dc:format",
> > "dc:identifier", "dc:language", "dc:coverage", "dc:rights",
> > "nao:identifier" FROM "rdfs:Resource" WHERE ID = ?'
> > (tracker-store:7891): Tracker-DEBUG: Preparing query: 'SELECT
> > "rdfs:Resource"."Uri" FROM "rdfs:Resource_rdf:type" INNER JOIN
> > "rdfs:Resource" ON "rdfs:Resource_rdf:type"."rdf:type" =
> > "rdfs:Resource"."ID" WHERE "rdfs:Resource_rdf:type"."ID" = ?'
> > (tracker-store:7891): Tracker-DEBUG: Preparing query: 'SELECT
> > "tracker:added" FROM "rdfs:Resource" WHERE ID = ?'
> > (tracker-store:7891): Tracker-DEBUG: Preparing query: 'SELECT
> > "tracker:modified" FROM "rdfs:Resource" WHERE ID = ?'
> > (tracker-store:7891): Tracker-DEBUG: Preparing query: 'SELECT
> > "dc:title" FROM "rdfs:Resource" WHERE ID = ?'
> > (tracker-store:7891): Tracker-DEBUG: Preparing query: 'SELECT strftime
> > ("%Y-%m-%dT%H:%M:%SZ", "dc:date", "unixepoch") FROM
> > "rdfs:Resource_dc:date" WHERE ID = ?'
> > (tracker-store:7891): Tracker-DEBUG: Preparing query: 'SELECT
> > "dc:date" FROM "rdfs:Resource_dc:date" WHERE ID = ?'
> > (tracker-store:7891): Tracker-DEBUG: Preparing query: 'SELECT
> > "dc:source" FROM "rdfs:Resource_dc:source" WHERE ID = ?'
> > **
> > Tracker:ERROR:tracker-db-interface-sqlite.c:1231:tracker_db_statement_sqlite_reset:
> > assertion failed: (!priv->stmt_is_sunk)
> >
> > Program received signal SIGABRT, Aborted.
> > 0xb7fe1424 in __kernel_vsyscall ()
> > (gdb) bt
> > #0  0xb7fe1424 in __kernel_vsyscall ()
> > #1  0xb7ab53d0 in *__GI_raise (sig=6) at
> > ../nptl/sysdeps/unix/sysv/linux/raise.c:64
> > #2  0xb7ab8a85 in *__GI_abort () at abort.c:88
> > #3  0xb7c86c2c in IA__g_assertion_message (domain=0xb7fd4f8b
> > "Tracker", file=0xb7fdaacd "tracker-db-interface-sqlite.c", line=1231,
> >    func=0xb7fdae40 "tracker_db_statement_sqlite_reset",
> > message=0x840aa90 "assertion failed: (!priv->stmt_is_sunk)")
> >    at 
> > /build/buildd-glib2.0_2.22.2-2-i386-R8GTDn/glib2.0-2.22.2/glib/gtestutils.c:1302
> > #4  0xb7c8724d in IA__g_assertion_message_expr (domain=0xb7fd4f8b
> > "Tracker", file=0xb7fdaacd "tracker-db-interface-sqlite.c", line=1231,
> >    func=0xb7fdae40 "tracker_db_statement_sqlite_reset",
> > expr=0xb7fdab0b "!priv->stmt_is_sunk") at
> > /build/buildd-glib2.0_2.22.2-2-i386-R8GTDn/glib2.0-2.22.2/glib/gtestutils.c:1313
> > #5  0xb7fc554c in tracker_db_statement_sqlite_reset (stmt=<value
> > optimized out>) at tracker-db-interface-sqlite.c:1231
> > #6  0xb7fc559d in tracker_db_interface_sqlite_create_statement
> > (db_interface=0x806eef0, query=0x840c368 "SELECT \"dc:source\" FROM
> > \"rdfs:Resource_dc:source\" WHERE ID = ?")
> >    at tracker-db-interface-sqlite.c:506
> > #7  0xb7fc203a in tracker_db_interface_create_statement
> > (interface=0x806eef0, query=0xb7fd5abc "SELECT \"%s\" FROM \"%s\"
> > WHERE ID = ?") at tracker-db-interface.c:291
> > #8  0xb7f9a69a in get_property_values (property=0x83c9800) at
> > tracker-data-update.c:762
> > #9  0xb7f9bafd in delete_metadata_decomposed (property=0x83c9800,
> > value=0x80ee998
> > "urn:nepomuk:datasource:84f20000-1241-11de-8c30-0800200c9a66",
> > error=0x0)
> >    at tracker-data-update.c:973
> > #10 0xb7f9ca6b in tracker_data_delete_statement (subject=0x806df98
> > "file:///usr/share/applications/gksu.desktop", predicate=0x83c9720
> > "http://purl.org/dc/elements/1.1/source";,
> >    object=0x80ee998
> > "urn:nepomuk:datasource:84f20000-1241-11de-8c30-0800200c9a66",
> > error=0x0) at tracker-data-update.c:1148
> > #11 0xb7f9cfd5 in tracker_data_delete_resource_description
> > (uri=0x806df98 "file:///usr/share/applications/gksu.desktop",
> > error=0xbffff29c) at tracker-data-update.c:1789
> > #12 0xb7fb6985 in tracker_sparql_query_execute_drop_graph
> > (self=0x83ff120, error=0xbffff318) at tracker-sparql-query.c:2464
> > #13 tracker_sparql_query_execute (self=0x83ff120, error=0xbffff318) at
> > tracker-sparql-query.c:1157
> > #14 0xb7f9951f in tracker_data_update_sparql (
> >    update=0x8404950 "DROP GRAPH
> > <file:///usr/share/applications/gksu.desktop> INSERT
> > {\n<urn:nepomuk:datasource:84f20000-1241-11de-8c30-0800200c9a66> a
> > nie:DataSource .\n<file:///usr/share/applications/gksu.desktop> a
> > nfo:S"..., error=0xbffff318) at tracker-data-update.c:1829
> > #15 0x080533eb in queue_idle_handler (user_data=0x83f5910) at
> > tracker-store.c:203
> > #16 0xb7c5e0b1 in g_idle_dispatch (source=0x806db70, callback=0,
> > user_data=0x83f5910) at
> > /build/buildd-glib2.0_2.22.2-2-i386-R8GTDn/glib2.0-2.22.2/glib/gmain.c:4065
> > #17 0xb7c5fe98 in g_main_dispatch (context=0x80670b0) at
> > /build/buildd-glib2.0_2.22.2-2-i386-R8GTDn/glib2.0-2.22.2/glib/gmain.c:1960
> > #18 IA__g_main_context_dispatch (context=0x80670b0) at
> > /build/buildd-glib2.0_2.22.2-2-i386-R8GTDn/glib2.0-2.22.2/glib/gmain.c:2513
> > #19 0xb7c63623 in g_main_context_iterate (context=0x80670b0, block=1,
> > dispatch=1, self=0x805b850) at
> > /build/buildd-glib2.0_2.22.2-2-i386-R8GTDn/glib2.0-2.22.2/glib/gmain.c:2591
> > #20 0xb7c63aea in IA__g_main_loop_run (loop=0x84022e8) at
> > /build/buildd-glib2.0_2.22.2-2-i386-R8GTDn/glib2.0-2.22.2/glib/gmain.c:2799
> > #21 0x080503f6 in main (argc=Cannot access memory at address 0x0
> > ) at tracker-main.c:430
> >
> >
> > --
> > my place on the web:
> > floss-and-misc.blogspot.com
> >
> 
> 
> 
> -- 
> my place on the web:
> floss-and-misc.blogspot.com
> _______________________________________________
> tracker-list mailing list
> [email protected]
> http://mail.gnome.org/mailman/listinfo/tracker-list


-- 
Philip Van Hoof, freelance software developer
home: me at pvanhoof dot be 
gnome: pvanhoof at gnome dot org 
http://pvanhoof.be/blog
http://codeminded.be
diff --git a/src/libtracker-data/tracker-data-update.c b/src/libtracker-data/tracker-data-update.c
index eb41b82..9d0a8b6 100644
--- a/src/libtracker-data/tracker-data-update.c
+++ b/src/libtracker-data/tracker-data-update.c
@@ -1673,7 +1673,8 @@ tracker_data_delete_resource_description (const gchar *uri, GError **error)
 {
 	TrackerDBInterface *iface;
 	TrackerDBStatement *stmt;
-	TrackerDBCursor    *cursor, *single_cursor, *multi_cursor;
+	TrackerDBCursor    *cursor, *multi_cursor;
+	TrackerDBResultSet *single_result;
 	TrackerClass	   *class;
 	GString		   *sql;
 	TrackerProperty	  **properties, **property;
@@ -1725,13 +1726,13 @@ tracker_data_delete_resource_description (const gchar *uri, GError **error)
 				}
 			}
 
-			single_cursor = NULL;
+			single_result = NULL;
 			if (!first) {
 				g_string_append_printf (sql, " FROM \"%s\" WHERE ID = ?", tracker_class_get_name (class));
 				stmt = tracker_db_interface_create_statement (iface, "%s", sql->str);
 				tracker_db_statement_bind_int (stmt, 0, resource_id);
-				single_cursor = tracker_db_statement_start_cursor (stmt, NULL);
-				tracker_db_cursor_iter_next (single_cursor);
+				single_result = tracker_db_statement_execute (stmt, NULL);
+				tracker_db_result_set_iter_next (single_result);
 				g_object_unref (stmt);
 			}
 
@@ -1753,15 +1754,18 @@ tracker_data_delete_resource_description (const gchar *uri, GError **error)
 				}
 
 				if (!tracker_property_get_multiple_values (*property)) {
+					gchar *str;
+
 					/* single value property, value in single_result_set */
 
-					value = tracker_db_cursor_get_string (single_cursor, i++);
+					tracker_db_result_set_get (single_result, i++, &str, -1);
 
-					if (value) {
+					if (str) {
 						tracker_data_delete_statement (uri, 
 						                               tracker_property_get_uri (*property), 
-						                               value, 
+						                               str, 
 						                               error);
+						g_free (str);
 					}
 
 				} else {
@@ -1801,7 +1805,7 @@ tracker_data_delete_resource_description (const gchar *uri, GError **error)
 			}
 
 			if (!first) {
-				g_object_unref (single_cursor);
+				g_object_unref (single_result);
 			}
 
 		}
_______________________________________________
tracker-list mailing list
[email protected]
http://mail.gnome.org/mailman/listinfo/tracker-list

Reply via email to