-
-
Notifications
You must be signed in to change notification settings - Fork 1.8k
Description
This issue respects the following points:
- This issue is not already reported on GitHub (I've searched it).
- I agree to follow Jellyfin's Code of Conduct.
- This report addresses only a single issue; If you encounter multiple issues, kindly create separate reports for each one.
Describe the bug
Folder view fails to load when clicking on folders with nested structures. The page displays an infinite loading spinner and never shows content, even though the server successfully returns data.
I have a couple of movie folders with structure like this:
Folder/
├── actor-1/
│ ├── movie-1/
│ │ ├──movie1.mp4 & nfo &arts...
│ └── movie-2/
├── actor-2/
│ ├── movie-3/
│ └── movie-4/
└── ...
In the Web-UI, when I click on the folder to view its contents, it will send a request like:
http://192.168.10.2:8096/jellyfin/Users/Id/Items?StartIndex=0&Limit=100&Fields=PrimaryImageAspectRatio%2CSortName%2CPath%2CChildCount%2CMediaSourceCount%2CPrimaryImageAspectRatio&ImageTypeLimit=1&ParentId=9dbf488bc9d13602e4d446a0ead34c1f&SortBy=SortName&SortOrder=Ascending
and it will take just over 30 secs to respond for the smallest one, which has 47 direct subfolders (369 movies in total), and the UI shows the loading spinner forever.
In the console I find there seems to be a client-side timeout:
node_modules.jellyfin-apiclient.bundle.js?0033154416badeb2a4c1:2 Request timed out to http://192.168.10.2:8096/jellyfin/Users/Id/Items?StartIndex=0&Limit=100&Fields=PrimaryImageAspectRatio%2CSortName%2CPath%2CChildCount%2CMediaSourceCount%2CPrimaryImageAspectRatio&ImageTypeLimit=1&ParentId=9dbf488bc9d13602e4d446a0ead34c1f&SortBy=SortName&SortOrder=Ascending
node_modules.jellyfin-apiclient.bundle.js?0033154416badeb2a4c1:2 Reporting request failure
node_modules.jellyfin-apiclient.bundle.js?0033154416badeb2a4c1:2 Reconnect failed
Reproduction Steps
- Enable "Display a folder view to show plain media folders" in Dashboard → Libraries →
Display - Create a deeply nested folder structure with many subfolders:
Parent Folder/
├── Subfolder-1/
│ ├── Nested-1/
│ │ ├──files...
│ └── Nested-2/
├── Subfolder-2/
│ ├── Nested-3/
│ └── Nested-4/
└── ... - Navigate to the parent folder in the web interface
- Click on the folder to view its contents
Expected/Actual behaviour
Folder view should load instantly. Or at least prompt for longer timeout window other than ignore successful request due to client-side timeout.
This seems to happen afer the 10.11 database migration.
Logs
node_modules.jellyfin-apiclient.bundle.js?0033154416badeb2a4c1:2 Requesting http://192.168.10.2:8096/jellyfin/Users/Id/Items?StartIndex=0&Limit=100&Fields=PrimaryImageAspectRatio%2CSortName%2CPath%2CChildCount%2CMediaSourceCount%2CPrimaryImageAspectRatio&ImageTypeLimit=1&ParentId=9dbf488bc9d13602e4d446a0ead34c1f&SortBy=SortName&SortOrder=Ascending
node_modules.jellyfin-apiclient.bundle.js?0033154416badeb2a4c1:2 Requesting http://192.168.10.2:8096/jellyfin/System/Endpoint
node_modules.jellyfin-apiclient.bundle.js?0033154416badeb2a4c1:2 Requesting http://192.168.10.2:8096/jellyfin/Playback/BitrateTest?Size=500000
node_modules.jellyfin-apiclient.bundle.js?0033154416badeb2a4c1:2 Requesting http://192.168.10.2:8096/jellyfin/Playback/BitrateTest?Size=1000000
node_modules.jellyfin-apiclient.bundle.js?0033154416badeb2a4c1:2 Requesting http://192.168.10.2:8096/jellyfin/Playback/BitrateTest?Size=3000000
node_modules.jellyfin-apiclient.bundle.js?0033154416badeb2a4c1:2 Sending web socket message: KeepAlive
node_modules.jellyfin-apiclient.bundle.js?0033154416badeb2a4c1:2 Request timed out to http://192.168.10.2:8096/jellyfin/Users/Id/Items?StartIndex=0&Limit=100&Fields=PrimaryImageAspectRatio%2CSortName%2CPath%2CChildCount%2CMediaSourceCount%2CPrimaryImageAspectRatio&ImageTypeLimit=1&ParentId=9dbf488bc9d13602e4d446a0ead34c1f&SortBy=SortName&SortOrder=Ascending
node_modules.jellyfin-apiclient.bundle.js?0033154416badeb2a4c1:2 Reporting request failure
node_modules.jellyfin-apiclient.bundle.js?0033154416badeb2a4c1:2 Reconnect failed
web/#/list?parentId=…f8095ec14478a89ca:1 Uncaught (in promise) undefined
Promise.then
(anonymous) @ list.40b08310ad3e6b6c4713.chunk.js:1
Promise.then
(anonymous) @ list.40b08310ad3e6b6c4713.chunk.js:1
d @ main.jellyfin.bundle.js?0033154416badeb2a4c1:2
(anonymous) @ main.jellyfin.bundle.js?0033154416badeb2a4c1:2
Promise.then
value @ main.jellyfin.bundle.js?0033154416badeb2a4c1:2
(anonymous) @ main.jellyfin.bundle.js?0033154416badeb2a4c1:2
(anonymous) @ main.jellyfin.bundle.js?0033154416badeb2a4c1:2
(anonymous) @ main.jellyfin.bundle.js?0033154416badeb2a4c1:2
a @ main.jellyfin.bundle.js?0033154416badeb2a4c1:2
Promise.then
l @ main.jellyfin.bundle.js?0033154416badeb2a4c1:2
(anonymous) @ main.jellyfin.bundle.js?0033154416badeb2a4c1:2
c @ main.jellyfin.bundle.js?0033154416badeb2a4c1:2
m @ main.jellyfin.bundle.js?0033154416badeb2a4c1:2
(anonymous) @ main.jellyfin.bundle.js?0033154416badeb2a4c1:2
ri @ node_modules.react-dom.bundle.js?0033154416badeb2a4c1:2
Ss @ node_modules.react-dom.bundle.js?0033154416badeb2a4c1:2
(anonymous) @ node_modules.react-dom.bundle.js?0033154416badeb2a4c1:2
x @ 46967.bundle.js?0033154416badeb2a4c1:2
P @ 46967.bundle.js?0033154416badeb2a4c1:2
(anonymous) @ node_modules.core-js.bundle.js?0033154416badeb2a4c1:1
M @ node_modules.core-js.bundle.js?0033154416badeb2a4c1:1
P @ node_modules.core-js.bundle.js?0033154416badeb2a4c1:1
node_modules.jellyfin-apiclient.bundle.js?0033154416badeb2a4c1:2 Sending web socket message: KeepAlive
node_modules.jellyfin-apiclient.bundle.js?0033154416badeb2a4c1:2 Sending web socket message: KeepAlive
node_modules.jellyfin-apiclient.bundle.js?0033154416badeb2a4c1:2 Sending web socket message: KeepAlive
Server version
10.11.6
Web version
10.11.6
Build version
10.11.6
Platform
Windows & Android
Browser
Edge
Additional information
My main movie folder has 497 movies, but it has a standard/flat structure like jellyfin suggests, it doesn't have this issue.
Movies
├── Movie1
│ ├── Movie1.mp4
│ ├── Movie1.nfo
│ ├── cover.png
│ └── theme.mp3
└── Movie2
├── backdrop.jpg
No response