Sometimes you stumble across a really valuable tip and just have to share it. I just got one such tip from Loftux in the IRC chat this morning:
Back when we upgraded from 3.4.x to 4.0.2.9, we had a bunch of problems with getting our production database to upgrade properly. Thanks to some really great help from Alfresco’s support team (thanks Kyle!), we were able to successfully manipulate the database to allow the upgrade to complete successfully. The worrisome thing about this is that the databases for our development and QA instances upgraded without a hitch.
Because of that, we learned to always test a major upgrade on a copy of the production database and repository. The only hard thing about that is that making a copy of our nearly-3-TB production repository to be able to test an upgrade is a real pain. This is where the tip from Loftux comes in. He wrote:
Upgrade tip: Create a copy instance from backup with only the database, skip content (alf_data). Then in alfresco-global.properties set system.bootstrap.config_check.strict=false. Then you can run the upgrade and test that all the patches work without having to copy all your content data. This is an important first test. Your instance will not be usable (you have no content), but saves you the trouble copying all that file content.
Thanks Loftux!