I’m using Darktable 5.6.0 on Ubuntu Mate 24.04 LTS. I was processing some photos, everything was fine. Then (same session) I duplicated a certain one to make some tests with Negadoctor. Then there was an error warnig from time to time that Darktable coldn’t save the XMP-file. Maybe this error will mysteriously vanish I closed Darktable and tried to restart. But, in terminal, I got this error:
scheff2@scheff2:~$ darktable
path lookup ‘/home/scheff2/_01/mnt/Server2tbD/priv/Fotos/1990/1990-03-31 bis 04-02 Leipzig/1990-03-31bis04-02 OM-1 109 - Leipzig.xmp’ fails with: ‘No such file or directory’
That path to the photos is wrong. The correct one is
/home/scheff2/Datenpartition/priv/Fotos/1990/1990-03-31 bis 04-02 Leipzig
or
/mnt/Server2tbD/priv/Fotos/1990/1990-03-31 bis 04-02 Leipzig
The rights of files and folders are set correctly. How can I change the wrong path, so that Darktable starts?
I imported these photos about two or three weeks ago, Darktable was fine all the time. But when I made a duplicate, inside darktable, of the photo number 109 it started to give errors something like “cannot store XMP”. And, as I can see in filemanager, there is only one XMP for this photo. Darktable is correct in this error, but the path in the error don’t exists and never existed. It’s kind of invented. From starting Darktable half an hour before I did only some processing of other photos. These photos I copied to a USB-stick to get them on my laptop. Then I started with photo 109 and the errors begun. But nowhere on my computer(s) a directory “_01” exists. I have no idea, how this could happen.
I’ll try to search library.db, but this will happen tomorrow.
Just a guess. It is possible that that was the temporary mount point of the usb stick. It is possible that instead of copying and importing some photos you just imported and darktable’s database thinks that that’s their location.
"Server2tbD"means, it’s a 2TB HDD built in the machine called Server and contains the Data. Darktable is also installed on this machine. All mounts are made with NFS, no Samba here.
That’s where it is mounted now (I’m guessing by the OS itself, not manually by you).
Maybe another time the stick was mounted by another application (perhaps by darktable itself?) on a temporary path.
The Ubuntu-system monts to /media, since a few years. So everything, what is connected to the machine is there. To distinguish those from my own fixed NFS-things I still use /mount.
Already today. I searched library.db and found the table “film_rolls”. In there I searched “/_01/”, but there was no entry of that. So it has to come from somewhere else. As I am not a database-expert, can you provide me the SQL command to find “/_01/” in all tables (and in all other databases as well)? I’m using DB Browser for SQLite Version 3.12.2.
I’m using Rapid Photo Downloader to get the files from the SD-card to the file-system of my computer. Then, after the photos are renamed and in the correct place, the import in Darktable takes place, making the XMPs. Everything is consistent in this sheme.
If you know where the raws and xmps are, wouldn’t be simpler just changing the path (or add the path) of the actual folder in Collections → Film rolls?
Or re-importing the folder?
I think you can also remove the wrong path.
While I don’t think that editing in any way the database would be the safest option.
@mattes are you aware darktable keeps a number of snapshots oft the library.db inside the configuration folder? You could try restoring a previous one or if you trust your xmps nuke the current library.db and re-import all the photos.
Yes, there are more than 20 files… And in data-copies and backups I have some more (no backup - no mercy). So it’s not a problem to go back to an older one. But that doesen’t answers the question, where the error comes from and why. Maybe I’m stupid, maybe the developers get a hint to make something better (and I will earn everlasting fame), but I want to know.