Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Image caching breaks when a large number of releases are loaded #446

Closed
arg274 opened this issue Aug 16, 2020 · 47 comments
Closed

Image caching breaks when a large number of releases are loaded #446

arg274 opened this issue Aug 16, 2020 · 47 comments
Labels

Comments

@arg274
Copy link
Contributor

arg274 commented Aug 16, 2020

Hardware:

  • OS: Raspbian (32-bit)
  • Arch: armhf

Steps to reproduce the bug:

  • Set the WebUI to display 72 elements per page
  • Choose any album view (Was tested with "Random" and "All")
  • Scroll page by page making sure that all the images on every page have finished loading (Usually requires a library large enough to reach that point, presumably a thousand or more releases)

At one point, the images will break, and will continue staying that way until a service restart. Only the images that had been cached beforehand will be visible. Affects the *sonic API as well. Disabling the image cache seems to circumvent the issue.

Excerpts from the log:

Aug 16 17:43:10 piserver navidrome[11286]: 2020/08/16 17:43:10 http: Accept error: accept tcp [::]:4533: accept4: too many open files; retrying in 1s
Aug 16 17:43:11 piserver navidrome[11286]: 2020/08/16 17:43:11 http: Accept error: accept tcp [::]:4533: accept4: too many open files; retrying in 1s
Aug 16 17:43:12 piserver navidrome[11286]: 2020/08/16 17:43:12 http: Accept error: accept tcp [::]:4533: accept4: too many open files; retrying in 1s
Aug 16 17:43:13 piserver navidrome[11286]: 2020/08/16 17:43:13 http: Accept error: accept tcp [::]:4533: accept4: too many open files; retrying in 1s
Aug 16 17:43:14 piserver navidrome[11286]: 2020/08/16 17:43:14 http: Accept error: accept tcp [::]:4533: accept4: too many open files; retrying in 1s
Aug 16 17:41:20 piserver navidrome[11286]: time="2020-08-16T17:41:20+01:00" level=error msg="Error reading dir" error="open /mnt/extstorage/Music/Tom Waits/[1985] Rain Dogs [CD - MP3 - 320]: too many open files" path="/mnt/extstorage/Music/Tom Waits/[1985] Rain Dogs [CD - MP3 - 320]"
Aug 16 17:41:20 piserver navidrome[11286]: time="2020-08-16T17:41:20+01:00" level=error msg="Error loading directory tree" error="open /mnt/extstorage/Music/Tom Waits/[1985] Rain Dogs [CD - MP3 - 320]: too many open files"
Aug 16 17:41:20 piserver navidrome[11286]: time="2020-08-16T17:41:20+01:00" level=error msg="Error accessing image cache" error="open /home/pi/navdata/cache/images/l9ikgc_6rcbce240ca165c5724e902d373c3a9428: too many open files" path="/mnt/extstorage/Music/水曜日のカンパネラ/[2015] ジパング [CD - MP3 - 320]/07 - ライト兄弟.mp3" requestId=piserver/qzlNscJxQI-001686 size=300
Aug 16 17:41:20 piserver navidrome[11286]: time="2020-08-16T17:41:20+01:00" level=error msg="Error retrieving coverArt" error="open /home/pi/navdata/cache/images/l9ikgc_6rcbce240ca165c5724e902d373c3a9428: too many open files" id=81024fbec52d6bd514ef66efb9c416d4 requestId=piserver/qzlNscJxQI-001686
@deluan deluan added the bug label Aug 16, 2020
@deluan
Copy link
Member

deluan commented Aug 16, 2020

Seems that there is some sort of file descriptor leakage... This may be caused by the upstream https://github.com/djherbis/fscache library. Will do more investigation. For now the solution is what you did: turn off the cache with ImageCacheSize=0

@deluan deluan closed this as completed in 16397e0 Aug 17, 2020
@vs49688
Copy link
Contributor

vs49688 commented Nov 15, 2020

I just hit this on 0.37.0. Same problem, same fix.
Can be triggered in a few minutes navigating when using the Navidrome Kodi addon (it seems to load a LOT).

  • OS: NixOS 20.09 (64-bit)
  • Arch: x86_64
Nov 15 16:22:07 CADANCE navidrome[1482]: time="2020-11-15T16:22:07+10:00" level=error msg="Error accessing image cache" error="open /var/lib/navidrome/cache/images/ly8dnF_Mta29cf5e6e4753f65ada46c2596e1c3a0.key: too many open files" path="<sanitized>" requestId=CADANCE/bE2q8ud4Xx-003392 size=0
Nov 15 16:22:07 CADANCE navidrome[1482]: time="2020-11-15T16:22:07+10:00" level=error msg="Error retrieving coverArt" error="open /var/lib/navidrome/cache/images/ly8dnF_Mta29cf5e6e4753f65ada46c2596e1c3a0.key: too many open files" id=188003b3f59697bdbea2242fe65b024d requestId=CADANCE/bE2q8ud4Xx-003392
Nov 15 16:22:07 CADANCE navidrome[1482]: time="2020-11-15T16:22:07+10:00" level=warning msg="API: Failed response" error=0 message="Internal Error" requestId=CADANCE/bE2q8ud4Xx-003392
Nov 15 16:22:14 CADANCE navidrome[1482]: 2020/11/15 16:22:14 http: Accept error: accept tcp [::]:4533: accept4: too many open files; retrying in 5ms
Nov 15 16:22:15 CADANCE navidrome[1482]: 2020/11/15 16:22:15 http: Accept error: accept tcp [::]:4533: accept4: too many open files; retrying in 5ms
Nov 15 16:22:15 CADANCE navidrome[1482]: 2020/11/15 16:22:15 http: Accept error: accept tcp [::]:4533: accept4: too many open files; retrying in 10ms
Nov 15 16:22:15 CADANCE navidrome[1482]: 2020/11/15 16:22:15 http: Accept error: accept tcp [::]:4533: accept4: too many open files; retrying in 5ms
Nov 15 16:22:16 CADANCE navidrome[1482]: 2020/11/15 16:22:16 http: Accept error: accept tcp [::]:4533: accept4: too many open files; retrying in 5ms
Nov 15 16:22:16 CADANCE navidrome[1482]: 2020/11/15 16:22:16 http: Accept error: accept tcp [::]:4533: accept4: too many open files; retrying in 10ms
Nov 15 16:22:16 CADANCE navidrome[1482]: 2020/11/15 16:22:16 http: Accept error: accept tcp [::]:4533: accept4: too many open files; retrying in 20ms
Nov 15 16:22:16 CADANCE navidrome[1482]: 2020/11/15 16:22:16 http: Accept error: accept tcp [::]:4533: accept4: too many open files; retrying in 40ms
Nov 15 16:22:16 CADANCE navidrome[1482]: 2020/11/15 16:22:16 http: Accept error: accept tcp [::]:4533: accept4: too many open files; retrying in 5ms
Nov 15 16:22:16 CADANCE navidrome[1482]: 2020/11/15 16:22:16 http: Accept error: accept tcp [::]:4533: accept4: too many open files; retrying in 10ms
Nov 15 16:22:16 CADANCE navidrome[1482]: time="2020-11-15T16:22:16+10:00" level=error msg="Error accessing transcoding cache" error="open /var/lib/navidrome/cache/transcoding/lx3eyA30n90ef6d94ff90af744a4d39ae17d6cb1a: too many open files" id=1e1cf5e8ae79cacd28c11b57d2c45fe2 requestId=CADANCE/bE2q8ud4Xx-003397

