View Issue Details

IDProjectCategoryView StatusLast Update
0017106MediaMonkey 5Main Panelpublic2020-12-18 01:57
ReporterLudek Assigned To 
PriorityurgentSeveritymajorReproducibilityalways
Status closedResolutionfixed 
Product Version5.0 
Target Version5.0Fixed in Version5.0 
Summary0017106: UI lag when switching view with 'Column Filter' enabled
Description1) Load a big database (at least 100K tracks)
2) Go to Music > All tracks and enable 'Column Browser'
3) Select an item in the 'Column Filter'
4) Switch view type from 'Grid (by Album)' to 'List' or switch to another node
=> several seconds UI lag

Debugging this in DevTools the lag is in tracklistFilter.js > storeState
The more rows the Column Filter has, the slower is the state storing
Additional Informationhttps://www.mediamonkey.com/forum/viewtopic.php?p=474764#p474764
TagsNo tags attached.
Fixed in build2282

Activities

Ludek

2020-11-16 21:24

developer   ~0060264

Fixed in 2275

peke

2020-11-21 21:57

developer   ~0060321

Verified 2275

Unable to replicate

Ludek

2020-12-07 12:00

developer   ~0060601

Last edited: 2020-12-07 12:08

View 2 revisions

It seems that the issue re-appears in 2281 per https://www.mediamonkey.com/forum/viewtopic.php?p=475410#p475410

Now the lag is when switching from "List" to "List (by Album)"
It seem that majority of the time takes GridView.restoreColumns > GroupedTracklist.setColumns

Ludek

2020-12-07 13:51

developer   ~0060605

Last edited: 2020-12-07 14:30

View 6 revisions

OK, this time the lag is not related to 'Column Filter' at all.
Even with disabled Column Filter simply switching from "List" to "List (by Album)" takes several seconds for 47K tracks.

Inspecting this in DevTools and the biggest lags are: https://www.dropbox.com/s/cfit6k75764qxvg/screenshot%202020-12-07%2014.50.45.png?dl=0
1) prepareDataSource @ groupedTrackList.js:200 (more than 1 second)
2) onColumnResize @ templates.js:242 (almost 2 seconds)

EDIT: ds.clearGroups(); @ groupedTrackList.js:203 seems causing the lag
Namely it waits for list write lock (as another thread is performing sortAsync on the list -- launched via ListView.forceAutoSort).

petr

2020-12-07 15:26

developer   ~0060608

Fixed

peke

2020-12-12 16:34

developer   ~0060731

Verified 2283

Unable to replicate lag. Left resolved and informed user to test with 2283

peke

2020-12-18 01:57

developer   ~0060903

Re verified 2286

No further reports are received from user past 3 versions from fix.