[Bug]: ABS ignores metadata location when changed back to default #3136

Closed
opened 2026-04-25 00:13:50 +02:00 by adam · 2 comments
Owner

Originally created by @mdb17 on GitHub (Dec 5, 2025).

What happened?

I believe I have discovered an issue with metadata when changing the storage location. A while back I decided to turn on the option to store metadata with the item. I then decided to turn it off. After making some metadata changes and then embedding the metadata all my changes reverted back to the original data. I started troubleshooting and found that as long as cover.jpg or metadata.json are present in the book folder it will continue to ignore the covers and metadate settings selection.

What did you expect to happen?

I expected the metadata to update and ignore the older data located in the metadata.json file

Steps to reproduce the issue

  1. Turn on store with item settings
  2. modify metadata or cover
  3. Quick embed changes
  4. Scan library for changes
  5. turn of the settings
  6. modify the data
  7. Quick embed changes
  8. Scan library for changes

Audiobookshelf version

v2.31.0

How are you running audiobookshelf?

Other (list in "Additional Notes" box)

What OS is your Audiobookshelf server hosted from?

Linux

If the issue is being seen in the UI, what browsers are you seeing the problem on?

Edge

Logs

2025-12-05 13:57:19.451

ERROR

[fileUtils] Failed to getFileMtimeMs [Error: ENOENT: no such file or directory, stat '/RadioDramas/Adventures in Odyssey/Adventures in Odyssey Club - Season 9/Adventures in Odyssey Club - Season 9.tmp.m4b'] { errno: -2, code: 'ENOENT', syscall: 'stat', path: '/RadioDramas/Adventures in Odyssey/Adventures in Odyssey Club - Season 9/Adventures in Odyssey Club - Season 9.tmp.m4b' }

2025-12-05 13:57:22.676

ERROR

[fileUtils] Failed to getFileMtimeMs [Error: ENOENT: no such file or directory, stat '/RadioDramas/Adventures in Odyssey/Adventures in Odyssey Club - Season 9/Adventures in Odyssey Club - Season 9.tmp.m4b'] { errno: -2, code: 'ENOENT', syscall: 'stat', path: '/RadioDramas/Adventures in Odyssey/Adventures in Odyssey Club - Season 9/Adventures in Odyssey Club - Season 9.tmp.m4b' }

2025-12-05 13:57:49.950

ERROR

[fileUtils] Failed to getFileMtimeMs [Error: ENOENT: no such file or directory, stat '/RadioDramas/Adventures in Odyssey/Adventures in Odyssey Club - Season 2/766-The Cure, Part 1.tmp.mp3'] { errno: -2, code: 'ENOENT', syscall: 'stat', path: '/RadioDramas/Adventures in Odyssey/Adventures in Odyssey Club - Season 2/766-The Cure, Part 1.tmp.mp3' }

Additional Notes

Proxmox

Originally created by @mdb17 on GitHub (Dec 5, 2025). ### What happened? I believe I have discovered an issue with metadata when changing the storage location. A while back I decided to turn on the option to store metadata with the item. I then decided to turn it off. After making some metadata changes and then embedding the metadata all my changes reverted back to the original data. I started troubleshooting and found that as long as cover.jpg or metadata.json are present in the book folder it will continue to ignore the covers and metadate settings selection. ### What did you expect to happen? I expected the metadata to update and ignore the older data located in the metadata.json file ### Steps to reproduce the issue 1. Turn on store with item settings 2. modify metadata or cover 3. Quick embed changes 4. Scan library for changes 5. turn of the settings 6. modify the data 7. Quick embed changes 8. Scan library for changes ### Audiobookshelf version v2.31.0 ### How are you running audiobookshelf? Other (list in "Additional Notes" box) ### What OS is your Audiobookshelf server hosted from? Linux ### If the issue is being seen in the UI, what browsers are you seeing the problem on? Edge ### Logs ```shell 2025-12-05 13:57:19.451 ERROR [fileUtils] Failed to getFileMtimeMs [Error: ENOENT: no such file or directory, stat '/RadioDramas/Adventures in Odyssey/Adventures in Odyssey Club - Season 9/Adventures in Odyssey Club - Season 9.tmp.m4b'] { errno: -2, code: 'ENOENT', syscall: 'stat', path: '/RadioDramas/Adventures in Odyssey/Adventures in Odyssey Club - Season 9/Adventures in Odyssey Club - Season 9.tmp.m4b' } 2025-12-05 13:57:22.676 ERROR [fileUtils] Failed to getFileMtimeMs [Error: ENOENT: no such file or directory, stat '/RadioDramas/Adventures in Odyssey/Adventures in Odyssey Club - Season 9/Adventures in Odyssey Club - Season 9.tmp.m4b'] { errno: -2, code: 'ENOENT', syscall: 'stat', path: '/RadioDramas/Adventures in Odyssey/Adventures in Odyssey Club - Season 9/Adventures in Odyssey Club - Season 9.tmp.m4b' } 2025-12-05 13:57:49.950 ERROR [fileUtils] Failed to getFileMtimeMs [Error: ENOENT: no such file or directory, stat '/RadioDramas/Adventures in Odyssey/Adventures in Odyssey Club - Season 2/766-The Cure, Part 1.tmp.mp3'] { errno: -2, code: 'ENOENT', syscall: 'stat', path: '/RadioDramas/Adventures in Odyssey/Adventures in Odyssey Club - Season 2/766-The Cure, Part 1.tmp.mp3' } ``` ### Additional Notes Proxmox
adam added the bug label 2026-04-25 00:13:50 +02:00
adam closed this issue 2026-04-25 00:13:50 +02:00
Author
Owner

@Vito0912 commented on GitHub (Dec 5, 2025):

This is not a bug and intended afaik. You can have that setting turned on and create your custom metadata.json

You can just rm these files if you want to do the switch or change the order the metatdata is read. Make sure you copy them over. You can disable metadata.jaon completely, but then any changes you are made are not preserved on an rescan.
The switch does not automatically moves files and is just for future files

Embedded metadata is always after the metadata.json, by default. You can also change the order for these. But remember to embed the metadata or else it's gone again

As for the logs this seems like broken paths.
Can you provide a tree of you current setup?

@Vito0912 commented on GitHub (Dec 5, 2025): This is not a bug and intended afaik. You can have that setting turned on and create your custom metadata.json You can just rm these files if you want to do the switch or change the order the metatdata is read. Make sure you copy them over. You can disable metadata.jaon completely, but then any changes you are made are not preserved on an rescan. The switch does not automatically moves files and is just for future files Embedded metadata is always after the metadata.json, by default. You can also change the order for these. But remember to embed the metadata or else it's gone again As for the logs this seems like broken paths. Can you provide a tree of you current setup?
Author
Owner

@mdb17 commented on GitHub (Dec 8, 2025):

Ok thanks for the clarification on how it is supposed to work.

As for the logs I indeed did move files around so that is probably the issue. I just included them in case it was relevant.

@mdb17 commented on GitHub (Dec 8, 2025): Ok thanks for the clarification on how it is supposed to work. As for the logs I indeed did move files around so that is probably the issue. I just included them in case it was relevant.
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: starred/audiobookshelf#3136