@deluan
Copy link
Member

deluan commented Nov 15, 2020

Will investigate, thanks for reporting it.

@deluan deluan reopened this Nov 15, 2020
@deluan
Copy link
Member

deluan commented Nov 17, 2020

Hey @vs49688 , can you try this build: https://github.com/deluan/navidrome/suites/1517769433/artifacts/26733088 ?

(Remember to reenable the Image Cache)

@vs49688
Copy link
Contributor

vs49688 commented Nov 18, 2020

Am testing now. Should probably also mention I woke up to more of the same (this is after updating to 0.38.0):

EDIT: This was with the image cache disabled.....

Nov 18 10:23:31 CADANCE navidrome[30464]: 2020/11/18 10:23:31 http: Accept error: accept tcp [::]:4533: accept4: too many open files; retrying in 1s
Nov 18 10:23:32 CADANCE navidrome[30464]: 2020/11/18 10:23:32 http: Accept error: accept tcp [::]:4533: accept4: too many open files; retrying in 1s
Nov 18 10:23:32 CADANCE navidrome[30464]: time="2020-11-18T10:23:32+10:00" level=error msg="Error reading dir" error="open /storage/SyncRoot/Music/music: too many open files" path=/storage/SyncRoot/Music/music
Nov 18 10:23:32 CADANCE navidrome[30464]: time="2020-11-18T10:23:32+10:00" level=error msg="Error loading directory tree" error="open /storage/SyncRoot/Music/music: too many open files"
Nov 18 10:23:32 CADANCE navidrome[30464]: time="2020-11-18T10:23:32+10:00" level=error msg="There were errors reading directories from filesystem" error="open /storage/SyncRoot/Music/music: too many open files"
Nov 18 10:23:32 CADANCE navidrome[30464]: time="2020-11-18T10:23:32+10:00" level=error msg="Scan was interrupted by error. See errors above" error="open /storage/SyncRoot/Music/music: too many open files"
Nov 18 10:23:32 CADANCE navidrome[30464]: time="2020-11-18T10:23:32+10:00" level=error msg="Error importing MediaFolder" error="open /storage/SyncRoot/Music/music: too many open files" folder=/storage/SyncRoot/Music/music
Nov 18 10:23:32 CADANCE navidrome[30464]: time="2020-11-18T10:23:32+10:00" level=error msg="Errors while scanning media. Please check the logs"
Nov 18 10:23:33 CADANCE navidrome[30464]: 2020/11/18 10:23:33 http: Accept error: accept tcp [::]:4533: accept4: too many open files; retrying in 1s
Nov 18 10:23:33 CADANCE navidrome[30464]: time="2020-11-18T10:23:33+10:00" level=warning msg="Pre-cache warmer is not available as ImageCache is DISABLED"
Nov 18 10:23:33 CADANCE navidrome[30464]: time="2020-11-18T10:23:33+10:00" level=error msg="scan error"

@vs49688
Copy link
Contributor

vs49688 commented Nov 18, 2020 via email

@esiqveland
Copy link

Seeing the same navidrome 0.38.0 on arm64.
I am not certain of ulimit it is running with, but this is very probably a file descriptor leak, as it never recovers again after this starts happening.

@deluan
Copy link
Member

deluan commented Nov 20, 2020

Yes, this is definitely a file descriptor leaking. Can any of you guys try with version 0.36.0?

@esiqveland
Copy link

restarted .38.0 again now with debug logging and suddenly cant reproduce anymore.

deleted the caches/images folder and still can not reproduce.

@esiqveland
Copy link

My issue may not be the same.

See logs:

