advplyr / audiobookshelf

Self-hosted audiobook and podcast server
https://audiobookshelf.org
GNU General Public License v3.0
6.53k stars 466 forks source link

[Bug]: Multiple copies of audiobook are added to library #3440

Closed seannymurrs closed 3 weeks ago

seannymurrs commented 4 weeks ago

What happened?

Every time I add an audiobook to my library, it shows up three times in the library. All three point to the same file, and they appear as duplicate copies of the same book.

What did you expect to happen?

I expected only one copy of the book to be added.

Steps to reproduce the issue

  1. Add book to library (either via upload or manually putting files in place and scanning library).
  2. See that three copies of the book are added to the library.

Audiobookshelf version

v2.13.4

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?

None

Logs

2024-09-20 10:55:59.181
DEBUG
Set Log Level to DEBUG
2024-09-20 10:55:59.254
DEBUG
[ApiCacheManager] Array.afterUpsert: Clearing cache
2024-09-20 10:56:24.727
DEBUG
Book Search: title: "Democracy or Else B0CNQM8XL8", author: "Jon Favreau", provider: audible
2024-09-20 10:56:24.746
DEBUG
[Audible] Search url: https://api.audible.com/1.0/catalog/products?num_results=10&products_sort_by=Relevance&title=Democracy+or+Else+B0CNQM8XL8&author=Jon+Favreau
2024-09-20 10:56:24.993
INFO
[Audnexus] Searching for author "https://api.audnex.us/authors?name=jon+favreau"
2024-09-20 10:56:24.993
INFO
[Audnexus] Searching for author "https://api.audnex.us/authors?name=democracy+or+else+b0cnqm8xl8"
2024-09-20 10:56:25.415
DEBUG
[AuthorCandidates] Found 2 fuzzy author candidates
2024-09-20 10:56:25.428
DEBUG
jon favreau,
2024-09-20 10:56:25.431
DEBUG
[TitleCandidates] Found 1 fuzzy title candidates
2024-09-20 10:56:25.431
DEBUG
democracy or else b0cnqm8xl8
2024-09-20 10:56:25.432
DEBUG
[TitleCandidates] Found 1 fuzzy title candidates
2024-09-20 10:56:25.432
DEBUG
democracy or else b0cnqm8xl8
2024-09-20 10:56:25.432
DEBUG
Book Search: title: "democracy or else b0cnqm8xl8", author: "", provider: audible
2024-09-20 10:56:25.433
DEBUG
[Audible] Search url: https://api.audible.com/1.0/catalog/products?num_results=10&products_sort_by=Relevance&title=democracy+or+else+b0cnqm8xl8
2024-09-20 10:58:36.345
INFO
Uploading 1 files to /audiobooks/Jon Favreau/Democracy or Else
2024-09-20 10:58:38.655
DEBUG
[Watcher] File Added /audiobooks/Jon Favreau/Democracy or Else/Democracy or Else.m4b
2024-09-20 10:58:38.657
DEBUG
[Watcher] Modified file in library "Audiobooks" and folder "8e62158a-bb01-4da9-9a41-eb3560784138" with relPath "/Jon Favreau/Democracy or Else/Democracy or Else.m4b"
2024-09-20 10:58:38.661
DEBUG
[Watcher] Waiting to add file at "/audiobooks/Jon Favreau/Democracy or Else/Democracy or Else.m4b". mtimeMs=1726844316927.5737 lastMTimeMs=0 (loop 0)
2024-09-20 10:58:41.662
DEBUG
[Watcher] File finished adding at "/audiobooks/Jon Favreau/Democracy or Else/Democracy or Else.m4b"
2024-09-20 10:58:49.846
DEBUG
Loaded filterdata in 1.17s
2024-09-20 10:58:49.846
DEBUG
[Scanner] Scanning file update groups in folder "8e62158a-bb01-4da9-9a41-eb3560784138" of library "Audiobooks"
2024-09-20 10:58:49.850
DEBUG
[Scanner] scanFolderUpdates fileUpdateGroup [object Object]
2024-09-20 10:58:49.901
DEBUG
[LibraryScanner] Folder update group must be a new item "Jon Favreau/Democracy or Else" in library "Audiobooks"
2024-09-20 10:58:52.425
DEBUG
[AudioFileScanner] Smart track order for "Jon Favreau/Democracy or Else" using track key trackNumFromMeta
2024-09-20 10:58:52.426
DEBUG
[Scan] "Jon Favreau/Democracy or Else": "Democracy or Else" Getting metadata with precedence [folderStructure, audioMetatags, nfoFile, txtFiles, opfFile, absMetadata]
2024-09-20 10:58:52.428
DEBUG
[Scan] "Jon Favreau/Democracy or Else": setChapters: Using embedded chapters in first audio file /audiobooks/Jon Favreau/Democracy or Else/Democracy or Else.m4b
2024-09-20 10:58:52.609
DEBUG
[FfmpegHelpers] Extract Cover Cmd: ffmpeg -i /audiobooks/Jon Favreau/Democracy or Else/Democracy or Else.m4b -y -map 0:v -frames:v 1 /audiobooks/Jon Favreau/Democracy or Else/cover.jpg
2024-09-20 10:58:52.783
DEBUG
[FfmpegHelpers] Cover Art Extracted Successfully
2024-09-20 10:58:52.788
DEBUG
[Scan] "Jon Favreau/Democracy or Else": Extracted embedded cover from audio file at "/audiobooks/Jon Favreau/Democracy or Else/cover.jpg" for book "Democracy or Else (Unabridged)"
2024-09-20 10:58:54.537
DEBUG
[ApiCacheManager] author.afterCreate: Clearing cache
2024-09-20 10:58:54.558
DEBUG
[ApiCacheManager] author.afterCreate: Clearing cache
2024-09-20 10:58:54.607
DEBUG
[ApiCacheManager] author.afterCreate: Clearing cache
2024-09-20 10:58:54.625
DEBUG
[ApiCacheManager] author.afterCreate: Clearing cache
2024-09-20 10:58:54.655
DEBUG
[ApiCacheManager] bookAuthor.afterCreate: Clearing cache
2024-09-20 10:58:54.664
DEBUG
[ApiCacheManager] bookAuthor.afterCreate: Clearing cache
2024-09-20 10:58:54.681
DEBUG
[ApiCacheManager] bookAuthor.afterCreate: Clearing cache
2024-09-20 10:58:54.703
DEBUG
[ApiCacheManager] bookAuthor.afterCreate: Clearing cache
2024-09-20 10:58:54.703
DEBUG
[ApiCacheManager] book.afterCreate: Clearing cache
2024-09-20 10:58:54.752
DEBUG
[ApiCacheManager] libraryItem.afterCreate: Clearing cache
2024-09-20 10:58:54.784
DEBUG
[Scan] "Jon Favreau/Democracy or Else": Success saving abmetadata to "/audiobooks/Jon Favreau/Democracy or Else/metadata.json"
2024-09-20 10:58:54.820
DEBUG
[ApiCacheManager] libraryItem.afterUpdate: Clearing cache
2024-09-20 10:58:54.821
DEBUG
[Scan] "Jon Favreau/Democracy or Else": Created new library item "Jon Favreau/Democracy or Else"
2024-09-20 10:58:54.842
DEBUG
[LibraryScanner] Folder scan results [object Object]
2024-09-20 10:58:55.061
DEBUG
[Watcher] File Added /audiobooks/Jon Favreau/Democracy or Else/cover.jpg
2024-09-20 10:58:55.062
DEBUG
[Watcher] Modified file in library "Audiobooks" and folder "8e62158a-bb01-4da9-9a41-eb3560784138" with relPath "/Jon Favreau/Democracy or Else/cover.jpg"
2024-09-20 10:58:55.062
DEBUG
[Watcher] Waiting to add file at "/audiobooks/Jon Favreau/Democracy or Else/cover.jpg". mtimeMs=1726844332748.2012 lastMTimeMs=0 (loop 0)
2024-09-20 10:58:56.162
DEBUG
[Watcher] File Added /audiobooks/Jon Favreau/Democracy or Else/metadata.json
2024-09-20 10:58:56.162
DEBUG
[Watcher] Modified file in library "Audiobooks" and folder "8e62158a-bb01-4da9-9a41-eb3560784138" with relPath "/Jon Favreau/Democracy or Else/metadata.json"
2024-09-20 10:58:56.162
DEBUG
[Watcher] Waiting to add file at "/audiobooks/Jon Favreau/Democracy or Else/metadata.json". mtimeMs=1726844334768.2812 lastMTimeMs=0 (loop 0)
2024-09-20 10:58:58.063
DEBUG
[Watcher] File finished adding at "/audiobooks/Jon Favreau/Democracy or Else/cover.jpg"
2024-09-20 10:58:59.163
DEBUG
[Watcher] File finished adding at "/audiobooks/Jon Favreau/Democracy or Else/metadata.json"
2024-09-20 10:59:06.166
DEBUG
[Scanner] Scanning file update groups in folder "8e62158a-bb01-4da9-9a41-eb3560784138" of library "Audiobooks"
2024-09-20 10:59:06.166
DEBUG
[Scanner] scanFolderUpdates fileUpdateGroup [object Object]
2024-09-20 10:59:06.202
DEBUG
[LibraryScanner] Folder update for relative path "Jon Favreau/Democracy or Else" is in library item "Democracy or Else (Unabridged)" - scan for updates
2024-09-20 10:59:06.214
DEBUG
[Scan] "Jon Favreau/Democracy or Else": Library file "metadata.json" for library item "/audiobooks/Jon Favreau/Democracy or Else" key "mtimeMs" changed from "1726844334218" to "1726844334768"
2024-09-20 10:59:06.214
DEBUG
[Scan] "Jon Favreau/Democracy or Else": Library file "metadata.json" for library item "/audiobooks/Jon Favreau/Democracy or Else" key "ctimeMs" changed from "1726844334218" to "1726844334768"
2024-09-20 10:59:06.214
DEBUG
[Scan] "Jon Favreau/Democracy or Else": New library file found with path "/audiobooks/Jon Favreau/Democracy or Else/cover.jpg" for library item "Jon Favreau/Democracy or Else"
2024-09-20 10:59:06.215
DEBUG
[Scan] "Jon Favreau/Democracy or Else": Library item "Jon Favreau/Democracy or Else" changed: [size,lastScan]
2024-09-20 10:59:06.378
DEBUG
[ApiCacheManager] libraryItem.afterUpdate: Clearing cache
2024-09-20 10:59:06.406
DEBUG
[Scan] "Jon Favreau/Democracy or Else": "Democracy or Else" Getting metadata with precedence [folderStructure, audioMetatags, nfoFile, txtFiles, opfFile, absMetadata]
2024-09-20 10:59:06.407
DEBUG
[Scan] "Jon Favreau/Democracy or Else": setChapters: Using embedded chapters in first audio file /audiobooks/Jon Favreau/Democracy or Else/Democracy or Else.m4b
2024-09-20 10:59:06.411
DEBUG
[Scan] "Jon Favreau/Democracy or Else": Found metadata file "/audiobooks/Jon Favreau/Democracy or Else/metadata.json"
2024-09-20 10:59:06.414
DEBUG
[LibraryScanner] Folder scan results [object Object]
2024-09-20 11:00:33.506
DEBUG
[ApiCacheManager] count: 0 size: 0
2024-09-20 11:00:33.514
DEBUG
[ApiCacheManager] Cache miss: {"user":"sean","url":"/libraries/8f67ae08-6c0b-4462-bc51-b6caf9f4923e?include=filterdata"}
2024-09-20 11:00:33.875
DEBUG
[ApiCacheManager] count: 1 size: 78331
2024-09-20 11:00:33.939
DEBUG
Loaded 20 of 1128 items for libary page in 0.06s
2024-09-20 11:00:33.942
DEBUG
[ApiCacheManager] Cache miss: {"user":"sean","url":"/libraries/8f67ae08-6c0b-4462-bc51-b6caf9f4923e/items?sort=addedAt&desc=1&limit=20&page=0&minified=1&include=rssfeed,numEpisodesIncomplete,share"}
2024-09-20 11:00:34.509
DEBUG
[FfmpegHelpers] Resize Image Cmd: ffmpeg -i /audiobooks/Jon Favreau/Democracy or Else/cover.jpg -y -vf scale=400:-1 /metadata/cache/covers/c8d9c228-3953-4bc8-9946-efcbbb8e654f_400.webp
2024-09-20 11:00:34.517
DEBUG
[FfmpegHelpers] Resize Image Cmd: ffmpeg -i /audiobooks/Jon Favreau/Democracy or Else/cover.jpg -y -vf scale=400:-1 /metadata/cache/covers/ee765c09-ac66-426b-9d3f-68be73ca6498_400.webp
2024-09-20 11:00:34.521
DEBUG
[FfmpegHelpers] Resize Image Cmd: ffmpeg -i /audiobooks/Jon Favreau/Democracy or Else/cover.jpg -y -vf scale=400:-1 /metadata/cache/covers/1c8cdc38-2c0c-4a19-8107-985e9504a921_400.webp
2024-09-20 11:00:34.859
DEBUG
[FfmpegHelpers] Image resized Successfully
2024-09-20 11:00:34.870
DEBUG
[FfmpegHelpers] Image resized Successfully
2024-09-20 11:00:34.879
DEBUG
[FfmpegHelpers] Image resized Successfully

