2023-11-28, 05:12 AM
Hey everyone. I'm a long-time Jellyfin user, but new to these forums.
I'm running two separate Jellyfin servers at home: one for TV shows & movies and another for music. They're both running v10.8.12 in docker on a fully-patched Debian 11 system. They've both remained unchanged in the weeks since v10.8.12 was released, save for adding new media.
Today, I noticed that my Android and Android TV clients stopped being able to connect to the instance hosting video. Curiously, they can still connect to the other one. The web interfaces for both instances still work. Even looking at the server logs, it seems as though the Android client has successfully authenticated and has started doing the queries to populate the front page. However, I end up right back at the "Choose a server" page:
In the log snippet below, 10.1.1.207 is my Android phone and 10.1.1.9 is my Jellyfin server.
Are there any other logs that I can provide, maybe from the Android client? I'm not sure how to get those logs, but if anyone can point me to the correct documentation, I can try get those. This *feels* like a client issue, but I'm not sure why either component would be having this issue unless it was something to do with a particular piece of media that was added since the last time it worked. I have tried removing the latest few items that were added, but unfortunately, that didn't help.
Ideas or debugging suggestions are welcome!
I'm running two separate Jellyfin servers at home: one for TV shows & movies and another for music. They're both running v10.8.12 in docker on a fully-patched Debian 11 system. They've both remained unchanged in the weeks since v10.8.12 was released, save for adding new media.
Today, I noticed that my Android and Android TV clients stopped being able to connect to the instance hosting video. Curiously, they can still connect to the other one. The web interfaces for both instances still work. Even looking at the server logs, it seems as though the Android client has successfully authenticated and has started doing the queries to populate the front page. However, I end up right back at the "Choose a server" page:
In the log snippet below, 10.1.1.207 is my Android phone and 10.1.1.9 is my Jellyfin server.
Code:
[2023-11-28 00:46:38.106 -04:00] [DBG] [14] Jellyfin.Networking.Manager.NetworkManager: GetBindInterface: Source: True, External: False:
[2023-11-28 00:46:38.107 -04:00] [DBG] [14] Jellyfin.Networking.Manager.NetworkManager: "10.1.1.207/32": GetBindInterface: Has source, matched best internal interface on range. "10.1.1.9"
[2023-11-28 00:46:38.566 -04:00] [DBG] [46] Jellyfin.Server.Middleware.BaseUrlRedirectionMiddleware: Normalizing an URL at "/"
[2023-11-28 00:46:39.423 -04:00] [DBG] [46] Jellyfin.Api.Auth.CustomAuthenticationHandler: AuthenticationScheme: "CustomAuthentication" was not authenticated.
[2023-11-28 00:46:39.424 -04:00] [DBG] [46] Jellyfin.Networking.Manager.NetworkManager: GetBindInterface: Source: True, External: False:
[2023-11-28 00:46:39.424 -04:00] [DBG] [46] Jellyfin.Networking.Manager.NetworkManager: "10.1.1.207/32": GetBindInterface: Has source, matched best internal interface on range. "10.1.1.9"
[2023-11-28 00:46:39.711 -04:00] [DBG] [46] Jellyfin.Api.Auth.CustomAuthenticationHandler: AuthenticationScheme: "CustomAuthentication" was not authenticated.
[2023-11-28 00:46:39.982 -04:00] [DBG] [20] Jellyfin.Api.Auth.CustomAuthenticationHandler: AuthenticationScheme: "CustomAuthentication" was not authenticated.
[2023-11-28 00:46:39.983 -04:00] [DBG] [20] Jellyfin.Networking.Manager.NetworkManager: GetBindInterface: Source: True, External: False:
[2023-11-28 00:46:39.983 -04:00] [DBG] [20] Jellyfin.Networking.Manager.NetworkManager: "10.1.1.207/32": GetBindInterface: Has source, matched best internal interface on range. "10.1.1.9"
[2023-11-28 00:46:40.047 -04:00] [DBG] [13] Jellyfin.Networking.Manager.NetworkManager: GetBindInterface: Source: True, External: False:
[2023-11-28 00:46:40.047 -04:00] [DBG] [13] Jellyfin.Networking.Manager.NetworkManager: "10.1.1.207/32": GetBindInterface: Has source, matched best internal interface on range. "10.1.1.9"
[2023-11-28 00:46:40.047 -04:00] [DBG] [13] Jellyfin.Networking.Manager.NetworkManager: GetBindInterface: Source: True, External: False:
[2023-11-28 00:46:40.048 -04:00] [DBG] [13] Jellyfin.Networking.Manager.NetworkManager: "10.1.1.207/32": GetBindInterface: Has source, matched best internal interface on range. "10.1.1.9"
[2023-11-28 00:46:40.081 -04:00] [DBG] [13] Jellyfin.Api.Auth.CustomAuthenticationHandler: AuthenticationScheme: "CustomAuthentication" was successfully authenticated.
[2023-11-28 00:46:40.081 -04:00] [DBG] [13] Jellyfin.Api.Auth.CustomAuthenticationHandler: AuthenticationScheme: "CustomAuthentication" was successfully authenticated.
[2023-11-28 00:46:40.082 -04:00] [DBG] [13] Jellyfin.Networking.Manager.NetworkManager: GetBindInterface: Source: True, External: False:
[2023-11-28 00:46:40.082 -04:00] [DBG] [13] Jellyfin.Networking.Manager.NetworkManager: "10.1.1.207/32": GetBindInterface: Has source, matched best internal interface on range. "10.1.1.9"
[2023-11-28 00:46:40.188 -04:00] [DBG] [20] Jellyfin.Api.Auth.CustomAuthenticationHandler: AuthenticationScheme: "CustomAuthentication" was successfully authenticated.
[2023-11-28 00:46:40.188 -04:00] [DBG] [20] Jellyfin.Api.Auth.CustomAuthenticationHandler: AuthenticationScheme: "CustomAuthentication" was successfully authenticated.
[2023-11-28 00:46:40.190 -04:00] [DBG] [14] Jellyfin.Api.Auth.CustomAuthenticationHandler: AuthenticationScheme: "CustomAuthentication" was successfully authenticated.
[2023-11-28 00:46:40.190 -04:00] [DBG] [14] Jellyfin.Api.Auth.CustomAuthenticationHandler: AuthenticationScheme: "CustomAuthentication" was successfully authenticated.
[2023-11-28 00:46:40.191 -04:00] [DBG] [3] Jellyfin.Api.Auth.CustomAuthenticationHandler: AuthenticationScheme: "CustomAuthentication" was successfully authenticated.
[2023-11-28 00:46:40.192 -04:00] [DBG] [3] Jellyfin.Api.Auth.CustomAuthenticationHandler: AuthenticationScheme: "CustomAuthentication" was successfully authenticated.
[2023-11-28 00:46:40.259 -04:00] [DBG] [14] Jellyfin.Api.Auth.CustomAuthenticationHandler: AuthenticationScheme: "CustomAuthentication" was successfully authenticated.
[2023-11-28 00:46:40.260 -04:00] [INF] [14] Emby.Server.Implementations.HttpServer.WebSocketManager: WS "10.1.1.207" request
[2023-11-28 00:46:40.263 -04:00] [DBG] [14] Emby.Server.Implementations.Session.WebSocketController: Adding websocket to session "8eff1f140c62003f19a9d128a7669d88"
[2023-11-28 00:46:40.284 -04:00] [DBG] [20] Emby.Server.Implementations.HttpServer.WebSocketConnection: WS "10.1.1.207" received message: WebSocketMessage`1 { MessageType: KeepAlive, MessageId: 00000000-0000-0000-0000-000000000000, ServerId: null, Data: null }
[2023-11-28 00:46:40.295 -04:00] [DBG] [13] Jellyfin.Api.Auth.CustomAuthenticationHandler: AuthenticationScheme: "CustomAuthentication" was successfully authenticated.
[2023-11-28 00:46:40.295 -04:00] [DBG] [13] Jellyfin.Api.Auth.CustomAuthenticationHandler: AuthenticationScheme: "CustomAuthentication" was successfully authenticated.
[2023-11-28 00:46:40.331 -04:00] [DBG] [14] Jellyfin.Api.Auth.CustomAuthenticationHandler: AuthenticationScheme: "CustomAuthentication" was successfully authenticated.
[2023-11-28 00:46:40.331 -04:00] [DBG] [14] Jellyfin.Api.Auth.CustomAuthenticationHandler: AuthenticationScheme: "CustomAuthentication" was successfully authenticated.
[2023-11-28 00:46:40.357 -04:00] [DBG] [55] Jellyfin.Api.Auth.CustomAuthenticationHandler: AuthenticationScheme: "CustomAuthentication" was successfully authenticated.
[2023-11-28 00:46:40.357 -04:00] [DBG] [55] Jellyfin.Api.Auth.CustomAuthenticationHandler: AuthenticationScheme: "CustomAuthentication" was successfully authenticated.
[2023-11-28 00:46:40.453 -04:00] [DBG] [20] Jellyfin.Api.Auth.CustomAuthenticationHandler: AuthenticationScheme: "CustomAuthentication" was successfully authenticated.
[2023-11-28 00:46:40.453 -04:00] [DBG] [20] Jellyfin.Api.Auth.CustomAuthenticationHandler: AuthenticationScheme: "CustomAuthentication" was successfully authenticated.
[2023-11-28 00:46:40.458 -04:00] [DBG] [55] Jellyfin.Api.Auth.CustomAuthenticationHandler: AuthenticationScheme: "CustomAuthentication" was successfully authenticated.
[2023-11-28 00:46:40.458 -04:00] [DBG] [55] Jellyfin.Api.Auth.CustomAuthenticationHandler: AuthenticationScheme: "CustomAuthentication" was successfully authenticated.
[2023-11-28 00:46:40.468 -04:00] [DBG] [13] Jellyfin.Api.Auth.CustomAuthenticationHandler: AuthenticationScheme: "CustomAuthentication" was successfully authenticated.
[2023-11-28 00:46:40.468 -04:00] [DBG] [13] Jellyfin.Api.Auth.CustomAuthenticationHandler: AuthenticationScheme: "CustomAuthentication" was successfully authenticated.
[2023-11-28 00:46:40.470 -04:00] [DBG] [46] Jellyfin.Api.Auth.CustomAuthenticationHandler: AuthenticationScheme: "CustomAuthentication" was successfully authenticated.
[2023-11-28 00:46:40.470 -04:00] [DBG] [46] Jellyfin.Api.Auth.CustomAuthenticationHandler: AuthenticationScheme: "CustomAuthentication" was successfully authenticated.
[2023-11-28 00:46:40.472 -04:00] [DBG] [53] Jellyfin.Api.Auth.CustomAuthenticationHandler: AuthenticationScheme: "CustomAuthentication" was successfully authenticated.
[2023-11-28 00:46:40.472 -04:00] [DBG] [53] Jellyfin.Api.Auth.CustomAuthenticationHandler: AuthenticationScheme: "CustomAuthentication" was successfully authenticated.
[2023-11-28 00:46:40.534 -04:00] [DBG] [20] Emby.Server.Implementations.Data.SqliteItemRepository: "GetItemList" query time (slow): 77.989ms. Query: "select type,data,StartDate,EndDate,ChannelId,IsMovie,IsSeries,EpisodeTitle,IsRepeat,CommunityRating,IndexNumber,Width,Height,Name,Path,PremiereDate,ParentIndexNumber,ProductionYear,OfficialRating,RunTimeTicks,Size,DateModified,guid,ParentId,Audio,ExternalServiceId,IsInMixedFolder,Tags,TrailerTypes,PrimaryVersionId,Album,CriticRating,IsVirtualItem,SeriesName,SeasonName,SeasonId,SeriesId,ProviderIds,Images,TotalBitrate,ExtraType,Artists,AlbumArtists,ExternalId,ShowId,OwnerId,UserDatas.UserId,UserDatas.lastPlayedDate,UserDatas.playbackPositionTicks,UserDatas.playcount,UserDatas.isFavorite,UserDatas.played,UserDatas.rating from TypedBaseItems A left join UserDatas on UserDataKey=UserDatas.Key And (UserId=@UserId) where playbackPositionTicks > 0 AND IsVirtualItem=@IsVirtualItem AND MediaType=@MediaTypes AND Guid in (select itemId from AncestorIds where AncestorIdText in ('debc83c3efb3f4343dbd8d8724573286','2d5e118517ea76967d01a748ca77667c','4c0a7f0b28ff6c7807dc5a4c212a2e9c','6119cdf7d503d5378555cd7a76e43f74','f137a2dd21bbc1b99aa5c0f6bf02a805','67325429a147086535e5ffb0582102c6','9105fcc1caf925f5a56340c4ff351092','41219f7edf49c90789463b5fdf8a5f6a','767bffe4f11c93ef34b805451a696a4e','9d7ad6afe9afa2dab1a2f6e00ad28fa6','1071671e7bffa0532e930debee501d2e')) Group by PresentationUniqueKey ORDER BY LastPlayedDate DESC LIMIT 12"
[2023-11-28 00:46:40.536 -04:00] [DBG] [55] Emby.Server.Implementations.Data.SqliteItemRepository: "GetItemList" query time (slow): 76.737ms. Query: "select type,data,StartDate,EndDate,ChannelId,IsMovie,IsSeries,EpisodeTitle,IsRepeat,CommunityRating,CustomRating,IndexNumber,IsLocked,PreferredMetadataLanguage,PreferredMetadataCountryCode,Width,Height,DateLastRefreshed,Name,Path,PremiereDate,Overview,ParentIndexNumber,ProductionYear,OfficialRating,ForcedSortName,RunTimeTicks,Size,DateCreated,DateModified,guid,Genres,ParentId,Audio,ExternalServiceId,IsInMixedFolder,DateLastSaved,LockedFields,Studios,Tags,TrailerTypes,OriginalTitle,PrimaryVersionId,DateLastMediaAdded,Album,CriticRating,IsVirtualItem,SeriesName,SeasonName,SeasonId,SeriesId,PresentationUniqueKey,InheritedParentalRatingValue,ExternalSeriesId,Tagline,ProviderIds,Images,ProductionLocations,ExtraIds,TotalBitrate,ExtraType,Artists,AlbumArtists,ExternalId,SeriesPresentationUniqueKey,ShowId,OwnerId from TypedBaseItems A where ParentId=@ParentId"
[2023-11-28 00:46:40.546 -04:00] [DBG] [13] Emby.Server.Implementations.Data.SqliteItemRepository: "GetItemList" query time (slow): 77.4588ms. Query: "select type,data,StartDate,EndDate,ChannelId,IsMovie,IsSeries,EpisodeTitle,IsRepeat,CommunityRating,IndexNumber,Width,Height,Name,Path,PremiereDate,ParentIndexNumber,ProductionYear,OfficialRating,RunTimeTicks,Size,DateModified,guid,ParentId,Audio,ExternalServiceId,IsInMixedFolder,Tags,TrailerTypes,PrimaryVersionId,Album,CriticRating,IsVirtualItem,SeriesName,SeasonName,SeasonId,SeriesId,ProviderIds,Images,TotalBitrate,ExtraType,Artists,AlbumArtists,ExternalId,ShowId,OwnerId from TypedBaseItems A where IsFolder=@IsFolder AND IsVirtualItem=@IsVirtualItem AND MediaType=@MediaTypes AND (TopParentId=@TopParentId) Group by PresentationUniqueKey ORDER BY DateCreated DESC,SortName DESC,ProductionYear DESC LIMIT 80"
[2023-11-28 00:46:40.647 -04:00] [DBG] [46] Emby.Server.Implementations.Data.SqliteItemRepository: "GetItemList" query time (slow): 176.7267ms. Query: "select type,data,StartDate,EndDate,ChannelId,IsMovie,IsSeries,EpisodeTitle,IsRepeat,CommunityRating,IndexNumber,Width,Height,Name,Path,PremiereDate,ParentIndexNumber,ProductionYear,OfficialRating,RunTimeTicks,Size,DateModified,guid,ParentId,Audio,ExternalServiceId,IsInMixedFolder,Tags,TrailerTypes,PrimaryVersionId,Album,CriticRating,IsVirtualItem,SeriesName,SeasonName,SeasonId,SeriesId,ProviderIds,Images,TotalBitrate,ExtraType,Artists,AlbumArtists,ExternalId,ShowId,OwnerId from TypedBaseItems A where IsFolder=@IsFolder AND IsVirtualItem=@IsVirtualItem AND MediaType=@MediaTypes AND TopParentId in ('eb3ff00d05c678bce079da26fce70448','f5390062da6bc1e19a0f39940e35d21c','5909a4d134f81cc5e508a3b40fe5890b','1e8c80e575980e3132f500808ae02d54','b919f611fa80845aa93b54d2955119c3') Group by PresentationUniqueKey ORDER BY DateCreated DESC,SortName DESC,ProductionYear DESC LIMIT 80"
[2023-11-28 00:46:40.649 -04:00] [DBG] [53] Emby.Server.Implementations.Data.SqliteItemRepository: "GetItemList" query time (slow): 176.0628ms. Query: "select type,data,StartDate,EndDate,ChannelId,IsMovie,IsSeries,EpisodeTitle,IsRepeat,CommunityRating,CustomRating,IndexNumber,IsLocked,PreferredMetadataLanguage,PreferredMetadataCountryCode,Width,Height,DateLastRefreshed,Name,Path,PremiereDate,Overview,ParentIndexNumber,ProductionYear,OfficialRating,ForcedSortName,RunTimeTicks,Size,DateCreated,DateModified,guid,Genres,ParentId,Audio,ExternalServiceId,IsInMixedFolder,DateLastSaved,LockedFields,Studios,Tags,TrailerTypes,OriginalTitle,PrimaryVersionId,DateLastMediaAdded,Album,CriticRating,IsVirtualItem,SeriesName,SeasonName,SeasonId,SeriesId,PresentationUniqueKey,InheritedParentalRatingValue,ExternalSeriesId,Tagline,ProviderIds,Images,ProductionLocations,ExtraIds,TotalBitrate,ExtraType,Artists,AlbumArtists,ExternalId,SeriesPresentationUniqueKey,ShowId,OwnerId from TypedBaseItems A where ParentId=@ParentId"
[2023-11-28 00:46:40.723 -04:00] [DBG] [55] Emby.Server.Implementations.Data.SqliteItemRepository: "GetItemList" query time (slow): 187.0603ms. Query: "select type,data,EndDate,ChannelId,CommunityRating,IndexNumber,Width,Height,Name,Path,PremiereDate,ParentIndexNumber,ProductionYear,OfficialRating,RunTimeTicks,Size,DateModified,guid,ParentId,Audio,IsInMixedFolder,PrimaryVersionId,Album,CriticRating,IsVirtualItem,SeriesName,SeasonName,SeasonId,SeriesId,ProviderIds,TotalBitrate,ExtraType,ExternalId,SeriesPresentationUniqueKey,OwnerId,UserDatas.UserId,UserDatas.lastPlayedDate,UserDatas.playbackPositionTicks,UserDatas.playcount,UserDatas.isFavorite,UserDatas.played,UserDatas.rating from TypedBaseItems A left join UserDatas on UserDataKey=UserDatas.Key And (UserId=@UserId) where type=@type AND TopParentId in ('5c249ed3e2ca4f612015628a18e1b72f','1aa2f6093402654e817c7370c0f159ef','e9a408f51742d95415f7b1c63c2789df','f993afb2f3f3d17fdedc895850cb98f8','3227744d9297797f46efd8eb1bd9e99e','af04ea31368a222b83c1fdca4b558d63','57582ec86fdc768dff8ff16175e5dff3','f32de1490479eb5dd2f56ca39f139b9a','b1efcb59e4d0977d37145ebc106816c2','e28c6bfa918998892c6999431ffa51ad','1141a73fe0f005a653509a670270d8d5','6dd2f37a883e2b5bdbb39cb4c511fd55','9de1eed6ce77f40baa83a45f99c684cb','6a560653bf19c343d410b376553304ad','2c5c6c59f1fd9efda34327cda987cc7a','e4dfe85f2fc744d86e7bcff84fa91b90','eb3ff00d05c678bce079da26fce70448','f5390062da6bc1e19a0f39940e35d21c','5909a4d134f81cc5e508a3b40fe5890b','1e8c80e575980e3132f500808ae02d54','b919f611fa80845aa93b54d2955119c3','8679d10569ec12981200c4116da3e90b','1071671e7bffa0532e930debee501d2e') Group by SeriesPresentationUniqueKey ORDER BY MAX(LastPlayedDate) DESC"
[2023-11-28 00:46:40.752 -04:00] [DBG] [53] Emby.Server.Implementations.Data.SqliteItemRepository: "GetItemList" query time (slow): 102.5146ms. Query: "select type,data,EndDate,ChannelId,CommunityRating,IndexNumber,Width,Height,Name,Path,PremiereDate,ParentIndexNumber,ProductionYear,OfficialRating,RunTimeTicks,Size,DateModified,guid,ParentId,Audio,IsInMixedFolder,PrimaryVersionId,Album,CriticRating,IsVirtualItem,SeriesName,ProviderIds,Images,TotalBitrate,ExtraType,ExternalId,OwnerId from TypedBaseItems A where type=@type AND IsVirtualItem=@IsVirtualItem AND TopParentId in ('5c249ed3e2ca4f612015628a18e1b72f','1aa2f6093402654e817c7370c0f159ef','f993afb2f3f3d17fdedc895850cb98f8','3227744d9297797f46efd8eb1bd9e99e','af04ea31368a222b83c1fdca4b558d63','57582ec86fdc768dff8ff16175e5dff3','f32de1490479eb5dd2f56ca39f139b9a','b1efcb59e4d0977d37145ebc106816c2','e28c6bfa918998892c6999431ffa51ad','1141a73fe0f005a653509a670270d8d5','6dd2f37a883e2b5bdbb39cb4c511fd55','9de1eed6ce77f40baa83a45f99c684cb','6a560653bf19c343d410b376553304ad','2c5c6c59f1fd9efda34327cda987cc7a','e4dfe85f2fc744d86e7bcff84fa91b90') Group by PresentationUniqueKey ORDER BY DateCreated DESC,SortName DESC,ProductionYear DESC LIMIT 80"
[2023-11-28 00:46:40.753 -04:00] [DBG] [55] Emby.Server.Implementations.Data.SqliteItemRepository: "GetItemList" query time (slow): 28.4942ms. Query: "select type,data,EndDate,ChannelId,CommunityRating,IndexNumber,Width,Height,Name,Path,PremiereDate,ParentIndexNumber,ProductionYear,OfficialRating,ForcedSortName,RunTimeTicks,Size,DateModified,guid,ParentId,Audio,IsInMixedFolder,PrimaryVersionId,Album,CriticRating,IsVirtualItem,SeriesName,SeasonName,SeasonId,SeriesId,ProviderIds,TotalBitrate,ExtraType,ExternalId,OwnerId,UserDatas.UserId,UserDatas.lastPlayedDate,UserDatas.playbackPositionTicks,UserDatas.playcount,UserDatas.isFavorite,UserDatas.played,UserDatas.rating from TypedBaseItems A left join UserDatas on UserDataKey=UserDatas.Key And (UserId=@UserId) where type=@type AND (ParentIndexNumber<>@ParentIndexNumberNotEquals or ParentIndexNumber is null) AND (played=@IsPlayed) AND SeriesPresentationUniqueKey=@SeriesPresentationUniqueKey Group by PresentationUniqueKey ORDER BY ParentIndexNumber DESC,IndexNumber DESC LIMIT 1"
Are there any other logs that I can provide, maybe from the Android client? I'm not sure how to get those logs, but if anyone can point me to the correct documentation, I can try get those. This *feels* like a client issue, but I'm not sure why either component would be having this issue unless it was something to do with a particular piece of media that was added since the last time it worked. I have tried removing the latest few items that were added, but unfortunately, that didn't help.
Ideas or debugging suggestions are welcome!