Nov 20 19:57:24 alarmpi navidrome[12027]: time="2020-11-20T19:57:24Z" level=debug msg="Client added to event broker" numClients=1
Nov 20 19:57:26 alarmpi navidrome[12027]: time="2020-11-20T19:57:26Z" level=debug msg="Removed client from event broker" numClients=0
Nov 20 19:57:26 alarmpi navidrome[12027]: time="2020-11-20T19:57:26Z" level=debug msg="New broker client" address=192.168.192.1 requestId=alarmpi/RXoAMNhVPr-001217 user=eivind userAgent="Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/86.0.4240.183 Safari/537.36"
Nov 20 19:57:26 alarmpi navidrome[12027]: time="2020-11-20T19:57:26Z" level=debug msg="Client added to event broker" numClients=1
Nov 20 19:57:28 alarmpi navidrome[12027]: time="2020-11-20T19:57:28Z" level=debug msg="Removed client from event broker" numClients=0
Nov 20 19:57:28 alarmpi navidrome[12027]: time="2020-11-20T19:57:28Z" level=debug msg="New broker client" address=192.168.192.1 requestId=alarmpi/RXoAMNhVPr-001218 user=eivind userAgent="Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/86.0.4240.183 Safari/537.36"
Nov 20 19:57:28 alarmpi navidrome[12027]: time="2020-11-20T19:57:28Z" level=debug msg="Client added to event broker" numClients=1
Nov 20 19:57:30 alarmpi navidrome[12027]: time="2020-11-20T19:57:30Z" level=debug msg="Removed client from event broker" numClients=0
Nov 20 19:57:30 alarmpi navidrome[12027]: time="2020-11-20T19:57:30Z" level=debug msg="New broker client" address=192.168.192.1 requestId=alarmpi/RXoAMNhVPr-001219 user=eivind userAgent="Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/86.0.4240.183 Safari/537.36"
Nov 20 19:57:30 alarmpi navidrome[12027]: time="2020-11-20T19:57:30Z" level=debug msg="Client added to event broker" numClients=1
Nov 20 19:57:32 alarmpi navidrome[12027]: time="2020-11-20T19:57:32Z" level=debug msg="Removed client from event broker" numClients=0
Nov 20 19:57:32 alarmpi navidrome[12027]: time="2020-11-20T19:57:32Z" level=debug msg="New broker client" address=192.168.192.1 requestId=alarmpi/RXoAMNhVPr-001220 user=eivind userAgent="Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/86.0.4240.183 Safari/537.36"
Nov 20 19:57:32 alarmpi navidrome[12027]: time="2020-11-20T19:57:32Z" level=debug msg="Client added to event broker" numClients=1
Nov 20 19:57:34 alarmpi navidrome[12027]: time="2020-11-20T19:57:34Z" level=debug msg="Removed client from event broker" numClients=0
Nov 20 19:57:34 alarmpi navidrome[12027]: time="2020-11-20T19:57:34Z" level=debug msg="New broker client" address=192.168.192.1 requestId=alarmpi/RXoAMNhVPr-001221 user=eivind userAgent="Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/86.0.4240.183 Safari/537.36"
Nov 20 19:57:34 alarmpi navidrome[12027]: time="2020-11-20T19:57:34Z" level=debug msg="Client added to event broker" numClients=1
Nov 20 19:57:36 alarmpi navidrome[12027]: time="2020-11-20T19:57:36Z" level=debug msg="Removed client from event broker" numClients=0
Nov 20 19:57:36 alarmpi navidrome[12027]: time="2020-11-20T19:57:36Z" level=debug msg="New broker client" address=192.168.192.1 requestId=alarmpi/RXoAMNhVPr-001222 user=eivind userAgent="Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/86.0.4240.183 Safari/537.36"
Nov 20 19:57:36 alarmpi navidrome[12027]: time="2020-11-20T19:57:36Z" level=debug msg="Client added to event broker" numClients=1
Nov 20 19:57:38 alarmpi navidrome[12027]: time="2020-11-20T19:57:38Z" level=debug msg="Removed client from event broker" numClients=0
Nov 20 19:57:38 alarmpi navidrome[12027]: time="2020-11-20T19:57:38Z" level=debug msg="New broker client" address=192.168.192.1 requestId=alarmpi/RXoAMNhVPr-001223 user=eivind userAgent="Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/86.0.4240.183 Safari/537.36"
Nov 20 19:57:38 alarmpi navidrome[12027]: time="2020-11-20T19:57:38Z" level=debug msg="Client added to event broker" numClients=1
Nov 20 19:57:40 alarmpi navidrome[12027]: time="2020-11-20T19:57:40Z" level=debug msg="Removed client from event broker" numClients=0
Nov 20 19:57:40 alarmpi navidrome[12027]: time="2020-11-20T19:57:40Z" level=debug msg="New broker client" address=192.168.192.1 requestId=alarmpi/RXoAMNhVPr-001224 user=eivind userAgent="Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/86.0.4240.183 Safari/537.36"
Nov 20 19:57:40 alarmpi navidrome[12027]: time="2020-11-20T19:57:40Z" level=debug msg="Client added to event broker" numClients=1
Nov 20 19:57:42 alarmpi navidrome[12027]: time="2020-11-20T19:57:42Z" level=debug msg="Removed client from event broker" numClients=0
Nov 20 19:57:42 alarmpi navidrome[12027]: time="2020-11-20T19:57:42Z" level=debug msg="New broker client" address=192.168.192.1 requestId=alarmpi/RXoAMNhVPr-001225 user=eivind userAgent="Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/86.0.4240.183 Safari/537.36"
Nov 20 19:57:42 alarmpi navidrome[12027]: time="2020-11-20T19:57:42Z" level=debug msg="Client added to event broker" numClients=1
Nov 20 19:57:44 alarmpi navidrome[12027]: time="2020-11-20T19:57:44Z" level=debug msg="Removed client from event broker" numClients=0
Nov 20 19:57:44 alarmpi navidrome[12027]: time="2020-11-20T19:57:44Z" level=debug msg="New broker client" address=192.168.192.1 requestId=alarmpi/RXoAMNhVPr-001226 user=eivind userAgent="Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/86.0.4240.183 Safari/537.36"
Nov 20 19:57:44 alarmpi navidrome[12027]: time="2020-11-20T19:57:44Z" level=debug msg="Client added to event broker" numClients=1
Nov 20 19:57:46 alarmpi navidrome[12027]: time="2020-11-20T19:57:46Z" level=debug msg="Removed client from event broker" numClients=0
Nov 20 19:57:46 alarmpi navidrome[12027]: time="2020-11-20T19:57:46Z" level=debug msg="New broker client" address=192.168.192.1 requestId=alarmpi/RXoAMNhVPr-001227 user=eivind userAgent="Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/86.0.4240.183 Safari/537.36"
Nov 20 19:57:46 alarmpi navidrome[12027]: time="2020-11-20T19:57:46Z" level=debug msg="Client added to event broker" numClients=1
Nov 20 19:57:48 alarmpi navidrome[12027]: time="2020-11-20T19:57:48Z" level=debug msg="Removed client from event broker" numClients=0
Nov 20 19:57:48 alarmpi navidrome[12027]: 2020/11/20 19:57:48 http: Accept error: accept tcp [::]:4533: accept4: too many open files; retrying in 5ms
Nov 20 19:57:48 alarmpi navidrome[12027]: time="2020-11-20T19:57:48Z" level=debug msg="New broker client" address=192.168.192.1 requestId=alarmpi/RXoAMNhVPr-001228 user=eivind userAgent="Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/86.0.4240.183 Safari/537.36"
Nov 20 19:57:48 alarmpi navidrome[12027]: time="2020-11-20T19:57:48Z" level=debug msg="Client added to event broker" numClients=1
Nov 20 19:57:48 alarmpi navidrome[12027]: 2020/11/20 19:57:48 http: Accept error: accept tcp [::]:4533: accept4: too many open files; retrying in 10ms
Nov 20 19:57:48 alarmpi navidrome[12027]: 2020/11/20 19:57:48 http: Accept error: accept tcp [::]:4533: accept4: too many open files; retrying in 20ms
Nov 20 19:57:48 alarmpi navidrome[12027]: 2020/11/20 19:57:48 http: Accept error: accept tcp [::]:4533: accept4: too many open files; retrying in 40ms
Nov 20 19:57:48 alarmpi navidrome[12027]: 2020/11/20 19:57:48 http: Accept error: accept tcp [::]:4533: accept4: too many open files; retrying in 80ms
Nov 20 19:57:48 alarmpi navidrome[12027]: 2020/11/20 19:57:48 http: Accept error: accept tcp [::]:4533: accept4: too many open files; retrying in 160ms
Nov 20 19:57:48 alarmpi navidrome[12027]: 2020/11/20 19:57:48 http: Accept error: accept tcp [::]:4533: accept4: too many open files; retrying in 320ms
Nov 20 19:57:48 alarmpi navidrome[12027]: 2020/11/20 19:57:48 http: Accept error: accept tcp [::]:4533: accept4: too many open files; retrying in 640ms
Nov 20 19:57:49 alarmpi navidrome[12027]: 2020/11/20 19:57:49 http: Accept error: accept tcp [::]:4533: accept4: too many open files; retrying in 1s
Nov 20 19:57:50 alarmpi navidrome[12027]: time="2020-11-20T19:57:50Z" level=debug msg="Removed client from event broker" numClients=0
Nov 20 19:57:50 alarmpi navidrome[12027]: 2020/11/20 19:57:50 http: Accept error: accept tcp [::]:4533: accept4: too many open files; retrying in 1s
Nov 20 19:57:51 alarmpi navidrome[12027]: 2020/11/20 19:57:51 http: Accept error: accept tcp [::]:4533: accept4: too many open files; retrying in 1s
Nov 20 19:57:52 alarmpi navidrome[12027]: 2020/11/20 19:57:52 http: Accept error: accept tcp [::]:4533: accept4: too many open files; retrying in 1s
Nov 20 19:57:53 alarmpi navidrome[12027]: 2020/11/20 19:57:53 http: Accept error: accept tcp [::]:4533: accept4: too many open files; retrying in 1s
Nov 20 19:57:54 alarmpi navidrome[12027]: 2020/11/20 19:57:54 http: Accept error: accept tcp [::]:4533: accept4: too many open files; retrying in 1s
Nov 20 19:57:55 alarmpi navidrome[12027]: 2020/11/20 19:57:55 http: Accept error: accept tcp [::]:4533: accept4: too many open files; retrying in 1s
Nov 20 19:57:56 alarmpi navidrome[12027]: 2020/11/20 19:57:56 http: Accept error: accept tcp [::]:4533: accept4: too many open files; retrying in 1s
Nov 20 19:57:57 alarmpi navidrome[12027]: 2020/11/20 19:57:57 http: Accept error: accept tcp [::]:4533: accept4: too many open files; retrying in 1s
Nov 20 19:57:58 alarmpi navidrome[12027]: 2020/11/20 19:57:58 http: Accept error: accept tcp [::]:4533: accept4: too many open files; retrying in 1s
Nov 20 19:57:59 alarmpi navidrome[12027]: 2020/11/20 19:57:59 http: Accept error: accept tcp [::]:4533: accept4: too many open files; retrying in 1s
Nov 20 19:58:00 alarmpi navidrome[12027]: 2020/11/20 19:58:00 http: Accept error: accept tcp [::]:4533: accept4: too many open files; retrying in 1s
Nov 20 19:58:01 alarmpi navidrome[12027]: 2020/11/20 19:58:01 http: Accept error: accept tcp [::]:4533: accept4: too many open files; retrying in 1s
Nov 20 19:58:02 alarmpi navidrome[12027]: 2020/11/20 19:58:02 http: Accept error: accept tcp [::]:4533: accept4: too many open files; retrying in 1s
Nov 20 19:58:03 alarmpi navidrome[12027]: 2020/11/20 19:58:03 http: Accept error: accept tcp [::]:4533: accept4: too many open files; retrying in 1s
Nov 20 19:58:04 alarmpi navidrome[12027]: 2020/11/20 19:58:04 http: Accept error: accept tcp [::]:4533: accept4: too many open files; retrying in 1s

