| 
					
				 | 
			
			
				@@ -62,30 +62,40 @@ namespace Emby.Server.Implementations.Library.Validators 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     continue; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                var movies = _libraryManager.GetItemList(new InternalItemsQuery 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    MediaTypes = new string[] { MediaType.Video },  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    IncludeItemTypes = new[] { nameof(Movie) }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    IsVirtualItem = false, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    OrderBy = new[] { (ItemSortBy.SortName, SortOrder.Ascending) }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    Parent = library, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    Recursive = true 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                }); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                var startIndex = 0; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                var pagesize = 1000; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                foreach (var m in movies) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                while (true) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    if (m is Movie movie && !string.IsNullOrEmpty(movie.CollectionName)) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    var movies = _libraryManager.GetItemList(new InternalItemsQuery 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        MediaTypes = new string[] { MediaType.Video }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        IncludeItemTypes = new[] { nameof(Movie) }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        IsVirtualItem = false, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        OrderBy = new[] { (ItemSortBy.SortName, SortOrder.Ascending) }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        Parent = library, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        StartIndex = startIndex, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        Limit = pagesize, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        Recursive = true 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    }); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    startIndex += pagesize; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    if (!movies.Any()) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        break; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    foreach (var m in movies) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                        if (collectionNameMoviesMap.TryGetValue(movie.CollectionName, out var movieList)) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        if (m is Movie movie && !string.IsNullOrEmpty(movie.CollectionName)) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                         { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                            if (!movieList.Contains(movie.Id)) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            if (collectionNameMoviesMap.TryGetValue(movie.CollectionName, out var movieList)) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                             { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                                 movieList.Add(movie.Id); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                             } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                        else 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                        { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                            collectionNameMoviesMap[movie.CollectionName] = new HashSet<Guid> { movie.Id }; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            else 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                collectionNameMoviesMap[movie.CollectionName] = new HashSet<Guid> { movie.Id }; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                         } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 } 
			 |