Additional Notes

ABS is being run using Podman. Logs are from when I manually uploaded a book, and three copies of it appeared in the library afterward.

advplyr commented 4 weeks ago

The log is only showing 1 library item getting created. That is the log

[ApiCacheManager] libraryItem.afterCreate: Clearing cache

Can you share the full scan log?

seannymurrs commented 4 weeks ago

Can you explain how to do that and/or where I'd find it?

advplyr commented 4 weeks ago

Replicate the issue and share the daily log file in /metadata/logs/daily. If you share the full daily log please share the timestamp that you first added the book or you can extract just the block of logs that are relevant

seannymurrs commented 3 weeks ago

Gotcha. I just replicated the issue (this time the book was added to the library four times). Below are the results of the daily logs from when ABS scanned the library for the new book through me deleting the three extra copies of the book.

{"timestamp":"2024-09-22 12:05:56.378","source":"Watcher.js:191","message":"[Watcher] File Added /audiobooks/Pirateaba/The Wandering Inn/Wandering Inn, The/Wandering Inn, The.m4b","levelName":"DEBUG","level":1}
{"timestamp":"2024-09-22 12:05:56.379","source":"Watcher.js:297","message":"[Watcher] Modified file in library \"Audiobooks\" and folder \"8e62158a-bb01-4da9-9a41-eb3560784138\" with relPath \"/Pirateaba/The Wandering Inn/Wandering Inn, The/Wandering Inn, The.m4b\"","levelName":"DEBUG","level":1}
{"timestamp":"2024-09-22 12:05:56.380","source":"Watcher.js:250","message":"[Watcher] Waiting to add file at \"/audiobooks/Pirateaba/The Wandering Inn/Wandering Inn, The/Wandering Inn, The.m4b\". mtimeMs=1727021156376.554 lastMTimeMs=0 (loop 0)","levelName":"DEBUG","level":1}
{"timestamp":"2024-09-22 12:06:05.382","source":"Watcher.js:246","message":"[Watcher] File finished adding at \"/audiobooks/Pirateaba/The Wandering Inn/Wandering Inn, The/Wandering Inn, The.m4b\"","levelName":"DEBUG","level":1}
{"timestamp":"2024-09-22 12:06:06.385","source":"LibraryScanner.js:481","message":"[Scanner] Scanning file update groups in folder \"8e62158a-bb01-4da9-9a41-eb3560784138\" of library \"Audiobooks\"","levelName":"DEBUG","level":1}
{"timestamp":"2024-09-22 12:06:06.386","source":"LibraryScanner.js:482","message":"[Scanner] scanFolderUpdates fileUpdateGroup [object Object]","levelName":"DEBUG","level":1}
{"timestamp":"2024-09-22 12:06:06.431","source":"LibraryScanner.js:611","message":"[LibraryScanner] Folder update group must be a new item \"Pirateaba/The Wandering Inn/Wandering Inn, The\" in library \"Audiobooks\"","levelName":"DEBUG","level":1}
{"timestamp":"2024-09-22 12:06:08.587","source":"AudioFileScanner.js:94","message":"[AudioFileScanner] Smart track order for \"Pirateaba/The Wandering Inn/Wandering Inn, The\" using track key trackNumFromMeta","levelName":"DEBUG","level":1}
{"timestamp":"2024-09-22 12:06:08.589","source":"ScanLogger.js:65","message":"[Scan] \"Pirateaba/The Wandering Inn/Wandering Inn, The\": \"Wandering Inn, The\" Getting metadata with precedence [folderStructure, audioMetatags, nfoFile, txtFiles, opfFile, absMetadata]","levelName":"DEBUG","level":1}
{"timestamp":"2024-09-22 12:06:08.590","source":"ScanLogger.js:65","message":"[Scan] \"Pirateaba/The Wandering Inn/Wandering Inn, The\": setChapters: Using embedded chapters in first audio file /audiobooks/Pirateaba/The Wandering Inn/Wandering Inn, The/Wandering Inn, The.m4b","levelName":"DEBUG","level":1}
{"timestamp":"2024-09-22 12:06:08.599","source":"ffmpegHelpers.js:62","message":"[FfmpegHelpers] Extract Cover Cmd: ffmpeg -i /audiobooks/Pirateaba/The Wandering Inn/Wandering Inn, The/Wandering Inn, The.m4b -y -map 0:v -frames:v 1 /audiobooks/Pirateaba/The Wandering Inn/Wandering Inn, The/cover.jpg","levelName":"DEBUG","level":1}
{"timestamp":"2024-09-22 12:06:09.090","source":"ffmpegHelpers.js:69","message":"[FfmpegHelpers] Cover Art Extracted Successfully","levelName":"DEBUG","level":1}
{"timestamp":"2024-09-22 12:06:09.094","source":"ScanLogger.js:65","message":"[Scan] \"Pirateaba/The Wandering Inn/Wandering Inn, The\": Extracted embedded cover from audio file at \"/audiobooks/Pirateaba/The Wandering Inn/Wandering Inn, The/cover.jpg\" for book \"The Wandering Inn: Volume 1\"","levelName":"DEBUG","level":1}
{"timestamp":"2024-09-22 12:06:10.570","source":"ApiCacheManager.js:20","message":"[ApiCacheManager] series.afterCreate: Clearing cache","levelName":"DEBUG","level":1}
{"timestamp":"2024-09-22 12:06:10.627","source":"ApiCacheManager.js:20","message":"[ApiCacheManager] author.afterCreate: Clearing cache","levelName":"DEBUG","level":1}
{"timestamp":"2024-09-22 12:06:10.695","source":"ApiCacheManager.js:20","message":"[ApiCacheManager] bookSeries.afterCreate: Clearing cache","levelName":"DEBUG","level":1}
{"timestamp":"2024-09-22 12:06:10.757","source":"ApiCacheManager.js:20","message":"[ApiCacheManager] bookAuthor.afterCreate: Clearing cache","levelName":"DEBUG","level":1}
{"timestamp":"2024-09-22 12:06:10.758","source":"ApiCacheManager.js:20","message":"[ApiCacheManager] book.afterCreate: Clearing cache","levelName":"DEBUG","level":1}
{"timestamp":"2024-09-22 12:06:10.816","source":"ApiCacheManager.js:20","message":"[ApiCacheManager] libraryItem.afterCreate: Clearing cache","levelName":"DEBUG","level":1}
{"timestamp":"2024-09-22 12:06:10.843","source":"ScanLogger.js:65","message":"[Scan] \"Pirateaba/The Wandering Inn/Wandering Inn, The\": Success saving abmetadata to \"/audiobooks/Pirateaba/The Wandering Inn/Wandering Inn, The/metadata.json\"","levelName":"DEBUG","level":1}
{"timestamp":"2024-09-22 12:06:10.900","source":"ApiCacheManager.js:20","message":"[ApiCacheManager] libraryItem.afterUpdate: Clearing cache","levelName":"DEBUG","level":1}
{"timestamp":"2024-09-22 12:06:10.900","source":"ScanLogger.js:65","message":"[Scan] \"Pirateaba/The Wandering Inn/Wandering Inn, The\": Created new library item \"Pirateaba/The Wandering Inn/Wandering Inn, The\"","levelName":"DEBUG","level":1}
{"timestamp":"2024-09-22 12:06:10.902","source":"LibraryScanner.js:408","message":"[LibraryScanner] Folder scan results [object Object]","levelName":"DEBUG","level":1}
{"timestamp":"2024-09-22 12:06:11.414","source":"Watcher.js:191","message":"[Watcher] File Added /audiobooks/Pirateaba/The Wandering Inn/Wandering Inn, The/cover.jpg","levelName":"DEBUG","level":1}
{"timestamp":"2024-09-22 12:06:11.414","source":"Watcher.js:297","message":"[Watcher] Modified file in library \"Audiobooks\" and folder \"8e62158a-bb01-4da9-9a41-eb3560784138\" with relPath \"/Pirateaba/The Wandering Inn/Wandering Inn, The/cover.jpg\"","levelName":"DEBUG","level":1}
{"timestamp":"2024-09-22 12:06:11.415","source":"Watcher.js:250","message":"[Watcher] Waiting to add file at \"/audiobooks/Pirateaba/The Wandering Inn/Wandering Inn, The/cover.jpg\". mtimeMs=1727021168957.0527 lastMTimeMs=0 (loop 0)","levelName":"DEBUG","level":1}
{"timestamp":"2024-09-22 12:06:11.416","source":"ApiCacheManager.js:47","message":"[ApiCacheManager] count: 0 size: 0","levelName":"DEBUG","level":1}
{"timestamp":"2024-09-22 12:06:11.473","source":"LibraryItem.js:657","message":"Loaded 1 of 1 items for \"Continue Listening/Reading\" in 0.06s","levelName":"DEBUG","level":1}
{"timestamp":"2024-09-22 12:06:11.800","source":"LibraryItem.js:674","message":"Loaded 10 of 36 items for \"Continue Series\" in 0.33s","levelName":"DEBUG","level":1}
{"timestamp":"2024-09-22 12:06:11.870","source":"LibraryItem.js:704","message":"Loaded 10 of 1131 items for \"Recently Added\" in 0.07s","levelName":"DEBUG","level":1}
{"timestamp":"2024-09-22 12:06:11.892","source":"LibraryItem.js:720","message":"Loaded 5 of 272 series for \"Recent Series\" in 0.02s","levelName":"DEBUG","level":1}
{"timestamp":"2024-09-22 12:06:11.906","source":"Watcher.js:191","message":"[Watcher] File Added /audiobooks/Pirateaba/The Wandering Inn/Wandering Inn, The/metadata.json","levelName":"DEBUG","level":1}
{"timestamp":"2024-09-22 12:06:11.906","source":"Watcher.js:297","message":"[Watcher] Modified file in library \"Audiobooks\" and folder \"8e62158a-bb01-4da9-9a41-eb3560784138\" with relPath \"/Pirateaba/The Wandering Inn/Wandering Inn, The/metadata.json\"","levelName":"DEBUG","level":1}
{"timestamp":"2024-09-22 12:06:11.907","source":"Watcher.js:250","message":"[Watcher] Waiting to add file at \"/audiobooks/Pirateaba/The Wandering Inn/Wandering Inn, The/metadata.json\". mtimeMs=1727021171157.1401 lastMTimeMs=0 (loop 0)","levelName":"DEBUG","level":1}
{"timestamp":"2024-09-22 12:06:12.331","source":"LibraryItem.js:735","message":"Loaded 10 of 325 items for \"Discover\" in 0.44s","levelName":"DEBUG","level":1}
{"timestamp":"2024-09-22 12:06:12.384","source":"LibraryItem.js:766","message":"Loaded 10 of 383 items for \"Listen/Read Again\" in 0.05s","levelName":"DEBUG","level":1}
{"timestamp":"2024-09-22 12:06:12.480","source":"LibraryItem.js:782","message":"Loaded 10 of 536 authors for \"Newest Authors\" in 0.10s","levelName":"DEBUG","level":1}
{"timestamp":"2024-09-22 12:06:12.481","source":"LibraryItem.js:785","message":"Loaded 7 personalized shelves in 1.06s","levelName":"DEBUG","level":1}
{"timestamp":"2024-09-22 12:06:12.482","source":"ApiCacheManager.js:58","message":"[ApiCacheManager] Cache miss: {\"user\":\"sean\",\"url\":\"/libraries/8f67ae08-6c0b-4462-bc51-b6caf9f4923e/personalized?include=rssfeed,numEpisodesIncomplete,share\"}","levelName":"DEBUG","level":1}
{"timestamp":"2024-09-22 12:06:12.482","source":"ApiCacheManager.js:61","message":"[ApiCacheManager] Caching with 1800000 ms TTL","levelName":"DEBUG","level":1}
{"timestamp":"2024-09-22 12:06:13.249","source":"ffmpegHelpers.js:85","message":"[FfmpegHelpers] Resize Image Cmd: ffmpeg -i /audiobooks/Pirateaba/The Wandering Inn/Wandering Inn, The/cover.jpg -y -vf scale=400:-1 /metadata/cache/covers/733321c8-ee4c-4074-9bff-9afb0ba22e9c_400.webp","levelName":"DEBUG","level":1}
{"timestamp":"2024-09-22 12:06:13.254","source":"ffmpegHelpers.js:85","message":"[FfmpegHelpers] Resize Image Cmd: ffmpeg -i /audiobooks/Pirateaba/The Wandering Inn/Wandering Inn, The/cover.jpg -y -vf scale=400:-1 /metadata/cache/covers/f9b2600d-3b6c-4ca2-83b6-f791215355f7_400.webp","levelName":"DEBUG","level":1}
{"timestamp":"2024-09-22 12:06:13.258","source":"ffmpegHelpers.js:85","message":"[FfmpegHelpers] Resize Image Cmd: ffmpeg -i /audiobooks/Pirateaba/The Wandering Inn/Wandering Inn, The/cover.jpg -y -vf scale=400:-1 /metadata/cache/covers/b670ba5c-ded6-4f08-8ab6-fbb467f056d5_400.webp","levelName":"DEBUG","level":1}
{"timestamp":"2024-09-22 12:06:13.401","source":"ffmpegHelpers.js:92","message":"[FfmpegHelpers] Image resized Successfully","levelName":"DEBUG","level":1}
{"timestamp":"2024-09-22 12:06:13.402","source":"ffmpegHelpers.js:92","message":"[FfmpegHelpers] Image resized Successfully","levelName":"DEBUG","level":1}
{"timestamp":"2024-09-22 12:06:13.402","source":"ffmpegHelpers.js:92","message":"[FfmpegHelpers] Image resized Successfully","levelName":"DEBUG","level":1}
{"timestamp":"2024-09-22 12:06:13.440","source":"ffmpegHelpers.js:85","message":"[FfmpegHelpers] Resize Image Cmd: ffmpeg -i /audiobooks/Pirateaba/The Wandering Inn/Wandering Inn, The/cover.jpg -y -vf scale=400:-1 /metadata/cache/covers/e034a739-5116-4909-86f2-6718700980a0_400.webp","levelName":"DEBUG","level":1}
{"timestamp":"2024-09-22 12:06:13.563","source":"ffmpegHelpers.js:92","message":"[FfmpegHelpers] Image resized Successfully","levelName":"DEBUG","level":1}
{"timestamp":"2024-09-22 12:06:14.416","source":"Watcher.js:246","message":"[Watcher] File finished adding at \"/audiobooks/Pirateaba/The Wandering Inn/Wandering Inn, The/cover.jpg\"","levelName":"DEBUG","level":1}
{"timestamp":"2024-09-22 12:06:14.908","source":"Watcher.js:246","message":"[Watcher] File finished adding at \"/audiobooks/Pirateaba/The Wandering Inn/Wandering Inn, The/metadata.json\"","levelName":"DEBUG","level":1}
{"timestamp":"2024-09-22 12:06:22.016","source":"LibraryScanner.js:481","message":"[Scanner] Scanning file update groups in folder \"8e62158a-bb01-4da9-9a41-eb3560784138\" of library \"Audiobooks\"","levelName":"DEBUG","level":1}
{"timestamp":"2024-09-22 12:06:22.016","source":"LibraryScanner.js:482","message":"[Scanner] scanFolderUpdates fileUpdateGroup [object Object]","levelName":"DEBUG","level":1}
{"timestamp":"2024-09-22 12:06:22.049","source":"LibraryScanner.js:588","message":"[LibraryScanner] Folder update for relative path \"Pirateaba/The Wandering Inn/Wandering Inn, The\" is in library item \"The Wandering Inn: Volume 1\" - scan for updates","levelName":"DEBUG","level":1}
{"timestamp":"2024-09-22 12:06:22.075","source":"ScanLogger.js:65","message":"[Scan] \"Pirateaba/The Wandering Inn/Wandering Inn, The\": \"Wandering Inn, The\" Getting metadata with precedence [folderStructure, audioMetatags, nfoFile, txtFiles, opfFile, absMetadata]","levelName":"DEBUG","level":1}
{"timestamp":"2024-09-22 12:06:22.075","source":"ScanLogger.js:65","message":"[Scan] \"Pirateaba/The Wandering Inn/Wandering Inn, The\": setChapters: Using embedded chapters in first audio file /audiobooks/Pirateaba/The Wandering Inn/Wandering Inn, The/Wandering Inn, The.m4b","levelName":"DEBUG","level":1}
{"timestamp":"2024-09-22 12:06:22.077","source":"ScanLogger.js:65","message":"[Scan] \"Pirateaba/The Wandering Inn/Wandering Inn, The\": Found metadata file \"/audiobooks/Pirateaba/The Wandering Inn/Wandering Inn, The/metadata.json\"","levelName":"DEBUG","level":1}
{"timestamp":"2024-09-22 12:06:22.078","source":"ScanLogger.js:65","message":"[Scan] \"Pirateaba/The Wandering Inn/Wandering Inn, The\": Library item is up-to-date","levelName":"DEBUG","level":1}
{"timestamp":"2024-09-22 12:06:22.079","source":"LibraryScanner.js:408","message":"[LibraryScanner] Folder scan results [object Object]","levelName":"DEBUG","level":1}
{"timestamp":"2024-09-22 12:07:06.475","source":"LibraryItemController.js:483","message":"[LibraryItemController] Deleting Library Item \"The Wandering Inn: Volume 1\"","levelName":"INFO","level":2}
{"timestamp":"2024-09-22 12:07:06.476","source":"ApiCacheManager.js:20","message":"[ApiCacheManager] Object.afterBulkDestroy: Clearing cache","levelName":"DEBUG","level":1}
{"timestamp":"2024-09-22 12:07:07.173","source":"ApiRouter.js:526","message":"[ApiRouter] Series \"The Wandering Inn\" is now empty. Removing series","levelName":"INFO","level":2}
{"timestamp":"2024-09-22 12:07:07.257","source":"ApiCacheManager.js:20","message":"[ApiCacheManager] series.afterDestroy: Clearing cache","levelName":"DEBUG","level":1}
{"timestamp":"2024-09-22 12:07:07.286","source":"CacheManager.js:85","message":"[CacheManager] Going to purge b670ba5c-ded6-4f08-8ab6-fbb467f056d5_400.webp","levelName":"DEBUG","level":1}
{"timestamp":"2024-09-22 12:07:07.338","source":"ApiCacheManager.js:20","message":"[ApiCacheManager] libraryItem.afterDestroy: Clearing cache","levelName":"DEBUG","level":1}
{"timestamp":"2024-09-22 12:07:07.338","source":"ApiCacheManager.js:20","message":"[ApiCacheManager] Object.afterBulkDestroy: Clearing cache","levelName":"DEBUG","level":1}
{"timestamp":"2024-09-22 12:07:07.339","source":"LibraryItemController.js:483","message":"[LibraryItemController] Deleting Library Item \"The Wandering Inn: Volume 1\"","levelName":"INFO","level":2}
{"timestamp":"2024-09-22 12:07:07.340","source":"ApiCacheManager.js:20","message":"[ApiCacheManager] Object.afterBulkDestroy: Clearing cache","levelName":"DEBUG","level":1}
{"timestamp":"2024-09-22 12:07:07.413","source":"ApiCacheManager.js:20","message":"[ApiCacheManager] book.afterDestroy: Clearing cache","levelName":"DEBUG","level":1}
{"timestamp":"2024-09-22 12:07:07.521","source":"ApiRouter.js:526","message":"[ApiRouter] Series \"The Wandering Inn\" is now empty. Removing series","levelName":"INFO","level":2}
{"timestamp":"2024-09-22 12:07:07.556","source":"ApiCacheManager.js:20","message":"[ApiCacheManager] series.afterDestroy: Clearing cache","levelName":"DEBUG","level":1}
{"timestamp":"2024-09-22 12:07:07.568","source":"CacheManager.js:85","message":"[CacheManager] Going to purge e034a739-5116-4909-86f2-6718700980a0_400.webp","levelName":"DEBUG","level":1}
{"timestamp":"2024-09-22 12:07:07.606","source":"ApiCacheManager.js:20","message":"[ApiCacheManager] libraryItem.afterDestroy: Clearing cache","levelName":"DEBUG","level":1}
{"timestamp":"2024-09-22 12:07:07.607","source":"ApiCacheManager.js:20","message":"[ApiCacheManager] Object.afterBulkDestroy: Clearing cache","levelName":"DEBUG","level":1}
{"timestamp":"2024-09-22 12:07:07.607","source":"LibraryItemController.js:483","message":"[LibraryItemController] Deleting Library Item \"The Wandering Inn: Volume 1\"","levelName":"INFO","level":2}
{"timestamp":"2024-09-22 12:07:07.609","source":"ApiCacheManager.js:20","message":"[ApiCacheManager] Object.afterBulkDestroy: Clearing cache","levelName":"DEBUG","level":1}
{"timestamp":"2024-09-22 12:07:07.636","source":"ApiCacheManager.js:20","message":"[ApiCacheManager] book.afterDestroy: Clearing cache","levelName":"DEBUG","level":1}
{"timestamp":"2024-09-22 12:07:07.747","source":"ApiRouter.js:526","message":"[ApiRouter] Series \"The Wandering Inn\" is now empty. Removing series","levelName":"INFO","level":2}
{"timestamp":"2024-09-22 12:07:07.777","source":"ApiCacheManager.js:20","message":"[ApiCacheManager] series.afterDestroy: Clearing cache","levelName":"DEBUG","level":1}
{"timestamp":"2024-09-22 12:07:07.790","source":"CacheManager.js:85","message":"[CacheManager] Going to purge f9b2600d-3b6c-4ca2-83b6-f791215355f7_400.webp","levelName":"DEBUG","level":1}
{"timestamp":"2024-09-22 12:07:07.849","source":"ApiCacheManager.js:20","message":"[ApiCacheManager] libraryItem.afterDestroy: Clearing cache","levelName":"DEBUG","level":1}
{"timestamp":"2024-09-22 12:07:07.849","source":"ApiCacheManager.js:20","message":"[ApiCacheManager] Object.afterBulkDestroy: Clearing cache","levelName":"DEBUG","level":1}
{"timestamp":"2024-09-22 12:07:07.916","source":"ApiCacheManager.js:20","message":"[ApiCacheManager] book.afterDestroy: Clearing cache","levelName":"DEBUG","level":1}
{"timestamp":"2024-09-22 12:07:10.266","source":"BookFinder.js:447","message":"Book Search: title: \"The Wandering Inn: Volume 1\", author: \"Pirate Aba\", provider: audible","levelName":"DEBUG","level":1}
{"timestamp":"2024-09-22 12:07:10.267","source":"Audible.js:151","message":"[Audible] Search url: https://api.audible.com/1.0/catalog/products?num_results=10&products_sort_by=Relevance&title=The+Wandering+Inn%3A+Volume+1&author=Pirate+Aba","levelName":"DEBUG","level":1}
{"timestamp":"2024-09-22 12:07:10.555","source":"Audnexus.js:53","message":"[Audnexus] Searching for author \"https://api.audnex.us/authors?name=pirate+aba\"","levelName":"INFO","level":2}
{"timestamp":"2024-09-22 12:07:10.556","source":"Audnexus.js:53","message":"[Audnexus] Searching for author \"https://api.audnex.us/authors?name=the+wandering+inn%3A+volume+1\"","levelName":"INFO","level":2}
{"timestamp":"2024-09-22 12:07:10.992","source":"BookFinder.js:351","message":"[AuthorCandidates] Found 2 fuzzy author candidates","levelName":"DEBUG","level":1}
{"timestamp":"2024-09-22 12:07:10.993","source":"BookFinder.js:352","message":"pirate aba,","levelName":"DEBUG","level":1}
{"timestamp":"2024-09-22 12:07:10.995","source":"BookFinder.js:278","message":"[TitleCandidates] Found 1 fuzzy title candidates","levelName":"DEBUG","level":1}
{"timestamp":"2024-09-22 12:07:10.996","source":"BookFinder.js:279","message":"the wandering inn","levelName":"DEBUG","level":1}
{"timestamp":"2024-09-22 12:07:10.996","source":"BookFinder.js:447","message":"Book Search: title: \"the wandering inn\", author: \"pirate aba\", provider: audible","levelName":"DEBUG","level":1}
{"timestamp":"2024-09-22 12:07:10.997","source":"Audible.js:151","message":"[Audible] Search url: https://api.audible.com/1.0/catalog/products?num_results=10&products_sort_by=Relevance&title=the+wandering+inn&author=pirate+aba","levelName":"DEBUG","level":1}
{"timestamp":"2024-09-22 12:07:11.160","source":"BookFinder.js:278","message":"[TitleCandidates] Found 1 fuzzy title candidates","levelName":"DEBUG","level":1}
{"timestamp":"2024-09-22 12:07:11.161","source":"BookFinder.js:279","message":"the wandering inn","levelName":"DEBUG","level":1}
{"timestamp":"2024-09-22 12:07:11.161","source":"BookFinder.js:447","message":"Book Search: title: \"the wandering inn\", author: \"\", provider: audible","levelName":"DEBUG","level":1}
{"timestamp":"2024-09-22 12:07:11.162","source":"Audible.js:151","message":"[Audible] Search url: https://api.audible.com/1.0/catalog/products?num_results=10&products_sort_by=Relevance&title=the+wandering+inn","levelName":"DEBUG","level":1}
{"timestamp":"2024-09-22 12:07:11.258","source":"Audible.js:99","message":"[Audible] ASIN url: https://api.audnex.us/books/B0D7F6BZBC","levelName":"DEBUG","level":1}
{"timestamp":"2024-09-22 12:07:11.258","source":"Audible.js:99","message":"[Audible] ASIN url: https://api.audnex.us/books/B0DCCZ5MG2","levelName":"DEBUG","level":1}
{"timestamp":"2024-09-22 12:07:11.259","source":"Audible.js:99","message":"[Audible] ASIN url: https://api.audnex.us/books/1774240327","levelName":"DEBUG","level":1}
{"timestamp":"2024-09-22 12:07:11.261","source":"Audible.js:99","message":"[Audible] ASIN url: https://api.audnex.us/books/1774241544","levelName":"DEBUG","level":1}
{"timestamp":"2024-09-22 12:07:11.263","source":"Audible.js:99","message":"[Audible] ASIN url: https://api.audnex.us/books/1774248123","levelName":"DEBUG","level":1}
{"timestamp":"2024-09-22 12:07:11.265","source":"Audible.js:99","message":"[Audible] ASIN url: https://api.audnex.us/books/1039403360","levelName":"DEBUG","level":1}
{"timestamp":"2024-09-22 12:07:11.266","source":"Audible.js:99","message":"[Audible] ASIN url: https://api.audnex.us/books/B0CXFCNFKZ","levelName":"DEBUG","level":1}
{"timestamp":"2024-09-22 12:07:11.268","source":"Audible.js:99","message":"[Audible] ASIN url: https://api.audnex.us/books/B09SJ1T9KF","levelName":"DEBUG","level":1}
{"timestamp":"2024-09-22 12:07:11.270","source":"Audible.js:99","message":"[Audible] ASIN url: https://api.audnex.us/books/B09FR6RBVY","levelName":"DEBUG","level":1}
{"timestamp":"2024-09-22 12:07:11.272","source":"Audible.js:99","message":"[Audible] ASIN url: https://api.audnex.us/books/B09XYL9MQJ","levelName":"DEBUG","level":1}
{"timestamp":"2024-09-22 12:07:11.542","source":"Audible.js:109","message":"[Audible] ASIN search error AxiosError: Request failed with status code 500","levelName":"ERROR","level":4}
{"timestamp":"2024-09-22 12:07:16.421","source":"Audible.js:109","message":"[Audible] ASIN search error Error: getaddrinfo EAI_AGAIN api.audnex.us","levelName":"ERROR","level":4}
{"timestamp":"2024-09-22 12:07:20.333","source":"LibraryItemController.js:249","message":"[LibraryItemController] Requesting download cover from url \"https://m.media-amazon.com/images/I/81rzvdOnYSL.jpg\"","levelName":"DEBUG","level":1}
{"timestamp":"2024-09-22 12:07:20.335","source":"fileUtils.js:242","message":"[fileUtils] Downloading file to /audiobooks/Pirateaba/The Wandering Inn/Wandering Inn, The/cover","levelName":"DEBUG","level":1}
{"timestamp":"2024-09-22 12:07:20.386","source":"CacheManager.js:85","message":"[CacheManager] Going to purge 733321c8-ee4c-4074-9bff-9afb0ba22e9c_400.webp","levelName":"DEBUG","level":1}
{"timestamp":"2024-09-22 12:07:20.387","source":"CoverManager.js:151","message":"[CoverManager] Downloaded libraryItem cover \"/audiobooks/Pirateaba/The Wandering Inn/Wandering Inn, The/cover.jpg\" from url \"https://m.media-amazon.com/images/I/81rzvdOnYSL.jpg\" for \"The Wandering Inn: Volume 1\"","levelName":"INFO","level":2}
{"timestamp":"2024-09-22 12:07:20.451","source":"ApiCacheManager.js:20","message":"[ApiCacheManager] author.afterCreate: Clearing cache","levelName":"DEBUG","level":1}
{"timestamp":"2024-09-22 12:07:20.451","source":"ApiRouter.js:627","message":"[ApiRouter] Creating new author \"pirateaba\"","levelName":"DEBUG","level":1}
{"timestamp":"2024-09-22 12:07:20.454","source":"BookMetadata.js:176","message":"[BookMetadata] Key updated title The Wandering Inn","levelName":"DEBUG","level":1}
{"timestamp":"2024-09-22 12:07:20.455","source":"BookMetadata.js:176","message":"[BookMetadata] Key updated subtitle The Wandering Inn, Book 1","levelName":"DEBUG","level":1}
{"timestamp":"2024-09-22 12:07:20.455","source":"BookMetadata.js:176","message":"[BookMetadata] Key updated authors [object Object]","levelName":"DEBUG","level":1}
{"timestamp":"2024-09-22 12:07:20.455","source":"BookMetadata.js:176","message":"[BookMetadata] Key updated series [object Object]","levelName":"DEBUG","level":1}
{"timestamp":"2024-09-22 12:07:20.455","source":"BookMetadata.js:176","message":"[BookMetadata] Key updated genres Literature & Fiction,Science Fiction & Fantasy","levelName":"DEBUG","level":1}
{"timestamp":"2024-09-22 12:07:20.456","source":"BookMetadata.js:176","message":"[BookMetadata] Key updated publisher Podium Audio","levelName":"DEBUG","level":1}
{"timestamp":"2024-09-22 12:07:20.456","source":"BookMetadata.js:176","message":"[BookMetadata] Key updated description An inn is a place to rest, a place to talk and share stories, a place to find adventure, or a starting ground for quests and legends.  It is in this world, at least. To Erin Solstice, an inn seems like a medieval relic from the past. But here she is, running from Goblins and trying to survive in a world full of monsters and magic. She’d be more excited about all of this if everything wasn’t trying to kill her. But an inn is what she’s found, and so that’s what she becomes; an innkeeper, who serves drinks to heroes and monsters. Actually, mostly monsters. But it’s a living, right? ","levelName":"DEBUG","level":1}
{"timestamp":"2024-09-22 12:07:20.456","source":"BookMetadata.js:176","message":"[BookMetadata] Key updated asin 1774240327","levelName":"DEBUG","level":1}
{"timestamp":"2024-09-22 12:07:20.456","source":"BookMetadata.js:176","message":"[BookMetadata] Key updated language English","levelName":"DEBUG","level":1}
{"timestamp":"2024-09-22 12:07:20.456","source":"Book.js:144","message":"[Book] Key updated tags Action & Adventure,Classics,Fantasy,Epic","levelName":"DEBUG","level":1}
{"timestamp":"2024-09-22 12:07:20.457","source":"LibraryItemController.js:213","message":"[LibraryItemController] Updated library item media The Wandering Inn","levelName":"DEBUG","level":1}
{"timestamp":"2024-09-22 12:07:20.460","source":"LibraryItem.js:307","message":"[LibraryItem] Success saving abmetadata to \"/audiobooks/Pirateaba/The Wandering Inn/Wandering Inn, The/metadata.json\"","levelName":"DEBUG","level":1}
{"timestamp":"2024-09-22 12:07:20.497","source":"LibraryItem.js:326","message":"[LibraryItem] \"The Wandering Inn: Volume 1\" author \"Pirate Aba\" was removed","levelName":"DEBUG","level":1}
{"timestamp":"2024-09-22 12:07:20.530","source":"ApiCacheManager.js:20","message":"[ApiCacheManager] Object.afterBulkDestroy: Clearing cache","levelName":"DEBUG","level":1}
{"timestamp":"2024-09-22 12:07:20.530","source":"LibraryItem.js:334","message":"[LibraryItem] \"The Wandering Inn: Volume 1\" author \"pirateaba\" was added","levelName":"DEBUG","level":1}
{"timestamp":"2024-09-22 12:07:20.558","source":"ApiCacheManager.js:20","message":"[ApiCacheManager] bookAuthor.afterCreate: Clearing cache","levelName":"DEBUG","level":1}
{"timestamp":"2024-09-22 12:07:20.558","source":"LibraryItem.js:355","message":"[LibraryItem] \"The Wandering Inn: Volume 1\" series \"The Wandering Inn\" sequence was updated from \"null\" to \"1\"","levelName":"DEBUG","level":1}
{"timestamp":"2024-09-22 12:07:20.568","source":"ApiCacheManager.js:20","message":"[ApiCacheManager] bookSeries.afterUpdate: Clearing cache","levelName":"DEBUG","level":1}
{"timestamp":"2024-09-22 12:07:20.568","source":"LibraryItem.js:382","message":"[LibraryItem] \"The Wandering Inn: Volume 1\" book.title updated from \"The Wandering Inn: Volume 1\" to \"The Wandering Inn\"","levelName":"DEBUG","level":1}
{"timestamp":"2024-09-22 12:07:20.569","source":"LibraryItem.js:382","message":"[LibraryItem] \"The Wandering Inn: Volume 1\" book.titleIgnorePrefix updated from \"Wandering Inn: Volume 1\" to \"Wandering Inn\"","levelName":"DEBUG","level":1}
{"timestamp":"2024-09-22 12:07:20.569","source":"LibraryItem.js:382","message":"[LibraryItem] \"The Wandering Inn: Volume 1\" book.subtitle updated from null to \"The Wandering Inn, Book 1\"","levelName":"DEBUG","level":1}
{"timestamp":"2024-09-22 12:07:20.569","source":"LibraryItem.js:382","message":"[LibraryItem] \"The Wandering Inn: Volume 1\" book.publisher updated from null to \"Podium Audio\"","levelName":"DEBUG","level":1}
{"timestamp":"2024-09-22 12:07:20.569","source":"LibraryItem.js:382","message":"[LibraryItem] \"The Wandering Inn: Volume 1\" book.description updated from \"\\\"No killing Goblins.\\\" So reads the sign outside of the Wandering Inn, a small building run by a young woman named Erin Solstice. She serves pasta with sausage, blue fruit juice, and dead acid flies on request. And she comes from another world. Ours. It’s a bad day when Erin finds herself transported to a fantastical world and nearly gets eaten by a dragon. She doesn’t belong in a place where monster attacks are a fact of life, and where humans are one species among many. But she must adapt to her new life. Or die.\" to \"An inn is a place to rest, a place to talk and share stories, a place to find adventure, or a starting ground for quests and legends.  It is in this world, at least. To Erin Solstice, an inn seems like a medieval relic from the past. But here she is, running from Goblins and trying to survive in a world full of monsters and magic. She’d be more excited about all of this if everything wasn’t trying to kill her. But an inn is what she’s found, and so that’s what she becomes; an innkeeper, who serves drinks to heroes and monsters. Actually, mostly monsters. But it’s a living, right? \"","levelName":"DEBUG","level":1}
{"timestamp":"2024-09-22 12:07:20.570","source":"LibraryItem.js:382","message":"[LibraryItem] \"The Wandering Inn: Volume 1\" book.asin updated from null to \"1774240327\"","levelName":"DEBUG","level":1}
{"timestamp":"2024-09-22 12:07:20.570","source":"LibraryItem.js:382","message":"[LibraryItem] \"The Wandering Inn: Volume 1\" book.language updated from null to \"English\"","levelName":"DEBUG","level":1}
{"timestamp":"2024-09-22 12:07:20.571","source":"LibraryItem.js:382","message":"[LibraryItem] \"The Wandering Inn: Volume 1\" book.tags updated from [] to [\"Action & Adventure\",\"Classics\",\"Fantasy\",\"Epic\"]","levelName":"DEBUG","level":1}
{"timestamp":"2024-09-22 12:07:20.571","source":"LibraryItem.js:382","message":"[LibraryItem] \"The Wandering Inn: Volume 1\" book.genres updated from [\"Hörbuch\"] to [\"Literature & Fiction\",\"Science Fiction & Fantasy\"]","levelName":"DEBUG","level":1}
{"timestamp":"2024-09-22 12:07:20.586","source":"ApiCacheManager.js:20","message":"[ApiCacheManager] book.afterUpdate: Clearing cache","levelName":"DEBUG","level":1}
{"timestamp":"2024-09-22 12:07:20.586","source":"LibraryItem.js:415","message":"[LibraryItem] \"The Wandering Inn\" mtime updated from 1727021169557 to 1727021240369","levelName":"DEBUG","level":1}
{"timestamp":"2024-09-22 12:07:20.586","source":"LibraryItem.js:415","message":"[LibraryItem] \"The Wandering Inn\" ctime updated from 1727021169557 to 1727021240369","levelName":"DEBUG","level":1}
{"timestamp":"2024-09-22 12:07:20.587","source":"LibraryItem.js:415","message":"[LibraryItem] \"The Wandering Inn\" updatedAt updated from 1727021181906 to 1727021240456","levelName":"DEBUG","level":1}
{"timestamp":"2024-09-22 12:07:20.587","source":"LibraryItem.js:415","message":"[LibraryItem] \"The Wandering Inn\" size updated from 1233633055 to 1233633283","levelName":"DEBUG","level":1}
{"timestamp":"2024-09-22 12:07:20.587","source":"LibraryItem.js:412","message":"[LibraryItem] \"The Wandering Inn\" library files updated","levelName":"DEBUG","level":1}
{"timestamp":"2024-09-22 12:07:20.600","source":"ApiCacheManager.js:20","message":"[ApiCacheManager] libraryItem.afterUpdate: Clearing cache","levelName":"DEBUG","level":1}
{"timestamp":"2024-09-22 12:07:20.600","source":"LibraryItem.js:426","message":"[LibraryItem] Library item \"733321c8-ee4c-4074-9bff-9afb0ba22e9c\" updated","levelName":"INFO","level":2}
{"timestamp":"2024-09-22 12:07:20.601","source":"LibraryItemController.js:219","message":"[LibraryItemController] Authors were removed from book. Check if authors are now empty.","levelName":"DEBUG","level":1}
{"timestamp":"2024-09-22 12:07:20.616","source":"ApiCacheManager.js:20","message":"[ApiCacheManager] Object.afterBulkDestroy: Clearing cache","levelName":"DEBUG","level":1}
{"timestamp":"2024-09-22 12:07:20.617","source":"ApiRouter.js:515","message":"[ApiRouter] Removed author \"Pirate Aba\" with no books","levelName":"INFO","level":2}
{"timestamp":"2024-09-22 12:07:20.826","source":"ffmpegHelpers.js:85","message":"[FfmpegHelpers] Resize Image Cmd: ffmpeg -i /audiobooks/Pirateaba/The Wandering Inn/Wandering Inn, The/cover.jpg -y -vf scale=400:-1 /metadata/cache/covers/733321c8-ee4c-4074-9bff-9afb0ba22e9c_400.webp","levelName":"DEBUG","level":1}
{"timestamp":"2024-09-22 12:07:20.846","source":"BookFinder.js:447","message":"Book Search: title: \"1774240327\", author: \"\", provider: audible","levelName":"DEBUG","level":1}
{"timestamp":"2024-09-22 12:07:20.847","source":"Audible.js:99","message":"[Audible] ASIN url: https://api.audnex.us/books/1774240327","levelName":"DEBUG","level":1}
{"timestamp":"2024-09-22 12:07:21.071","source":"ffmpegHelpers.js:92","message":"[FfmpegHelpers] Image resized Successfully","levelName":"DEBUG","level":1}
advplyr commented 3 weeks ago

