From 496dce85c558f6cb1c1647d0a12f1a76fdebd325 Mon Sep 17 00:00:00 2001 From: Alexander Schwartz Date: Tue, 11 Jun 2024 19:09:41 +0200 Subject: [PATCH] Migration of sessions in KC25 should run only on migration, not on imports Closes #30351 Signed-off-by: Alexander Schwartz --- .../org/keycloak/migration/migrators/MigrateTo25_0_0.java | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/model/storage-private/src/main/java/org/keycloak/migration/migrators/MigrateTo25_0_0.java b/model/storage-private/src/main/java/org/keycloak/migration/migrators/MigrateTo25_0_0.java index 11a0cded4d3a..4888ea8a0eb4 100644 --- a/model/storage-private/src/main/java/org/keycloak/migration/migrators/MigrateTo25_0_0.java +++ b/model/storage-private/src/main/java/org/keycloak/migration/migrators/MigrateTo25_0_0.java @@ -45,6 +45,12 @@ public ModelVersion getVersion() { @Override public void migrate(KeycloakSession session) { + // Can be null during store model tests. + if (session.sessions() != null) { + // Offer a migration for persistent user sessions which was added in KC25. + session.sessions().migrate(VERSION.toString()); + } + session.realms().getRealmsStream().forEach(realm -> migrateRealm(session, realm)); } @@ -66,8 +72,6 @@ protected void migrateRealm(KeycloakSession session, RealmModel realm) { LOG.warnf("Client scope '%s' already exists in the realm '%s'. Please migrate this realm manually if you need basic claims in your tokens.", basicScope.getName(), realm.getName()); } - // offer a migration for persistent user sessions which was added in KC25 - session.sessions().migrate(VERSION.toString()); } }