Notice how the web client keeps reconnecting.

@deluan
Copy link
Member

deluan commented Nov 20, 2020

Hummm, can you try disabling the Activity Panel with the config option DevActivityMenu=false? Also, I need confirmation this is happening in 0.36.1 and 0.37.0, if someone can try it, please

@vs49688
Copy link
Contributor

vs49688 commented Nov 21, 2020

Happens in 0.37.0. navidrome-0.37.0-cache.txt.gz.

Testing in 0.36.1 shortly.

This was reproduced by repeatedly hitting random and waiting for cover art to fail to load. When that didn't work, I switched to the Navidrome Kodi plugin. Navigating releases worked. Navigating artists (and failing to load the artist images) triggered it almost immediately.

Perhaps something isn't being closed upon failure?

@vs49688
Copy link
Contributor

vs49688 commented Nov 21, 2020

Also happens in 0.36.1. navidrome-0.36.1-cache.txt.gz

@deluan
Copy link
Member

deluan commented Nov 21, 2020

Thanks @vs49688! Is it too much to ask you to keep testing until you find the version it was last working? That would be extremely helpful, as I cannot seem to reproduce the issue here...

@deluan
Copy link
Member

deluan commented Nov 21, 2020

To rule out the upgrade to Go 1.15 (introduced in version 0.35.0), I've built the current version from master using Go 1.14. If any of you guys can test it, it would be very helpful. Thanks!

navidrome_v0.38.0-SNAPSHOT_Linux_arm64.tar.gz
navidrome_v0.38.0-SNAPSHOT_Linux_armv5.tar.gz
navidrome_v0.38.0-SNAPSHOT_Linux_armv6.tar.gz
navidrome_v0.38.0-SNAPSHOT_Linux_armv7.tar.gz
navidrome_v0.38.0-SNAPSHOT_Linux_i386.tar.gz
navidrome_v0.38.0-SNAPSHOT_Linux_x86_64.tar.gz

