Improve library rescan speed
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Mixxx |
Fix Released
|
Medium
|
Ben Clark | ||
1.10 |
Fix Released
|
Medium
|
Ben Clark |
Bug Description
Library rescan seems very slow compared to other applications that perform a similar function, even when there have been no modifications at all.
I have attached a small fix that (on my machine) improves rescan times by about 35-40% by surrounding the calls:
m_libraryHashDa
m_trackDao.
in a transaction. These calls are made when nothing has changed in a directory and mark the directory as verified and mark the tracks inside that directory as verified.
This was originally found in Bug #905669 but this strayed quite far from the suggestion in that bug so I'm opening a separate issue to track this and any other potential improvements.
Changed in mixxx: | |
assignee: | nobody → Ben Clark (bencoder) |
status: | New → In Progress |
Changed in mixxx: | |
importance: | Undecided → Medium |
Changed in mixxx: | |
milestone: | none → 1.10.1 |
Changed in mixxx: | |
milestone: | 1.10.1 → none |
Changed in mixxx: | |
status: | In Progress → Fix Committed |
Changed in mixxx: | |
status: | Fix Committed → Fix Released |
Hi Ben,
I have tried you patch on the top of lp:mixxx with:
Ubuntu lucid, 2GB Ram, Intel Atom N270@1.6GHz.
My 3000 Tracks are partly on an 16 GB SD Card in 761 Subfolders.
There was no significant speed improvement on this system.
I have tested a complete new scan after deleting the mixxxdb.sqlite and a rescan with an unchanged library.
The only thing I have noticed is an improvement with the second scan. I think there must be a cache somewhere.
What are your test results?