Monthly Archives: April 2011

Exchange 2010 Management Tools Crash After Installation of KB 2449742

Applies to: Exchange 2010

The Exchange Team has been aware of a problem that impacts the Exchange management tools on servers running Exchange 2010 on Windows Server 2008 SP2 or Windows 2008 R2 RTM. Windows 2008 R2 SP1 systems do not seem to be impacted.

The symptoms of the problem are:

  • Exchange Management Shell does not start
  • Exchange Management Console does not start
  • There might be a crash in Exchange Mailbox Replication Service

The following events could be logged in the Application event log:

  • Event ID: 1023
    Source: .NET Runtime
    Event ID: 1023
    Level: Error
    Description: .NET Runtime version 2.0.50727.5653 – Fatal Execution Engine Error (000007FEF9216D36) (80131506)
  • Event ID: 1000
    Source: Application Error
    Level: Error
    Description: Faulting application PowerShell.exe, version 6.0.6002.18111, time stamp 0x4acfacc6, faulting module mscorwks.dll, version 2.0.50727.5653, time stamp 0x4d54a59c, exception code 0xc0000005, fault offset 0x00000000001d9e19, process id 0x%9, application start time 0x%10.

The failures start after the .NET security update KB 2449742 (MS11-028) is installed.

UPDATE: The Exchange team has identified the problem and has a solution for customers that were impacted by it.

Please see the following KB article for the resolution of this problem:

http://support.microsoft.com/kb/2540222

Exchange 2010 Purge Disconnected Mailboxes

Applies to: Exchange 2010

There is sometimes the need to permanently delete disconnected mailboxes. For example, if you moved mailboxes between databases, the previous database will still hold a copy of the moved mailboxes (by default for 30 days). If you’re tight on disk space, you might want to delete the disconnected mailboxes manually.

Note: Your Exchange database file size will not decrease right-aways, however, the Exchange Mailbox Server(s) will immediately have free space inside the .edb file for new emails.

Step 1: Retrieve List of Disconnected Mailboxes

Get-MailboxDatabase | Get-MailboxStatistics | where {$_.DisconnectReason -eq “SoftDeleted”} | Select DisplayName,ServerName,Database,ItemCount

Step 2a: Permanently Delete an Individual Disconnected Mailbox

Remove-StoreMailbox -Database (Database) -Identity (useralias) -MailboxState SoftDeleted

Step 2b: Permanently Delete all Disconnected Mailboxes across all Databases (enter below commands into a .ps1 file before executing)

$var1 = Get-MailboxDatabase | Get-MailboxStatistics | where {$_.DisconnectReason -eq “SoftDeleted”}

$var1 | foreach {Remove-StoreMailbox -Database $_.database -Identity $_.mailboxguid -MailboxState SoftDeleted}

Script for Available Free Space Within Exchange Databases

Applies to: Exchange 2010

This Exchange Management Shell Script returns the available free space (whitespace) within your mailbox databases. This may by useful to know when you purged disconnected mailboxes.

Get-MailboxDatabase -status | fl Name,AvailableNewMailboxSpace

The result will look similar to this.

Name : Mailbox Database 1
AvailableNewMailboxSpace : 14.41 MB (15,106,048 bytes)

Name : Mailbox Database 2
AvailableNewMailboxSpace :
5.251 GB (5,638,553,600 bytes)

Name : Mailbox Database 3
AvailableNewMailboxSpace : 142.3 MB (149,258,240 bytes)