View Issue Details
ID | Project | Category | View Status | Date Submitted | Last Update |
---|---|---|---|---|---|
0003334 | MMW v4 | Properties/Auto-Tools | public | 2007-07-25 16:10 | 2007-07-27 20:29 |
Reporter | jiri | Assigned To | |||
Priority | urgent | Severity | minor | Reproducibility | sometimes |
Status | closed | Resolution | fixed | ||
Product Version | 3.0 | ||||
Fixed in Version | 3.0 | ||||
Summary | 0003334: Auto-normalization too slow | ||||
Description | Based on some EurekaLogs, auto-normalization is very slow and can cause the MM appears frozen. Namely, this code in Normalization.pas seems to be causing the problem: PrepareSongListQuery_Full(Q); sql := ' WHERE (NormalizeTrack < -99999)'; if (NormalizeAlbums) then sql := sql + ' or (NormalizeAlbum < -99999)'; sql := sql + ' order by NormalizeTrack limit 1'; | ||||
Tags | No tags attached. | ||||
Fixed in build | 1053 | ||||
|
It seems that two things would help to make this working faster: 1. Add indexes to DB for NormalizeTrack and NormalizeAlbum fields. 2. Use INTERSECT SQLite clause instead of 'OR' (because SQLite can't use >1 index in a single query). 3. Remove 'order by' clause. Is it really needed there? |
|
I've made some changes in queries used in normalization, so i think now it'll be much faster. Can be tested in 1053. |
|
Verified that it's working correctly in 1053. |