audiobookshelf
audiobookshelf copied to clipboard
[Bug]: System limit for number of file watchers reached Error
Describe the issue
Started to receive this error lately when adding books, if I add multiple books at a time the watched folder normally only adds the first book. All books are added to audiobookshelf library if I do a manual scan.

Let me know if you require any additional information or if I can try/test something.
Thanks
Steps to reproduce the issue
- When multiple books are added at the same time.
Audiobookshelf version
2.1.2
How are you running audiobookshelf?
Docker
Just to let advplyr know I still am having this issue, do you know if it is a known issue or is it just me? Thanks
I haven't seen this error before. Are you able to narrow down exactly when this happens?
I have got a few new screenshots and events/triggers when it happens.
When I restart the Audiobookshelf server I get 500+ of these errors.
When I copy 9 new books (same series) over the watcher picked up 2 of the books automatically
as you can see in the next pic the watcher only picked up 2 new books
After a manual scan all books are added and logs show no errors during the manual scan

If there is anything I can try let me know. Also this is just a quess and I have no evidence but I think this issue may have started after the 1000th different series added.
This time I have added 6 new books, 3 different series (new series). 3 books from 1 series, 2 books from another series and 1 book from another series.
As you can see in the following pic only 3 have been added, 1 from each new series.
Here is a pic of the added files/names
Here is a pic after a manual scan and as you can see the other books have been added to the series, the logs showed no errors during manual scan.
Let me know if you want to know anything else or can try something for you.
This time I copied over the 4 remaining books too the Princess of the Ironbound series
As you can see I still got errors in the above pics, but as you can see in the following pic they were all added automatically by the watcher, from this it appears as though the errors have no bearing if they are added by the watcher?
As stated previously it only seems to happen if I add multiple books from a new series, the watcher might add 1 or 2 books but not the entire series until I do a manual scan.
I get the same error, running on a Synology NAS. @Cobolt78 what system are you using to host audiobookshelf?
I found this question on stackoverflow, which might explain it. But I am unsure whether the command should be run on the NAS itself or the Docker container.
Also, I am somewhat hesitant as due to a possible impact on overall system performance.
I'm having the same issue ... looks like if this problem has something to do withe the number of files in the librarys as this problem was not here from beginning but started suddenly when I was adding a lot of books ... at the beginning, when testing with 3-400 books everything was fine ... currently I have about 2000 books most of them with more mp3 files so there are a lot of files ...
This does have to do with the number of files in your libraries but the limit is set by your system. I have seen libraries with 250k+ audio files that don't hit this limit. If you don't want to increase the limit on your system or it doesn't make sense there is a "Disable Watcher" setting you can enable. You can also enable this on individual libraries so if there is one big library you don't want to watch then you can disable that one.
The reason that you can schedule automatic library scans in Abs is because some users don't use the Watcher. That is an option for you as well so you don't have to manually scan.
I'm going to consider this closed since it is to do with your system and not Abs. I'm not really familiar with how to change the max file watchers in all the different systems but I'm sure it is easy enough to find.
ABS is currently running as a docker image on my synology. Sorry to say that I don't have enough linux know how to change this setting ... if anyone could give me a hint? I guess this limitation must be somewhere inside the docker image but I'm not able to get a "shell" working as bash is not exepted but as I said there is a lot of linux knowledge missing on my side :-( But even if I could change this value I'd guess this change will be gone if I update the image to a new version? right?
I just searched "synology nas max_user_watches" and saw many results.
thanks! ... this pointed me to the right direction ... I guessed this was a setting inside docker but it turned out to be a setting on synology ... hopfully solved it by adding a task on startup with "sh -c '(sleep 90 && sudo sysctl fs.inotify.max_user_watches=204800)&'" lets see if this is the right solution.