add index for incrementusecount to the texture database
authorJonathan Marshall <jmarshall@never.you.mind>
Thu, 24 May 2012 07:14:05 +0000 (19:14 +1200)
committerJonathan Marshall <jmarshall@never.you.mind>
Sat, 26 May 2012 02:56:56 +0000 (14:56 +1200)
xbmc/TextureDatabase.cpp
xbmc/TextureDatabase.h

index 2bd9587..7747431 100644 (file)
@@ -53,6 +53,7 @@ bool CTextureDatabase::CreateTables()
     CLog::Log(LOGINFO, "create sizes table, index,  and trigger");
     m_pDS->exec("CREATE TABLE sizes (idtexture integer, size integer, width integer, height integer, usecount integer, lastusetime text)");
     m_pDS->exec("CREATE INDEX idxSize ON sizes(idtexture, size)");
+    m_pDS->exec("CREATE INDEX idxSize2 ON sizes(idtexture, width, height)");
     m_pDS->exec("CREATE TRIGGER textureDelete AFTER delete ON texture FOR EACH ROW BEGIN delete from sizes where sizes.idtexture=old.id; END");
 
     CLog::Log(LOGINFO, "create path table");
@@ -136,6 +137,10 @@ bool CTextureDatabase::UpdateOldVersion(int version)
       m_pDS->exec("CREATE INDEX idxSize ON sizes(idtexture, size)");
       m_pDS->exec("CREATE TRIGGER textureDelete AFTER delete ON texture FOR EACH ROW BEGIN delete from sizes where sizes.idtexture=old.id; END");
     }
+    if (version < 13)
+    { // index for updateusecount
+      m_pDS->exec("CREATE INDEX idxSize2 ON sizes(idtexture, width, height)");
+    }
   }
   catch (...)
   {
index 6b27e43..c8f1b0e 100644 (file)
@@ -82,6 +82,6 @@ protected:
 
   virtual bool CreateTables();
   virtual bool UpdateOldVersion(int version);
-  virtual int GetMinVersion() const { return 12; };
+  virtual int GetMinVersion() const { return 13; };
   const char *GetBaseDBName() const { return "Textures"; };
 };