From 0aeee8233bd0e602bd4523125d2c44b847d3fc7a Mon Sep 17 00:00:00 2001 From: Shadowghost Date: Fri, 12 Jun 2026 08:09:10 +0200 Subject: Fix performance --- .../Library/UserDataManager.cs | 50 +++++++++++++++++++--- 1 file changed, 44 insertions(+), 6 deletions(-) (limited to 'Emby.Server.Implementations/Library') diff --git a/Emby.Server.Implementations/Library/UserDataManager.cs b/Emby.Server.Implementations/Library/UserDataManager.cs index 4fda853bb1..bedaacee33 100644 --- a/Emby.Server.Implementations/Library/UserDataManager.cs +++ b/Emby.Server.Implementations/Library/UserDataManager.cs @@ -259,15 +259,53 @@ namespace Emby.Server.Implementations.Library ArgumentNullException.ThrowIfNull(user); var result = new Dictionary(); + + // Candidate primaries: a directly queried version (PrimaryVersionId set) keeps its own data. + // Linked alternates are already known in memory; only the local-alternate existence check + // would otherwise hit the database (one query per item via Video.HasLocalAlternateVersions), + // so collect those ids and resolve them all in a single query below. + List