desktop-data-model r7261 - trunk/engine



Author: otaylor
Date: Mon Mar 17 18:53:07 2008
New Revision: 7261
URL: http://svn.gnome.org/viewvc/desktop-data-model?rev=7261&view=rev

Log:
Add missing indices, fixing severe performance problems when updating cache.


Modified:
   trunk/engine/hippo-disk-cache.c

Modified: trunk/engine/hippo-disk-cache.c
==============================================================================
--- trunk/engine/hippo-disk-cache.c	(original)
+++ trunk/engine/hippo-disk-cache.c	Mon Mar 17 18:53:07 2008
@@ -139,8 +139,11 @@
         "  BEGIN "
         "   DELETE FROM QueryResult WHERE query = old.id; "
         "  END ",
+        "CREATE INDEX IF NOT EXISTS Query_uriParams ON Query (uri, params)",
         "CREATE TABLE IF NOT EXISTS QueryResult (query INTEGER, resourceId TEXT)",
+        "CREATE INDEX IF NOT EXISTS QueryResult_query ON QueryResult (query)",
         "CREATE TABLE IF NOT EXISTS Property (session INTEGER, timestamp INTEGER, resourceId TEXT, propertyId TEXT, type TEXT, defaultChildren TEXT, value, itemTimestamp INTEGER DEFAULT -1)",
+        "CREATE INDEX IF NOT EXISTS Property_resourceProperty ON Property (resourceId, propertyId)",
         NULL
     };
 
@@ -943,7 +946,7 @@
     ResourceTracking *tracking;
 
     if (!hippo_sqlite_execute_sql_single_result(cache->db,
-                                  "SELECT id from Query WHERE uri = :uri AND params = :params",
+                                  "SELECT id FROM Query WHERE uri = :uri AND params = :params",
                                    "s:uri", uri,
                                    "s:params", params,
                                    NULL,



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