@vs49688
Copy link
Contributor

vs49688 commented Nov 21, 2020

Just tried it on this (with Go 1.14) and it still happens.
I seem to be able to reproduce it by navigating artists with the Kodi Navidrome plugin.

I could give you shell access if it'd help with debugging.

@vs49688
Copy link
Contributor

vs49688 commented Nov 21, 2020

Just reproduced it on 0.34.0

@deluan
Copy link
Member

deluan commented Nov 22, 2020

I could give you shell access if it'd help with debugging.

Thanks but I don't think that would help :(

0.34.0 only introduced UI changes, so the next logical candidate version (that introduced server changes) is 0.33.0, where the taglib extractor was introduced. I wonder if the taglib extractor is the code to blame here.... Can you please test version 0.38.0, but using Scanner.Extractor="ffmpeg"?

@vs49688
Copy link
Contributor

vs49688 commented Nov 22, 2020

Done, still happens.

Repro notes (personal):

  • Open Kodi Plugin
  • Navigate all artists (557), letting each default image load.
  • Navigate and load 14 "random" pages of albums
  • Triggered when it starts displaying a vertical rectangular image with a video camera in the centre for each album.

@vs49688
Copy link
Contributor

vs49688 commented Nov 22, 2020

I'm going to keep going back until I find one that's working, then I'll do a bisect on it. Probably won't get to this until tonight though.
Will report back.

@vs49688
Copy link
Contributor

vs49688 commented Nov 22, 2020

Well, that was several hours of my life I'll never get back. Bisected to 9f4f2f7.

EDIT: Should probably note that was done by cherry-picking 16397e0 as needed.

9f4f2f7381039b135b4bfe4595b03395d4625774 is the first bad commit
commit 9f4f2f7381039b135b4bfe4595b03395d4625774
Author: Deluan <deluan@navidrome.org>
Date:   Fri Jul 24 13:30:27 2020 -0400

    Use new FileCache in cover service

 core/core_suite_test.go     | 18 ------------
 core/cover.go               | 72 +++++++++++++++++++--------------------------
 core/cover_test.go          | 27 +++++++----------
 core/file_caches.go         |  9 +++---
 core/file_caches_test.go    | 50 +++++++++++++++++++++++++++++--
 core/media_streamer.go      |  2 +-
 core/media_streamer_test.go |  3 +-
 7 files changed, 97 insertions(+), 84 deletions(-)

@deluan
Copy link
Member

deluan commented Nov 22, 2020

Hey @vs49688, really, really thanks for this. Are you in Discord? I'd like to chat about your finds.

@vs49688
Copy link
Contributor

vs49688 commented Nov 22, 2020

No worries. I'm not, but I could probably create an account. I see you have a matrix.org account, could we chat there?

@esiqveland
Copy link

If you enable pprof debugging, we can probably heap/threaddump and make these much simpler to debug:

https://golang.org/pkg/net/http/pprof/

@zoidy
Copy link
Contributor

zoidy commented Nov 26, 2020

Hummm, can you try disabling the Activity Panal with the config option DevActivityMenu=false? Also, I need confirmation this is happening in 0.36.1 and 0.37.0, if someone can try it, please

I tried with the latest commit and I think the problem is indeed related to the activity panel. It may also be related to #640 since I also have that problem. I was able to reproduce the too many open files error like this:

  • Compile the latest version
  • Run two identical instances of the binary running on separate ports on the local LAN. The only difference is one has the DevActivityPanel=true setting.
  • Open the Navidrome Album page and set the view to 72 (not sure this is important)
  • Let both instances just sit there. The instance with the Activity Panel enabled has an error about every second related to http://<server>:<port>/app/api/events?jwt=<token> in the Network tab in the dev tools panel of the browser
  • After about 30-45 minutes, the instance with DevActivityMenu=true stops responding and the "too many open files" error appears on the server

@darkeststar
Copy link

darkeststar commented Dec 1, 2020

Not sure if this is related, but calls to /app/api/events appears to be consistently leaking a socket when the call gets cancelled. Which seems to be happening a decent amount when using the web client.

As an example, of a leak:

Number of file descriptors when the server is sitting idle:

$ sudo ls -l /proc/$(pidof navidrome)/fd | wc -l
257

Perform GET on app/api/event:

curl 'http://music.infosphere/app/api/events?jwt=<JWT_TOKEN>' \
  -H 'Connection: keep-alive' \
  -H 'Accept: text/event-stream' \
  -H 'Cache-Control: no-cache' \
  -H 'DNT: 1' \
  -H 'User-Agent: Mozilla/5.0 (X11; Fedora; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/86.0.4240.198 Safari/537.36' \
  -H 'Referer: <REFERER>' \
  -H 'Accept-Language: en-US,en;q=0.9' \
  --compressed

While the call is running:

$ sudo ls -l /proc/$(pidof navidrome)/fd | wc -l
258

Using strace I can see what syscalls were made:

$ sudo strace -p $(pidof navidrome) -f --trace network
...
[pid 230876] accept4(14, {sa_family=AF_INET6, sin6_port=htons(44246), sin6_flowinfo=htonl(0), inet_pton(AF_INET6, "::ffff:127.0.0.1", &sin6_addr), sin6_scope_id=0}, [112->28], SOCK_CLOEXEC|SOCK_NONBLOCK) = 312
[pid 230876] getsockname(312, {sa_family=AF_INET6, sin6_port=htons(4533), sin6_flowinfo=htonl(0), inet_pton(AF_INET6, "::ffff:127.0.0.1", &sin6_addr), sin6_scope_id=0}, [112->28]) = 0
[pid 230876] setsockopt(312, SOL_TCP, TCP_NODELAY, [1], 4) = 0
...

Then after killing the curl command:

The number of open file descriptors never goes back down:

$ sudo ls -l /proc/$(pidof navidrome)/fd | wc -l
258

And the socket allocated in the accept4 call above (with file descriptor of 312) never gets closed:

$ sudo ls -l /proc/$(pidof navidrome)/fd/312
lrwx------. 1 navidrome navidrome 64 Nov 30 23:55 /proc/230861/fd/312 -> 'socket:[1061509]'

The strace output never show the above file descriptor getting cleaned up.

