I have been having crashing issues with DT 5.7. Last night I used it to edit some photos at 6.59PM confirmed by the darktablerc file modification time. Today I tried opening DT 5,7 from the taskbar shortcut and it ended up crashing when opening the folder of images I had been working on. The data.db folder and other folders were modified at this time of 10.47am.
So I then successfully started DT 5.7 by using the cmd option
“C:\Program Files\darktable-dev5.7\bin\darktable.exe” -d opencl
and then again with “C:\Program Files\darktable-dev5.7\bin\darktable.exe”
The program opened but it had used the darktablerc and data.db files from my DT5.6 install.
I am totally confused why this might be and I am not sure if anyone can help by providing answers. I want to try sticking to DT 5.7 but I am having chronic issues with crashes. Should I just totally uninstall every component of darktable 5.6 and 5.7 from my computer and start fresh or is that a sledgehammer approach to a simple problem?
If you have 3 versions of DT installed in 3 directories, they are still going to try and use the same config directory location unless you point it correctly when you run the program…forgetting even once could create issues…you should be able to walk back to a “good” 5.6 version in your backups and keep it separate…
I think through your conflated installs you might have created issues…
I would strive to get 5.6 running correctly from old backups…
THen install 5.7 and before running it copy the 5.6 config files to a new folder that you are going to point that version (5.7) to use for configuration files.
THen run it. It should update your copied 5.6 files correctly and you should be able to use them…
Now maybe you have some xmp or database entries that are also causing issues but whatever you do you need to keep separate config files and run DT pointed to use them…
Thanks for the replies. I will try and sort out my mess that I have made. I hope to just run 5.7 going forward as when I edit I create export tiff files and don’t need to return to my edits. If I do then the new tools and more experience from me means I want to start a new edit anyway.
The FAQ , section Windows → Install file location says : %LOCALAPPDATA%\darktable\
Linux only here, so I can’t verify if this is for Win 10 and/or Win 11.
Just tried in my Win10 VM and 5.6.1 defaults to C:\Users\[user]\AppData\local\darktable as it’s configdir as documented in the FAQ and manual. So it should be the same on your machine @terry - what are you seeing in that directory?
thanks @pehar I read the FAQ and see that the configuration file is actually called darktablerc. But then why is that one for 5.7 not being accessed but the one for DT5.6?
This is correct. If you start dt-5.7 without any command line parameters (darktable user manual - darktable) it takes the files from the default location (same as for 5.6). And it did so as you can see in the screenshot, you have data.db-pre-5.7.0 and library.db-pre-5.7.0. These are backup files of your version 5.6 databases just before you started 5.7 the first time.
Copy these files to a different location, rename them to data.db and library.db and you should be able to use them with dt-5.6. Databases you have accessed with dt-5.7 may or may not be backward compatible. As a rule, they are not !
If you want to use 5.6 and 5.7 parallel, you need to use separateconfig folders for both. To do this, you can use the following parameter when starting darktable from the command line:
--configdir <user config directory>
Make sure you always stick to this separation; otherwise, problems will arise sooner or later.
@Terry one thing I would add is I think at some point you talk about using a shortcut icon…be sure you always check the properties and the command line and confirm it has the correct parameters. Now you also mention running DT from the command prompt …you need to take the same care there and be sure to always append --configdir “path” where path is the config folder you have chosen to use for 5.7 or any test versions so as not to mess things up
Thanks for all the replies. I will follow the advice given.
I may be wrong but I believe when I was running DT 5.4 and the dev version was DT 5.5 I didn’t need this level of precautions. I feel something has changed and I didn’t change along with it. But I will get it all sorted thanks to the helpful advice given by you all here.
When you cross populate the config files the impact is going to vary greatly depending on what changes the dev version has at the time…so you might have just been in a cycle where things were more compatible
No, this behavior has not changed. As Todd already mentioned, the occurrence of incompatibilities - particularly between databases of different versions - depends heavily on the changes that have been made.
A common scenario would be the indroduction of a new module. Database entries for this new module cannot be recognized by the “old” dt version, and problems will arise with the “old” dt version using the “new” database.
You will be notified of such significant changes to the database when you launch the “newer” dt version for the first time. A database “update” will be announced, and you will be asked for your consent. At this point, at the latest, the database is no longer backward compatible.
Edit :
One more note: Your last screenshot shows the presence of data.db.lock and library.db.lock. These files exist only when an instance of darktable is currently running, or when the last running instance crashed.
The presence of these files prevents multiple instances of darktable from accessing the database files at the same time.
To restart darktable after a crash, you must ensure that these files do not exist (delete them if necessary).
And never remove the locks when there’s still a version running. Having two programs write to the same SQLite database is a good way to corrupt that database.
I think those are different cases: one is a database schema update: changes to the table structures etc. A new module can be added without updating the schema, and no upgrade prompt will be shown.
There has been some problem with Playraws and DT5.7 xmps causing issues even if no newer modules used. I feel there is something different in 5.7 that caused me grief that I hadn’t experienced running dev versions before for the last two or three years.