[Digikam-devel] [Bug 160966] some searches don't work properly with the new sqlite3-3.5.8

Arnd Baecker arnd.baecker at web.de
Thu Apr 24 21:27:16 BST 2008


------- You are receiving this mail because: -------
You are the assignee for the bug, or are watching the assignee.
         
http://bugs.kde.org/show_bug.cgi?id=160966         
arnd.baecker web de changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |marcel.wiesweg gmx de



------- Additional Comments From arnd.baecker web de  2008-04-24 22:27 -------
I checked with the sqlite experts. They pointed out that
"Version 3.5.8 includes some important new performance optimizations", see
http://www.sqlite.org/news.html, and that it might be possible that
these slow things down for some reason.

One suggestion was to use analyze, http://www.sqlite.org/lang_analyze.html

You could try this in the following way:
a) make a copy of digikam3.db
   (which is in the directory below which all images directories are)
b) Then run 
     sqlite3 digikam3.db
   and issue the command
     analyze;
   Quit via
     .quit
  
Does this improve things?
(The change written to the database can be checked by comparing a
string dump: 
   sqlite3 digikam3.db_ORIG
   .output before.dump
   .dump
   .quit
and
    sqlite3 digikam3.db
   .output after.dump
   .dump
   .quit
    
So if this analyze thing does not improve speed, we need
to figure out, which searches  are slow in terms of 
their sql statements.
For this you would need to modify
   digikam/kioslave/digikamsearch.cpp
by adding a
  kdWarning() << "SQL Query " << sqlQuery << endl;
in the line before each of the two calls to m_db.execSql.

Andy, do you think you can do this?

Best, Arnd



More information about the Digikam-devel mailing list