Everything looks normal with adding the new item. Logs show only 1 gets added. Then at 2024-09-22 12:06:13.249 after you visit the home page it shows that 4 cover images get newly cached.

At 2024-09-22 12:07:06.475 you do a bulk delete of 3 items that match the id of the cover images and the title of the newly added book.

At some point there are 3 other items being created that don't appear to be getting created by Abs unless they were created at some point before the start of those logs.

Are you running multiple instances of the Abs server? Or do you have some other software using the sqlite db maybe for maintaining backups?

seannymurrs commented 3 weeks ago

No other instances of the server are running, and I'm not doing anything else with the database.

seannymurrs commented 3 weeks ago

I have a potential update (though I still need help figuring out what's going on). Yesterday evening, I tried shutting down ABS and starting it back up again (I tried this earlier, but I figured it couldn't hurt). This morning, I tried to replicate the issue, and it happened again. This time, however, it added five copies of the book (one more than last time). This makes me wonder if somehow my previous instances of ABS are continuing to run even after I shut them down and restart. For reference, below is my docker-compose.yml file contents and the commands I'm using to start/stop ABS. Am I doing something wrong there?

`version: "3.7" services: audiobookshelf: image: ghcr.io/advplyr/audiobookshelf:latest ports:

podman-compose -f ~/audiobookshelf/docker-compose.yml up -d

podman-compose -f ~/audiobookshelf/docker-compose.yml down

advplyr commented 3 weeks ago

I've never used podman so that would be something you search for with podman. You can see all the docker containers that are running with docker ps.