Anyone that spends time with ConfigMgr knows that it’s an amazingly resilient product, and not only that, upgrades tend to go without a hitch.
I needed to upgrade one of my old labs to test new functionality, but when I restored it to a state that I wanted to start from (namely running ConfigMgr 1910), the upgrade wouldn’t proceed due to lack of space on the C:\ drive, and that was because SQL stored the ConfigMgr database and logs in the default path and it had grown in size.
No big deal I thought, I’ll just detach the DB and move it to another drive, do a site reset and be done with it.
After initiating the upgrade I saw it failed the prerequisites check again shortly after, so I was interested in finding out why. Did I make a mistake with the SQL permissions ?
The Update Pack Installation Status showed what was causing the problem.
The interesting thing here is that even though I already detached the DB, did a site reset and reset SQL permissions, that it was bombing out on SQL Server requirements.
A quick look at the ConfigMgrSetup.log in the root of C:\ gave me more info.
And there it was, not only was there an error with the SQL Server configuration, but the ConfigMgrPrereq.log file also told me how to fix it.
Here’s the error:
ERROR: Invalid configuration for 'Service broker is enabled', to remediate: Use ALTER DATABASE to set ENABLE_BROKER $$<Configuration Manager Prereq>
Armed with this knowledge I started SQL Server Management Studio and used the following Query.
alter database [<dbname>] set enable_broker with rollback immediate;
As shown here. The ‘with rollback immediate’ allows it to complete regardless of the transactions that are pending, otherwise it’ll probably run the query forever.
Don’t believe me ? try it. 😛
After doing this I was able to upgrade the site successfully ! I have to say a big thanks to the Engineering team at Microsoft for not only clearly pointing out what was wrong, but explaining how to fix it (in the Logs).
Side note, I’ve had a similar problem before, and I even blogged about it then too !