From 6c0def737d7e8d3f7f0184cf552aa9e065cbef8a Mon Sep 17 00:00:00 2001 From: jvyden Date: Sun, 13 Jul 2025 18:21:56 -0400 Subject: [PATCH 1/2] Add migration to bump level ids by 200,000,000 --- .../Migrations/20250713213830_BumpLevelIds.cs | 64 +++++++++++++++++++ 1 file changed, 64 insertions(+) create mode 100644 Refresh.Database/Migrations/20250713213830_BumpLevelIds.cs diff --git a/Refresh.Database/Migrations/20250713213830_BumpLevelIds.cs b/Refresh.Database/Migrations/20250713213830_BumpLevelIds.cs new file mode 100644 index 00000000..7db3c87e --- /dev/null +++ b/Refresh.Database/Migrations/20250713213830_BumpLevelIds.cs @@ -0,0 +1,64 @@ +using Microsoft.EntityFrameworkCore.Infrastructure; +using Microsoft.EntityFrameworkCore.Migrations; + +#nullable disable + +namespace Refresh.Database.Migrations +{ + /// + [Migration("20250713213830_BumpLevelIds")] + [DbContext(typeof(GameDatabaseContext))] + public partial class BumpLevelIds : Migration + { + private void AddForeignKey(MigrationBuilder migration, string name, string table, string column = "LevelId") + { + migration.Sql($"UPDATE \"{table}\" SET \"{column}\" = \"{column}\" + 200000000"); + migration.AddForeignKey(name, table, column, "GameLevels", principalColumn: "LevelId", onDelete: ReferentialAction.Cascade); + } + + /// + protected override void Up(MigrationBuilder migration) + { + migration.Sql("SELECT setval('\"GameLevels_LevelId_seq\"', nextval('\"GameLevels_LevelId_seq\"') + 200000000);"); + + migration.DropForeignKey("FK_FavouriteLevelRelations_GameLevels_LevelId", "FavouriteLevelRelations"); + migration.DropForeignKey("FK_GameChallenges_GameLevels_LevelId", "GameChallenges"); + migration.DropForeignKey("FK_GameContests_GameLevels_TemplateLevelLevelId", "GameContests"); + migration.DropForeignKey("FK_GameLevelComments_GameLevels_LevelId", "GameLevelComments"); + migration.DropForeignKey("FK_GamePhotos_GameLevels_LevelIdKey", "GamePhotos"); + migration.DropForeignKey("FK_GameReviews_GameLevels_LevelId", "GameReviews"); + migration.DropForeignKey("FK_GameSkillRewards_GameLevels_LevelId", "GameSkillRewards"); + migration.DropForeignKey("FK_GameSubmittedScores_GameLevels_LevelId", "GameScores"); + migration.DropForeignKey("FK_LevelPlaylistRelations_GameLevels_LevelId", "LevelPlaylistRelations"); + migration.DropForeignKey("FK_PlayLevelRelations_GameLevels_LevelId", "PlayLevelRelations"); + migration.DropForeignKey("FK_QueueLevelRelations_GameLevels_LevelId", "QueueLevelRelations"); + migration.DropForeignKey("FK_RateLevelRelations_GameLevels_LevelId", "RateLevelRelations"); + migration.DropForeignKey("FK_TagLevelRelations_GameLevels_LevelId", "TagLevelRelations"); + migration.DropForeignKey("FK_UniquePlayLevelRelations_GameLevels_LevelId", "UniquePlayLevelRelations"); + + migration.Sql("UPDATE \"GameLevels\" SET \"LevelId\" = \"LevelId\" + 200000000"); + + AddForeignKey(migration, "FK_FavouriteLevelRelations_GameLevels_LevelId", "FavouriteLevelRelations"); + AddForeignKey(migration, "FK_GameChallenges_GameLevels_LevelId", "GameChallenges"); + AddForeignKey(migration, "FK_GameContests_GameLevels_TemplateLevelLevelId", "GameContests", "TemplateLevelLevelId"); + AddForeignKey(migration, "FK_GameLevelComments_GameLevels_LevelId", "GameLevelComments"); + AddForeignKey(migration, "FK_GamePhotos_GameLevels_LevelIdKey", "GamePhotos", "LevelIdKey"); + AddForeignKey(migration, "FK_GameReviews_GameLevels_LevelId", "GameReviews"); + AddForeignKey(migration, "FK_GameSkillRewards_GameLevels_LevelId", "GameSkillRewards"); + AddForeignKey(migration, "FK_GameSubmittedScores_GameLevels_LevelId", "GameScores"); + AddForeignKey(migration, "FK_LevelPlaylistRelations_GameLevels_LevelId", "LevelPlaylistRelations"); + AddForeignKey(migration, "FK_PlayLevelRelations_GameLevels_LevelId", "PlayLevelRelations"); + AddForeignKey(migration, "FK_QueueLevelRelations_GameLevels_LevelId", "QueueLevelRelations"); + AddForeignKey(migration, "FK_RateLevelRelations_GameLevels_LevelId", "RateLevelRelations"); + AddForeignKey(migration, "FK_TagLevelRelations_GameLevels_LevelId", "TagLevelRelations"); + AddForeignKey(migration, "FK_UniquePlayLevelRelations_GameLevels_LevelId", "UniquePlayLevelRelations"); + } + + /// + protected override void Down(MigrationBuilder migration) + { + migration.Sql("SELECT setval('GameLevels_LevelId_seq', nextval('GameLevels_LevelId_seq') - 200000000);"); + migration.Sql("UPDATE \"GameLevels\" SET \"LevelId\" = \"LevelId\" - 200000000"); + } + } +} From 5c703f7372e7f55f407ab450fc99dab7bd29d906 Mon Sep 17 00:00:00 2001 From: jvyden Date: Sun, 13 Jul 2025 18:25:31 -0400 Subject: [PATCH 2/2] Add migration to bump level ids for recent activity events --- .../Migrations/20250713213830_BumpLevelIds.cs | 3 +-- ...0713222256_BumpLevelIdsInRecentActivity.cs | 25 +++++++++++++++++++ 2 files changed, 26 insertions(+), 2 deletions(-) create mode 100644 Refresh.Database/Migrations/20250713222256_BumpLevelIdsInRecentActivity.cs diff --git a/Refresh.Database/Migrations/20250713213830_BumpLevelIds.cs b/Refresh.Database/Migrations/20250713213830_BumpLevelIds.cs index 7db3c87e..c1e4d6db 100644 --- a/Refresh.Database/Migrations/20250713213830_BumpLevelIds.cs +++ b/Refresh.Database/Migrations/20250713213830_BumpLevelIds.cs @@ -57,8 +57,7 @@ protected override void Up(MigrationBuilder migration) /// protected override void Down(MigrationBuilder migration) { - migration.Sql("SELECT setval('GameLevels_LevelId_seq', nextval('GameLevels_LevelId_seq') - 200000000);"); - migration.Sql("UPDATE \"GameLevels\" SET \"LevelId\" = \"LevelId\" - 200000000"); + } } } diff --git a/Refresh.Database/Migrations/20250713222256_BumpLevelIdsInRecentActivity.cs b/Refresh.Database/Migrations/20250713222256_BumpLevelIdsInRecentActivity.cs new file mode 100644 index 00000000..080fc7ce --- /dev/null +++ b/Refresh.Database/Migrations/20250713222256_BumpLevelIdsInRecentActivity.cs @@ -0,0 +1,25 @@ +using Microsoft.EntityFrameworkCore.Infrastructure; +using Microsoft.EntityFrameworkCore.Migrations; + +#nullable disable + +namespace Refresh.Database.Migrations +{ + /// + [DbContext(typeof(GameDatabaseContext))] + [Migration("20250713222256_BumpLevelIdsInRecentActivity")] + public partial class BumpLevelIdsInRecentActivity : Migration + { + /// + protected override void Up(MigrationBuilder migration) + { + migration.Sql("UPDATE \"Events\" SET \"StoredSequentialId\" = \"StoredSequentialId\" + 200000000 WHERE \"StoredDataType\" = 1"); + } + + /// + protected override void Down(MigrationBuilder migration) + { + migration.Sql("UPDATE \"Events\" SET \"StoredSequentialId\" = \"StoredSequentialId\" - 200000000 WHERE \"StoredDataType\" = 1"); + } + } +}