GUI stutters if you click in sidebar or scroll through library

Bug #685795 reported by jus
34
This bug affects 7 people
Affects Status Importance Assigned to Milestone
Mixxx
Won't Fix
Medium
RAFFI TEA

Bug Description

Tested with Mixxx 1.9beta1 MacOS 10.6.5 and a small library (about 200 tracks)

Steps to reproduce
1. Choose a skin with large waveform ( for more visible effect)
2. Load and play a track
3. Click in sidebar / rapid scroll trough library
4. Watch Waveform / remaining time display stutter on every click or scroll .
5. Audio from 1. is running fine meanwhile

Interestingly this does not happen when you click on the top level of playlist and crates ( the ones with the descriptive text in it)

Revision history for this message
RAFFI TEA (raffitea) wrote :

This is not a surprise for me :-)

When I improved library performance (Bug #672762), it has been observed that sql queries are fired for each click on a concrete playlist. Switching back to the top level element does not cause a sql select unless the search box gets restored with some text.

jus (jus)
summary: - GUI stutters if you click in sidebar or scroll trough library
+ GUI stutters if you click in sidebar or scroll through library
Revision history for this message
jus (jus) wrote :

Im not sure anymore if this is limited to the library as it also happens when you open the preferences. You can then see the waveform freeze for the moment in the background. Concurrent threads?

Revision history for this message
RAFFI TEA (raffitea) wrote :

Technically spoken, the problem is that sql queries block the gui. The queries are fired from within the GUI thread. We need something like a "LibraryBackgroundTask" (Thread) to fetch data from the database.

Changed in mixxx:
status: New → Confirmed
importance: Undecided → Medium
assignee: nobody → RAFFI TEA (raffitea)
Revision history for this message
Albert Santoni (gamegod) wrote :

I notice near the end of the 1.9.0 release cycle, there may have been a performance regression here. I don't think scrolling in the library in 1.8.x would freeze the GUI like it does on 1.9. Even just slightly scrolling does it, but AFAIK we aren't actually hitting the database when you scroll, are we? I thought the library view was filled with one of those "while (canFetchMore())" loops in order to prevent the query from blocking other SQL connections.

???

Revision history for this message
Martin (CreativeChaos) (martin-signalpirat) wrote :

This problem ist bothering me too.
Posted some observations in the forum (before learning that this is a known bug):
http://mixxx.org/forums/viewtopic.php?f=3&t=2353

Some additional observations: Has nothing to do with 1.8.2 vs 1.9.0 as I thought at first - Audible stuttering on my setup only happens with ASIO, not with Windows Direct Sound. But the CPU usage peaks which cause it are the same in both versions.
I downloaded the code and tried to look into this issue, but need some more time to read into it. Still don't understand why SQL queries are necessary when just scrolling through the library?

Revision history for this message
jus (jus) wrote :

Just noticed that in lp:mixxx with MacOSX 10.6 a click on the resize handle ( QSizeGrip - lower right corner of the library) brings the GUI to a complete halt.

RJ Skerry-Ryan (rryan)
Changed in mixxx:
status: Confirmed → Won't Fix
Revision history for this message
Swiftb0y (swiftb0y) wrote :

Mixxx now uses GitHub for bug tracking. This bug has been migrated to:
https://github.com/mixxxdj/mixxx/issues/5696

lock status: Metadata changes locked and limited to project staff
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Related blueprints

Remote bug watches

Bug watches keep track of this bug in other bug trackers.