Ok, what I see on a normal start-up is roughly the following init sequence:
- accessing pylib
- accessing fonts
- accessing plugins
- accessing sqlite
- accessing library (last)
- accessing plugins
- accessing images (resources)
- accessing Qt widgets
- accessing Qt webkit
- accessing Qt core
- accessing library (last) looping each individual ebook
- starting threads (parallel)
- network calibre code calling home (https)
- network calibre plugins calling home (https)
- starting calibre
- remembering last library / last e-book
- init windows
As I'm using a very small startup library (always making sure it is selected when I close calibre), that hardly involves long scanning times.
However, I did noticed that still a lot of queries where made for:
- metadata.db-journal
- metadata.db-wal
These files never existed (and are certainly not created during the calibre library inspection), so why the repetitive querying?
Most init time (as was previously already stated) is spend in pylib, but also querying the fonts and the plugins. Qt is surprisingly not that heavy on initial loading.
So until I actual capture a freeze (when you need it, it is not there

), everything seems to be quite straightforward.
Just my 2cts