@deluan
Copy link
Member

deluan commented Dec 1, 2020

Hey @darkeststar, thanks for the detailed debugging! Yes, I can confirm that the Activity Panel is definitely add up to the issue, but it is not the main culprit. I'll release a new version today with the Activity Panel and the Image Cache disabled by default, that should alleviate the issue for new users, while I don't figure out the final solution for this issue

EDIT: This particular FD leakage was just fixed in a8c5fa6, and will be in the next release

@esiqveland
Copy link

I also think I had a old load balancer in front that did not play well with SSE. I think this caused numerous failed connections from some web clients, leaking connections much faster. I currently have no issues with caddy 2.2.0

deluan added a commit that referenced this issue Dec 1, 2020
@izaak
Copy link

izaak commented Dec 1, 2020

I'll just say 'me too' and if there's anything I can do to help debug/test, I've got time. I'll be monitoring the open file descriptors closely, after disabling the image cache.

@jdaviescoates
Copy link

jdaviescoates commented Dec 11, 2020

I noticed my images weren't loading anymore, and so came here to see if I could find out why, and I guess it's due to the fact image cache has been disabled by default.. how can I turn image caching back on to see if it still works on my system? Thanks!

@deluan
Copy link
Member

deluan commented Dec 11, 2020

Even with the Image Cache disabled, you should see the images. You can enable it with ImageCacheSize=100MB (100MB is the old default, but you can set it to any value greater than 0)

@jdaviescoates
Copy link

I do see some images, but strangely not some that I was seeing previously. And yeah I've actually already added that bit of code but didn't notice any difference.

@izaak
Copy link

izaak commented Dec 26, 2020

I had encountered the file descriptor bug. Now I'm on 0.39.0 but I'm encountering strange behaviour with album art. Sometimes I restart Navidrome and some covers that worked before will disappear. To fix, I trigger a scan of a particular folder by updating the file times, and the cover comes back. Should I create a new issue, or is it related to this one?

@deluan
Copy link
Member

deluan commented Feb 7, 2021

Hey @izaak , seems like I missed your last comment, sorry. Do you have more info on this disappearing covers bug? This is only related to the fd bug if you see "too many opened files" messages in the logs for the getCoverArt requests.

You said that you found the bug. What exactly do you mean? Did you find where in the code this is being caused?

@jdaviescoates
Copy link

jdaviescoates commented Feb 8, 2021

Sometimes I restart Navidrome and some covers that worked before will disappear.

That's what's happened to me too. Albums that used to have covers no longer do. I may try the file name change trick to see if that works for me too...

@izaak
Copy link

izaak commented Feb 8, 2021

Hey @izaak , seems like I missed your last comment, sorry. Do you have more info on this disappearing covers bug? This is only related to the fd bug if you see "too many opened files" messages in the logs for the getCoverArt requests.

You said that you found the bug. What exactly do you mean? Did you find where in the code this is being caused?

Sorry for the confusion- my system does run into the bug but I have not found anything to help fix it.

I used to run into the bug more often though, I wonder if it's aggrevated by crappy routers dropping connections. I used to get the 'too many opened files' error every ~4 days average, but since upgrading my network setup a few weeks ago, I've only seen the problem once...

@izaak
Copy link

izaak commented Feb 8, 2021

Sometimes I restart Navidrome and some covers that worked before will disappear.

That's what's happened to me too. Albums that used to have covers no longer do. I may try the file name change trick to see if that works for me too...

Eventually I just had to start a new database.

@deluan deluan unpinned this issue Feb 9, 2021
@Jeck
Copy link

Jeck commented Mar 2, 2021

File descriptor bug occurs on latest release as well. I ran into it while setting up the server, so importing folders might have exacerbated it. I had to set image cache to 0, will let you know if I continue to hit it.

@whorfin
Copy link
Contributor

whorfin commented Apr 20, 2021

I'm not sure my issue is OPs, but since I see the issue of "covers that worked before will disappear" showing up, this seemed like the place for the bug I've found.

