Exchange: “BuildToBuildUpgrade” Error

KB ID 0001436

Problem

In the middle of an Exchange upgrade I got a bit stuck with the following error;

“Setup previously failed while performing the action “”BuildToBuildUpgrade” You can’t resume setup by performing the action “Install”.

There are a couple of variations on this error as well, you can also see either of the following;

“Setup previously failed while performing the action “Install” You can’t resume setup by performing the action “BuildToBuildUpgrade”.

OR

“Setup previously failed while performing the action “Uninstall” You can’t resume setup by performing the action “Uninstall”.

That last of those I’ve covered before here.

Solution

As you are probably already aware this is because either an install/upgrade/uninstall has failed, and you are attempting to get the process going again, (or someone else has, and left it ‘broken’!)

This is happening because as Exchange performs installs/upgrades/uninstalls it creates some values in the registry as it progresses. And if you attempt to restart the process, it can see these entries, and that’s what causes the error.

So you simply need to remove them;

Open the registry editor (Windows Key+R > Regedit {Enter}).

Where you navigate to, depends on your version of Exchange;

[box]

HKLM\Software\Microsoft\ExchangeServer\v14\ (Exchange 2010)

HKLM\Software\Microsoft\ExchangeServer\v15\ (Exchange 2016 and 2013)

[/box]

Within all the sub keys (i.e. below v14 or v15) there will be a ‘Value’ thats within the role that was being installed/upgraded/uninstalled, when the process ‘fell-over’. That value will be called ‘Action‘ locate and delete it.

Also be on the lookout for a value called ‘Watermark’ if you see that, remove it also, and Exchange will start a fresh, install/upgrade/uninstall.

When you have checked all the sub keys, restart your install/upgrade/uninstall.

Related Articles, References, Credits, or External Links

Exchange – Setup previously failed while performing the action ‘Uninstall’

Exchange Update Fails: ‘Cannot find Arbitration Mailbox’

KB ID 0001435

Problem

Last night was a late one, Exchange 2016 update (CU9) failed to install and left the server in an unusable state.

Relevant Part(s) of the Error

[box]

-----Output Removed For the Sake of Brevity-----
        $name = "SystemMailbox{bb558c35-97f1-4cb9-8ff7-d53741dc928c}";
-----Output Removed For the Sake of Brevity-----
        Write-ExchangeSetupLog -Info ("Cannot find arbitration mailbox with name=$name.");
          }
          }
          else
          {
        Write-ExchangeSetupLog -Info "Skipping creating E15 System Mailbox because of insufficient permission."
-----Output Removed For the Sake of Brevity-----

[/box]

A Full copy of the error text can be seen here Exchange-Upgrade-Arbitration-Error

 

Solution

A Search of the forums told me this was common, and to simply run ‘Setup.exe /PrepareAD /IAcceptExchangeServerLicenseTerms‘ and this would fix the problem, However when I tried I got;

“Setup previously failed while performing the action “BuildToBuildUpgrade” You can’t resume setup by performing the action “Install”.

Even attempting to run the command from other DC’s, and the ‘Root Domain’ failed.

Note: I am aware, you can remove the ‘Action’ and ‘Watermark’ Registry keys to try and bypass this error, (see link at the bottom of the page), but that didn’t fix the problem.

Credit To Microsoft Support: This problem was very similar to one I had two years ago (here). The Arbitration mailboxes were there, but some were NOT ASSOCIATED with a mailbox database. The following command showed this;

[box]

Get-Mailbox -Arbitration | fl Database,Name

[/box]

Note: If you see nothing , check this article.

This showed, of the 7 arbitration mailboxes, 5 of them had a problem, and displayed like so;

[box]

WARNING: The object SystemMailbox{bb558c35-97f1-4cb9-8ff7-d53741dc928c} has been corrupted, and it’s in
an inconsistent state. The following validation errors happened:
WARNING: Database is mandatory on UserMailbox.
WARNING: Database is mandatory on UserMailbox.

[/box]

There is no ‘Database’ value for these, and it’s required, for a user mailbox, (Even a system mailbox, is still a user mailbox!). So these were then associated with a mailbox database, (it does not matter which one, if you have multiple databases). Like so;

[box]

Get-Mailbox -Arbitration | Set-Mailbox -Arbitration -Database "Database-Name"

[/box]

After Clicking ‘Yes” or ‘All’ a few times, re-run the original command, and all the Arbitration mailboxes should now look healthier, like so;

Now, start the Exchange upgrade again, and it should recover the broken install, and then complete without error. Reboot your server, and check Exchange is healthy.

 

Related Articles, References, Credits, or External Links

Massive credit and thanks to Mr Saravanan Krisha Murphy, for his patience, support, and technical skills.

Exchange: “BuildToBuildUpgrade” Error