From 342846e4fcd9645680c69f164f474d549414c963 Mon Sep 17 00:00:00 2001 From: Shadowghost Date: Sun, 18 Jan 2026 17:39:48 +0100 Subject: Add ImageInfo index --- .../BaseItemImageInfoConfiguration.cs | 24 ++++++++++++++++++++++ 1 file changed, 24 insertions(+) create mode 100644 src/Jellyfin.Database/Jellyfin.Database.Implementations/ModelConfiguration/BaseItemImageInfoConfiguration.cs (limited to 'src/Jellyfin.Database/Jellyfin.Database.Implementations/ModelConfiguration') diff --git a/src/Jellyfin.Database/Jellyfin.Database.Implementations/ModelConfiguration/BaseItemImageInfoConfiguration.cs b/src/Jellyfin.Database/Jellyfin.Database.Implementations/ModelConfiguration/BaseItemImageInfoConfiguration.cs new file mode 100644 index 0000000000..e835931b5f --- /dev/null +++ b/src/Jellyfin.Database/Jellyfin.Database.Implementations/ModelConfiguration/BaseItemImageInfoConfiguration.cs @@ -0,0 +1,24 @@ +using Jellyfin.Database.Implementations.Entities; +using Microsoft.EntityFrameworkCore; +using Microsoft.EntityFrameworkCore.Metadata.Builders; + +namespace Jellyfin.Database.Implementations.ModelConfiguration; + +/// +/// FluentAPI configuration for the BaseItemImageInfo entity. +/// +public class BaseItemImageInfoConfiguration : IEntityTypeConfiguration +{ + /// + public void Configure(EntityTypeBuilder builder) + { + builder.HasKey(e => e.Id); + builder.HasOne(e => e.Item).WithMany(e => e.Images).HasForeignKey(e => e.ItemId); + + // Index for efficient lookups and deletes by ItemId + builder.HasIndex(e => e.ItemId); + + // Composite index for filtering by item and image type + builder.HasIndex(e => new { e.ItemId, e.ImageType }); + } +} -- cgit v1.2.3