If the cache is empty and I start navidrome with image caching enabled, everything works great.
If I restart navidrome, all cover-art shows as broken links in the web GUI.
Perhaps most importantly, logging shows this panic every time the broken link is displayed:

 panic: runtime error: invalid memory address or nil pointer dereference

 -> github.com/navidrome/navidrome/utils/cache.(*fileCache).Get
 ->   /home/whorfin/navidrome/utils/cache/file_caches.go:98

    github.com/navidrome/navidrome/core.(*artwork).Get
      /home/whorfin/navidrome/core/artwork.go:78
    github.com/navidrome/navidrome/server/subsonic.(*MediaRetrievalController).GetCoverArt
      /home/whorfin/navidrome/server/subsonic/media_retrieval.go:69
    github.com/navidrome/navidrome/server/subsonic.h.func1
      /home/whorfin/navidrome/server/subsonic/api.go:179
    net/http.HandlerFunc.ServeHTTP
      /opt/ooce/go-1.16/src/net/http/server.go:2069
    github.com/go-chi/chi/middleware.ThrottleWithOpts.func1.1
      /home/whorfin/go/pkg/mod/github.com/go-chi/chi@v1.5.1/middleware/throttle.go:100
    net/http.HandlerFunc.ServeHTTP
      /opt/ooce/go-1.16/src/net/http/server.go:2069
    github.com/go-chi/chi.(*ChainHandler).ServeHTTP
      /home/whorfin/go/pkg/mod/github.com/go-chi/chi@v1.5.1/chain.go:31
    github.com/go-chi/chi.(*Mux).routeHTTP
      /home/whorfin/go/pkg/mod/github.com/go-chi/chi@v1.5.1/mux.go:437
    net/http.HandlerFunc.ServeHTTP
      /opt/ooce/go-1.16/src/net/http/server.go:2069
    github.com/navidrome/navidrome/server/subsonic.authenticate.func1.1
      /home/whorfin/navidrome/server/subsonic/middlewares.go:105
    net/http.HandlerFunc.ServeHTTP
      /opt/ooce/go-1.16/src/net/http/server.go:2069
    github.com/navidrome/navidrome/server/subsonic.checkRequiredParameters.func1
      /home/whorfin/navidrome/server/subsonic/middlewares.go:67
    net/http.HandlerFunc.ServeHTTP
      /opt/ooce/go-1.16/src/net/http/server.go:2069
    github.com/navidrome/navidrome/server/subsonic.postFormToQueryParams.func1
      /home/whorfin/navidrome/server/subsonic/middlewares.go:40
    net/http.HandlerFunc.ServeHTTP
      /opt/ooce/go-1.16/src/net/http/server.go:2069
    github.com/go-chi/chi.(*Mux).ServeHTTP
      /home/whorfin/go/pkg/mod/github.com/go-chi/chi@v1.5.1/mux.go:69
    github.com/navidrome/navidrome/server/subsonic.(*Router).ServeHTTP
      /home/whorfin/navidrome/server/subsonic/api.go:55
    github.com/go-chi/chi.(*Mux).Mount.func1
      /home/whorfin/go/pkg/mod/github.com/go-chi/chi@v1.5.1/mux.go:312
    net/http.HandlerFunc.ServeHTTP
      /opt/ooce/go-1.16/src/net/http/server.go:2069
    github.com/go-chi/chi.(*ChainHandler).ServeHTTP
      /home/whorfin/go/pkg/mod/github.com/go-chi/chi@v1.5.1/chain.go:31
    github.com/go-chi/chi.(*Mux).routeHTTP
      /home/whorfin/go/pkg/mod/github.com/go-chi/chi@v1.5.1/mux.go:437
    net/http.HandlerFunc.ServeHTTP
      /opt/ooce/go-1.16/src/net/http/server.go:2069
    github.com/navidrome/navidrome/server.robotsTXT.func1.1
      /home/whorfin/navidrome/server/middlewares.go:66
    net/http.HandlerFunc.ServeHTTP
      /opt/ooce/go-1.16/src/net/http/server.go:2069
    github.com/navidrome/navidrome/server.requestLogger.func1
      /home/whorfin/navidrome/server/middlewares.go:24
    net/http.HandlerFunc.ServeHTTP
      /opt/ooce/go-1.16/src/net/http/server.go:2069
    github.com/navidrome/navidrome/server.injectLogger.func1
      /home/whorfin/navidrome/server/middlewares.go:55
    net/http.HandlerFunc.ServeHTTP
      /opt/ooce/go-1.16/src/net/http/server.go:2069
    github.com/go-chi/chi/middleware.Heartbeat.func1.1
      /home/whorfin/go/pkg/mod/github.com/go-chi/chi@v1.5.1/middleware/heartbeat.go:21
    net/http.HandlerFunc.ServeHTTP
      /opt/ooce/go-1.16/src/net/http/server.go:2069
    github.com/go-chi/chi/middleware.(*Compressor).Handler.func1
      /home/whorfin/go/pkg/mod/github.com/go-chi/chi@v1.5.1/middleware/compress.go:213
    net/http.HandlerFunc.ServeHTTP
      /opt/ooce/go-1.16/src/net/http/server.go:2069
    github.com/go-chi/chi/middleware.Recoverer.func1
      /home/whorfin/go/pkg/mod/github.com/go-chi/chi@v1.5.1/middleware/recoverer.go:37
    net/http.HandlerFunc.ServeHTTP
      /opt/ooce/go-1.16/src/net/http/server.go:2069
    github.com/go-chi/chi/middleware.RealIP.func1
      /home/whorfin/go/pkg/mod/github.com/go-chi/chi@v1.5.1/middleware/realip.go:34
    net/http.HandlerFunc.ServeHTTP
      /opt/ooce/go-1.16/src/net/http/server.go:2069
    github.com/go-chi/chi/middleware.RequestID.func1
      /home/whorfin/go/pkg/mod/github.com/go-chi/chi@v1.5.1/middleware/request_id.go:76
    net/http.HandlerFunc.ServeHTTP
      /opt/ooce/go-1.16/src/net/http/server.go:2069
    github.com/go-chi/cors.(*Cors).Handler.func1
      /home/whorfin/go/pkg/mod/github.com/go-chi/cors@v1.1.1/cors.go:228
    net/http.HandlerFunc.ServeHTTP
      /opt/ooce/go-1.16/src/net/http/server.go:2069
    github.com/unrolled/secure.(*Secure).Handler.func1
      /home/whorfin/go/pkg/mod/github.com/unrolled/secure@v1.0.8/secure.go:177
    net/http.HandlerFunc.ServeHTTP
      /opt/ooce/go-1.16/src/net/http/server.go:2069
    github.com/go-chi/chi.(*Mux).ServeHTTP
      /home/whorfin/go/pkg/mod/github.com/go-chi/chi@v1.5.1/mux.go:86
    net/http.serverHandler.ServeHTTP
      /opt/ooce/go-1.16/src/net/http/server.go:2887
    net/http.(*conn).serve
      /opt/ooce/go-1.16/src/net/http/server.go:1952
    created by net/http.(*Server).Serve
      /opt/ooce/go-1.16/src/net/http/server.go:3013

If I stop navidrome, completely delete the cache folder and restart navidrome, everything is fine.
Until navidrome is restarted, then it's broken.
So it seems like a fundamental oops in the caching logic.

Disabling caching completely is what I've been forced to do.

@deluan
Copy link
Member

deluan commented Apr 20, 2021

@whorfin this is a different issue, can you please open a new bug report in GH? I'll take a look ASAP

@KingDuckZ
Copy link

In 0.42.0 I'm still having the "too many open files" error spammed in my logs. If it helps to reproduce it, it seems to happen every time I press the update collection button in Strawberry.

@deluan
Copy link
Member

deluan commented May 6, 2021

@KingDuckZ A chunk of the log (loglevel=debug) can help. You can send it directly to me if it contains too much sensitive data (deluan at navidrome org)

@KingDuckZ
Copy link

KingDuckZ commented May 21, 2021

Sorry for the delay @deluan, I emailed you the logs. On a closer look at the cover cache in the Strawberry directory, I see it's 2.2 GiB and growing (update is still at 37%). It's clear there are a lot of duplicate covers in there, for example there are the first few lines printed by find . -type f -exec sha1sum {} \; | sort | less:

