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