Repository navigation
fix: addressing manual migration issues due to TEST - #54580
Conversation
Unreported flaky test detectedIf the flaky tests below are affected by the changes, please review and update the changes accordingly. Otherwise, a maintainer should report the flaky tests prior to merging the PR. org.keycloak.testsuite.adapter.servlet.SAMLServletAdapterTest#salesPostEncTest |
There was a problem hiding this comment.
🔵 Needs a closer look
The shared Liquibase migrations need runtime validation of populated upgrades across supported databases, since the new parity tests cover only empty databases and do not verify organization data preservation or deferred-index upgrades.
No open issues 🎉
Review effort: Balanced
I have tests for that locally, but they seem fairly large for the amount of coverage that they provide - they require for example quite a lot of setup to put the server into a pre-26.8 state with the exact organization data that would highlight the issue. |
closes: keycloak#54404 Signed-off-by: Steve Hawkins <shawkins@redhat.com>
Signed-off-by: Steve Hawkins <shawkins@redhat.com>
There was a problem hiding this comment.
🔵 Needs a closer look
Populated upgrades need cross-database runtime validation because the new empty-database tests skip organization backfills and do not cover persisted-history preconditions or threshold-skipped indexes.
No open issues 🎉
Review effort: Balanced
|
@ahus1 do you want to take a look as well? |
ahus1
left a comment
There was a problem hiding this comment.
Hello @shawkins, thanks for investigating this rabbit hole!
I'm confident that the changes you did are valid. I recently added the index checker that still works (based on its own test), and also does not show and indexes created afterwards after a fresh startup.
So I assume all index changes are valid.
Looking through the code, I see a lot of tests. I assume testScriptProducesTheSchemaOfTheAutomaticMigration will prevent future problems?
It might be worth adding a readme on best practices / how to write changelogs correctly either here or in a follow-up.
OK to merge.
Yes when starting from an empty database. Since that is h2 specific, similar testing exists in the database specific dist tests. |
the usage of TEST in manual mode can lead to inconsistent scripts if the preconditions or task logic are relying on existing state
closes: #54404