Rework music directory preferences dialog

Bug #975895 reported by Nanovarium on 2012-04-07
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Max Linke
Max Linke

Bug Description

This is probably a dublication of this (very old) bug:

* Changing the library location does not change the listed tracks in the library (reproducable)
* Forcing a rescan (manually) or rescanning library on startup does not refresh the track listing, either
* The library instead seems to "stick" to the old file locations and says "file not found" on each listed track when trying to load them into one deck

The only way for me to define a Library location is on initial install of mixxx. To be able to change the library location, I have to reinstall (purge) mixxx.

Mixxx 1.10
Linux Mint 12 Lisa x64
Intel(R) Core(TM) i7 CPU Q 720 (8 cores @ 1.6 Ghz)
AMD Mobility Radeon 5650, latest proprietary drivers
Creative Xi-Fi Surround USB / ALSA

Related branches

Nanovarium (nanovarium) on 2012-04-07
description: updated
Daniel Schürmann (daschuer) wrote :

Hi Nonvartium,

does Mixxx really crash? If yes, please provide the tail of your /home/<user>/.mixxx/mixxx.log.

The "Music Directory" is only the root directory of the library scanner. Changing this setting does not instantly change any track in your library. However there is an uncommitted patch in Bug #239883 relating to tracks outside the "Music Directory"

If you want to have new initial scan, you can simply rename the /home/<user>/.mixxx/mixxxdb.sqlite or the entire .mixxx folder.

These is also a Bug #898487 for changing the .mixxx folder via command line.

Can you describe your use case? What was your reason for changing library location?

If you like to test the mentioned bugs, you may try: but don't forget to backup your .mixxx folder first.

Nanovarium (nanovarium) wrote :

Hi Daniel,

no, Mixxx did not crash at any time. This is just a "refreshing" issue.

I re-installed my system last night before your answer came in so I am not able to provide you with my logfile, I'm sorry. I will test if the Issue persits with your given file.

But what I did in Mixxx 1.10 to reproduce:

* Define a Library location on initial run (lets say "/home/Music") - Everything fine.
* Lets say there is a song called "Track1.ogg"
*The I relocate my entire Music Library to "/home/Desktop/Music"
* manually rescan the library or restart Mixxx and try to play "Track1.ogg"
* it said "home/Music/Track1.ogg" not found. Obviously, the library stuck to the old location.

However, I will try with 1.11 and report back.

Thanks for your feedback


Nanovarium (nanovarium) wrote :

I am able to confirm that the problem seems to be solved in 1.11-alpha.

However, I noticed something:

* set the library to some folde ron initial startup.
* change library folder to some other folder
* rescan library
* files form the "initial" library location are not removed
* Files form the intial library location are removed if the files are removed physically form the original library location

so for me the library location works more like an "add" as like a "set". Are you able to confirm?

Daniel Schürmann (daschuer) wrote :

Hi Nonvartium,

thank you very much for testing!

Yes, confirmed! Its more like add.

It seems that the static texts for "Music Directory" is not descriptive enough or misleading.
If you like, you may propose a better text. We may add also a tool-tip.

Nanovarium (nanovarium) wrote :

Hi Daniel, thank you for your Feedback.

I though of some changes and additions, but these are optionally wishes. Don't put much time in it, it is not THAT important :-)

* Instead of "Music Directory" I'd write "Add a Folder to Library". -> This seems to be the current behavior. As a tooltip here I'd write something like "Choose a location which you want MIXXX to be aware of. This location will be scanned on a manual rescan or on a reboot of MIXXX if you choose "Rescan library on startup" in the section below."

* If possible, in the following Browse Dialog, write "Add" instead of "Open"

* If possible, add a short list of currently " watched" locations below the location chooser with the ability to remove locations (Simple X or - next to each location.)

* As an extra bonus add the ability to choose if the directory should be scanned recursively or not (Scanning for sub-directories). This could be implemented as a Checkbox next to the "Add a Folder to Library" Line.


Daniel Schürmann (daschuer) wrote :

Hi Nano,

thank you for your suggestions. I think that could be done as part of the Gsoc project:

summary: - Library crashes when changing library location
+ Rework music directory preferences dialog
Max Linke (max-linke) wrote :

No Library Folder is the correct term.

I haven't looked too much into the libraryscanner code by now but from what I see in the mixxxdb.sqlite changing the Library Folder may add tracks to the library-table but the libraryHashes table will be updated and these entries determine which folders we can monitor for changes.

Are you sure this works if files are physicalle removed? If I try to reproduce your steps and delete my initial library Folder Mixxx will still show me these files

Max Linke (max-linke) on 2012-07-04
Changed in mixxx:
assignee: nobody → Max Linke (max-linke)
status: New → In Progress
Max Linke (max-linke) wrote :


in my library_features branch it is now possible to add several folders that are watched for changes by mixxx and it is also possible to relocate them. Right now all these folders are recursively scanned which is enough for most use cases I think.

If there is a reason to disable recursive scanning an a per folder basis I will try to implement it.

Max Linke (max-linke) on 2012-12-10
Changed in mixxx:
importance: Undecided → Low
RJ Skerry-Ryan (rryan) on 2012-12-10
tags: added: scan
removed: crash rescan
Max Linke (max-linke) on 2014-01-19
Changed in mixxx:
milestone: none → 1.12.0
status: In Progress → Fix Committed
RJ Skerry-Ryan (rryan) on 2015-12-30
Changed in mixxx:
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Other bug subscribers