000f032f3e005d07781ecba64c3520e86fccca4e  ./01e251209a335c4588c752209b490e58.jpg
000f032f3e005d07781ecba64c3520e86fccca4e  ./276ae144f96573bc7ff8854b4e87bb37.jpg
000f032f3e005d07781ecba64c3520e86fccca4e  ./52076.jpg
000f032f3e005d07781ecba64c3520e86fccca4e  ./83eebb2384870017151d9411a9f9a6de.jpg
000f032f3e005d07781ecba64c3520e86fccca4e  ./a3a2a14ccef02271ef9b959538a7dc0f.jpg
000f032f3e005d07781ecba64c3520e86fccca4e  ./b1426bfdba3ed916d78cb8d4ab2661a1.jpg
000f032f3e005d07781ecba64c3520e86fccca4e  ./b72395471ac9e6406bcb7a681a46a324.jpg
000f032f3e005d07781ecba64c3520e86fccca4e  ./c024dd1029b30faa4311235e9060fb03.jpg
000f032f3e005d07781ecba64c3520e86fccca4e  ./c17d86843ac7520f1d9cef17e7138369.jpg
000f032f3e005d07781ecba64c3520e86fccca4e  ./cac6f9f5c3c8d02719a95d6cf15ddd57.jpg
000f032f3e005d07781ecba64c3520e86fccca4e  ./e0f25d741c12ca00685eedc857f191fb.jpg
000f032f3e005d07781ecba64c3520e86fccca4e  ./f1715e4be15bebc5c22d871131308137.jpg
0029e29e08f475a6c1cb47c01cdea0b6ef9d131c  ./090344222d004a8611c40aedfb3f0031.jpg
0029e29e08f475a6c1cb47c01cdea0b6ef9d131c  ./135148.jpg
0029e29e08f475a6c1cb47c01cdea0b6ef9d131c  ./163dd98b14432a4ee1283af159e7b9e7.jpg
0029e29e08f475a6c1cb47c01cdea0b6ef9d131c  ./2198bd1b02c4396b6e13e0103cf8b1ea.jpg
0029e29e08f475a6c1cb47c01cdea0b6ef9d131c  ./247533810fea5179b479ede9d2fbf95f.jpg
0029e29e08f475a6c1cb47c01cdea0b6ef9d131c  ./2b1ec147cbeafff90c9b2743ba447948.jpg
0029e29e08f475a6c1cb47c01cdea0b6ef9d131c  ./48e59f39c27d4e36028b31366399d9ae.jpg
0029e29e08f475a6c1cb47c01cdea0b6ef9d131c  ./669efbafdd383f9900ec27b2e24835e7.jpg
0029e29e08f475a6c1cb47c01cdea0b6ef9d131c  ./72a090fbe099dd8e77e28ebe39e01c58.jpg
0029e29e08f475a6c1cb47c01cdea0b6ef9d131c  ./7a56c28aa8eb5db1a0acd394de24cddf.jpg
0029e29e08f475a6c1cb47c01cdea0b6ef9d131c  ./91734fdb4d2884daa69b35c6c764a9f3.jpg
0029e29e08f475a6c1cb47c01cdea0b6ef9d131c  ./980e59089e390721649ef25ea1298814.jpg
0029e29e08f475a6c1cb47c01cdea0b6ef9d131c  ./9dcadbc6565a2e2b5e6418aef45ac13d.jpg
0029e29e08f475a6c1cb47c01cdea0b6ef9d131c  ./c17d0875f8b3b0d2f685c756897a4dac.jpg
0029e29e08f475a6c1cb47c01cdea0b6ef9d131c  ./c83766b76f0165a9fb45df65d0042ca8.jpg
0029e29e08f475a6c1cb47c01cdea0b6ef9d131c  ./dd71be0aa813834fe6557b335dbd1781.jpg
0029e29e08f475a6c1cb47c01cdea0b6ef9d131c  ./fb9d08369ff2b58a04b1c0607d1b2aca.jpg
0029e29e08f475a6c1cb47c01cdea0b6ef9d131c  ./fe2770eb3ab098f6c39f74e0a2f50bd3.jpg
003073e489209da4a00dbd4b85a86193c472e04e  ./072b56c25be36d087495f3a879dabad9.jpg
003073e489209da4a00dbd4b85a86193c472e04e  ./0c6b1ef81308fa808b9e16b5c9e9fdd3.jpg
003073e489209da4a00dbd4b85a86193c472e04e  ./0cb5bc7ebe1752540323e5bb234d2a6a.jpg

So I don't know if it's a bug with Strawberry or with Navidrome, but hash 003073e489209da4a00dbd4b85a86193c472e04e appears 69 times and that's definitely not looking right to me.

Edit: I deleted my local cover cache and re-started the update, watching the thumbnails in Dolphin as they get created it's immediately clear there are dozens of copies of the same images. I think there should be only 1 copy per disc, or ideally only 1 per album if all discs share the same cover art (same hash). I can report this to the Strawberry bug tracker if you believe it's an issue on their end.

@deluan deluan closed this as completed in 452c8dc Jul 1, 2021
@deluan
Copy link
Member

deluan commented Jul 1, 2021

Hey folks! I finally found the cause of this bug and it is now fixed in the latest builds. If you still seeing this issue, please let me know. Thanks for your cooperation and patience!

@ghost
Copy link

ghost commented Jul 1, 2021

I had seemingly the same result on 0.44.0 (b16d473) using the mac binary on a mac mini server. I do not know if this is related so forgive me if this is just confusing the issue. The album images wouldn't load unless previously loaded as in the op, but eventually the UI became completely unresponsive until service restart. The log files were filling up with "too many open files". But in this case what seemed to solve it is moving the binary from the /opt folder to a ~/ folder. I am having a horrible time with permissions in this folder since a macOS upgrade and eventually just moved everything out of there. I did get the issue again this morning but a simple browser hard reload solved it.

UPDATE: So moving out of /opt helped a lot but I am still getting missing covers and UI freezing needing service restart. too many open files

@deluan
Copy link
Member

deluan commented Jul 2, 2021

Hey @TheFlatworm, can you try the latest release 0.44.1?

Anyway, this seems to be unrelated, so if you are still having these issues after upgrading to 0.44.1, please open a new issue with all details, and I'll investigate it. Thanks!

@github-actions
Copy link

This issue has been automatically locked since there has not been any recent activity after it was closed. Please open a new issue for related bugs.

@github-actions github-actions bot locked as resolved and limited conversation to collaborators Mar 11, 2023
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
Projects
None yet
Development

No branches or pull requests