View Single Post
Old 01-02-2014, 01:03 PM   #8
unboggling
Wizard
unboggling ought to be getting tired of karma fortunes by now.unboggling ought to be getting tired of karma fortunes by now.unboggling ought to be getting tired of karma fortunes by now.unboggling ought to be getting tired of karma fortunes by now.unboggling ought to be getting tired of karma fortunes by now.unboggling ought to be getting tired of karma fortunes by now.unboggling ought to be getting tired of karma fortunes by now.unboggling ought to be getting tired of karma fortunes by now.unboggling ought to be getting tired of karma fortunes by now.unboggling ought to be getting tired of karma fortunes by now.unboggling ought to be getting tired of karma fortunes by now.
 
Posts: 1,065
Karma: 858115
Join Date: Jan 2011
Device: Kobo Clara, Kindle Paperwhite 10
Quote:
Originally Posted by unboggling View Post
Thank you, Kovid. That answered my questions.

So to make sure I understand this, in other words searches are conducted against data structures read into RAM from metadata.db then specially massaged at library startup. So whether a field is indexed or not in the backend doesn't really matter that much after library startup.
Quote:
Originally Posted by kovidgoyal View Post
yes, that is correct. Indexing is a legacy from older backends. I made a decision to generally avoid changing database on file format as much as possible to allow people to run multiple versions of calibre against the same database file safely, therefore, there is a lot of legacy cruft in the db schema.
So, again to make sure I understand: Whether a field is indexed or not in the backend doesn't matter at all unless user uses very old version of calibre.
unboggling is offline   Reply With Quote