CRITICAL FIX: Also disable database migrations in JellyfinMigrationService - was running InitialCreate

This commit is contained in:
2026-03-08 10:50:00 -04:00
parent 2209f0e1c0
commit ac1c2c6c82
2 changed files with 12 additions and 1 deletions
@@ -111,12 +111,15 @@ internal class JellyfinMigrationService
var dbContext = await _dbContextFactory.CreateDbContextAsync().ConfigureAwait(false);
await using (dbContext.ConfigureAwait(false))
{
// DISABLED for .NET 11 preview: Database creation handled by PostgresDatabaseProvider using SQL scripts
/*
var databaseCreator = dbContext.Database.GetService<IDatabaseCreator>() as IRelationalDatabaseCreator
?? throw new InvalidOperationException("Jellyfin does only support relational databases.");
if (!await databaseCreator.ExistsAsync().ConfigureAwait(false))
{
await databaseCreator.CreateAsync().ConfigureAwait(false);
}
*/
var historyRepository = dbContext.GetService<IHistoryRepository>();
@@ -235,13 +238,16 @@ internal class JellyfinMigrationService
var dbContext = await _dbContextFactory.CreateDbContextAsync().ConfigureAwait(false);
await using (dbContext.ConfigureAwait(false))
{
// DISABLED for .NET 11 preview: Database creation handled by PostgresDatabaseProvider using SQL scripts
// Ensure the migration history table exists before querying it
/*
var databaseCreator = dbContext.Database.GetService<IDatabaseCreator>() as IRelationalDatabaseCreator;
if (databaseCreator is not null && !await databaseCreator.ExistsAsync().ConfigureAwait(false))
{
logger.LogInformation("Database does not exist, creating...");
await databaseCreator.CreateAsync().ConfigureAwait(false);
}
*/
var historyRepository = dbContext.GetService<IHistoryRepository>();
@@ -256,12 +262,17 @@ internal class JellyfinMigrationService
.ToArray();
(string Key, InternalDatabaseMigration Migration)[] pendingDatabaseMigrations = [];
// DISABLED for .NET 11 preview: EF Core database migrations don't work with preview SDK
// Database schema is initialized from SQL scripts in PostgresDatabaseProvider instead
/*
if (stage is JellyfinMigrationStageTypes.CoreInitialisation)
{
pendingDatabaseMigrations = migrationsAssembly.Migrations.Where(f => appliedMigrations.All(e => e.MigrationId != f.Key))
.Select(e => (Key: e.Key, Migration: new InternalDatabaseMigration(e, dbContext)))
.ToArray();
}
*/
(string Key, IInternalMigration Migration)[] pendingMigrations = [.. pendingCodeMigrations, .. pendingDatabaseMigrations];
logger.LogInformation("There are {Pending} migrations for stage {Stage}.", pendingMigrations.Length, stage);