For upgrading from IDM 6.0 to 6.5 with a JDBC repo (MySQL), problems were found with schema changes and documented update procedure. This issue will cover the scenario of using each 6.0 JDBC database, with the default JSON configuration for 6.5 (no migration or customization), and then confirm that the database schema is property upgraded with scripts.
The general test/upgrade procedure is as follows (more steps needed for config migrations, but this assumes we are only upgrading with an existing 6.0 database instance):
1. Install fresh IDM 6.0 with a given external repo backend
2. Shutdown IDM
3. Extract IDM 6.5 directory, and configure it for use with the specific database
4. Copy truststore/keystore files in /security directory from 6.0 to 6.5
5. Clear all configobjects related tables, or else their old config will get loaded with many errors
MySQL, for example:
6. Run all schema upgrade scripts for the database in bin/update/scripts directory
7. Some altered roles tables will not be populated with data yet, so you will need to add the following entry to script/access.js in order to run the update scripts
8. Start IDM 6.5 (should be no errors!!!)
9. Execute the upgrade script endpoints.
The two following endpoints are documented in the release notes:
This is the script that populates the roles-related data:
10. Undo the change made above to script/access.js
Another step that I tested was when running 6.0, I changed the openidm-admin user's password, then followed the above steps to verify that those credentials still worked properly when updating to 6.5: