I need to make a test copy of my Nexus Repository Manager
(I want to test upgrading to a new version and conduct other tests)
I have:
1. A virtual machine with Nexus 3.78.2-04
2. 5 BLOB Store volumes
3. An external PostgreSQL instance with the Nexus database
I create a copy of the virtual machine, a copy of the BLOB volumes, and a copy of the Nexus database.
I configure the nexus.properties file to use the new database instance.
I start Nexus and get this error:
INFO [jetty-main-1] *SYSTEM org.sonatype.nexus.extender.guice.NexusLifecycleManager - Start RESTORE
INFO [jetty-main-1] *SYSTEM org.sonatype.nexus.extender.guice.NexusLifecycleManager - Start UPGRADE
ERROR [jetty-main-1] *SYSTEM org.sonatype.nexus.upgrade.datastore.internal.UpgradeManagerImpl - Missing migrations: [SearchCapabilityStep_2_16, TrustedCertificatesMigrationStep_2_17, NodeHeartBeatMigrationStep_2_17_1, ConanCleanupMigrationStep_2_18]
ERROR [jetty-main-1] *SYSTEM org.sonatype.nexus.upgrade.datastore.internal.UpgradeManagerImpl - Missing migrations: [SearchCapabilityStep_2_16, TrustedCertificatesMigrationStep_2_17, NodeHeartBeatMigrationStep_2_17_1, ConanCleanupMigrationStep_2_18]
ERROR [jetty-main-1] *SYSTEM org.sonatype.nexus.upgrade.datastore.internal.UpgradeServiceImpl - Failed transition: NEW -> STARTED
org.sonatype.nexus.upgrade.datastore.UpgradeException: The database appears to be from a later version of Nexus Repository
Where does this error come from? Why doesn’t this issue occur in PROD — same Nexus version, same configuration, same database?
When I check the table flyway_schema_history via psql, I see these rows:
77 | 2.16 | SearchCapabilityStep_2_16 | JDBC | org.sonatype.nexus.upgrade.datastore.internal.NexusJavaMigration | | nexus | 2026-02-12 19:21:32.094611 | 108 | t
78 | 2.17 | TrustedCertificatesMigrationStep_2_17 | JDBC | org.sonatype.nexus.upgrade.datastore.internal.NexusJavaMigration | | nexus | 2026-02-12 19:21:32.210998 | 169 | t
79 | 2.17.1 | NodeHeartBeatMigrationStep_2_17_1 | JDBC | org.sonatype.nexus.upgrade.datastore.internal.NexusJavaMigration | | nexus | 2026-02-12 19:21:32.385536 | 1 | t
80 | 2.18 | ConanCleanupMigrationStep_2_18 | JDBC | org.sonatype.nexus.upgrade.datastore.internal.NexusJavaMigration | | nexus | 2026-02-12 19:21:32.39139 | 6 | t
These migrations are not new (none are above version 3.78). Why is the error occurring?
According to what I found online:
SearchCapabilityStep_2_16 — Nexus 3.74.0
Introduced in March 2024
Part of search capability updates
TrustedCertificatesMigrationStep_2_17 — Nexus 3.75.0
April 2024
Migration for the trusted certificates system
NodeHeartBeatMigrationStep_2_17_1 — Nexus 3.75.1
April–May 2024
Update to the cluster node heartbeat mechanism
ConanCleanupMigrationStep_2_18 — Nexus 3.76.0
May–June 2024
Cleanup improvements for the Conan package manager