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. |