View Issue Details

IDProjectCategoryView StatusLast Update
0013982MMW 5DB / Backuppublic2017-08-10 01:57
Reporterlowlander Assigned To 
PriorityurgentSeveritycrashReproducibilityalways
Status closedResolutionfixed 
Summary0013982: Rebuild Database action takes long time on large databases
DescriptionDB Optimization seems to never complete.
Additional InformationLog and DB (after latest attempt) on FTP.
TagsNo tags attached.
Fixed in build2074

Relationships

has duplicate 0013981 closedLudek DB Optimization hangs/never completes 
related to 0013979 closedpetr Busy overlay on wrong screen during database optimization 
related to 0014324 closedLudek "Out of memory" error when rebuilding very large database 

Activities

Ludek

2017-02-10 16:25

developer   ~0047247

Last edited: 2017-02-10 16:42

In the log I see that you run
[x] Rebuild database
option.

You have quite large DB (250K tracks / 1.5 GB) and I see that:

a) copy of all the tables took 37 minutes, this part is same as for MM4's "Optimize database (complete)" option, so I guess that it takes 37 minutes in MM4 too?

b) re-construction of the triggers+indexes took 2 minutes (new in MM5)

c) re-construction of some tables like (artists, albums, genres etc.) would take 40 minutes (new to MM5), but you have terminated the process after 50 minutes.

So the overall time with your DB is about 1 hour and 20 minutes in MM5 (40 minutes in MM4). Going to look whether there is a space for speed improvements.

I modified the workflow slightly in 2061 so that step b) is performed before the step a) but this will help only on DBs with corrupted (or missing) indexes or triggers.

Ludek

2017-02-13 13:50

developer   ~0047272

We should also add progress bar with text -- so that user can see what is going on (in case of such a long rebuilding process) instead of just the spinning circle.

Ludek

2017-02-13 19:54

developer   ~0047275

Last edited: 2017-02-13 20:21

Fixed in build 2062.

The whole "Rebuild database" process takes less than 10 minutes on LowLander's database with 250K tracks (but you need to keep the DbgView window closed otherwise it takes much longer).
On my database database (20K tracks) it takes 30 seconds.

I also added progress bar with progress text and progress values so that user can see what is going on.

Ludek

2017-08-01 12:34

developer   ~0048432

Further improvements in 2074.

peke

2017-08-10 01:57

developer   ~0048507

Verified 2074