<?xml version="1.0" encoding="utf-8"?>
<rss xmlns:atom="http://www.w3.org/2005/Atom" xmlns:sy="http://purl.org/rss/1.0/modules/syndication/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
  version="2.0">
  <channel>
    <title>John Bailey (EXCHANGE)</title>
    <atom:link
      href="https://docs.microsoft.com/archive/blogs/johnbai/feed.xml"
      rel="self"
      type="application/rss+xml" />
    <link>https://docs.microsoft.com/archive/blogs/johnbai/feed.xml</link>
    <description>Microsoft | Senior Service Engineer | Exchange Online</description>
    <lastBuildDate>Wed, 01 Aug 2018 14:00:31 GMT</lastBuildDate>
    <language>en-US</language>
    <sy:updatePeriod>hourly</sy:updatePeriod>
    <sy:updateFrequency>1</sy:updateFrequency>
    <item>
      <title>Netlogon: Cross-Forest Delayed Authentication Requests Cause Subsequent (and Continuous) Authentication Failures</title>
      <link>https://docs.microsoft.com/archive/blogs/johnbai/netlogon-cross-forest-delayed-authentication-requests-cause-subsequent-and-continuous-authentication-failures</link>
      <pubDate>Fri, 29 Dec 2017 11:22:23 GMT</pubDate>
      <dc:creator><![CDATA[John Bailey [MSFT]]]></dc:creator>
      <guid
        isPermaLink="false">https://blogs.technet.microsoft.com/johnbai/?p=1105</guid>
      <description><![CDATA[One of the longest debugging experiences I've ever had to debug, so far, in Exchange was a code bug...]]></description>
      <content:encoded><![CDATA[One of the longest debugging experiences I've ever had to debug, so far, in Exchange was a code bug that exists in the Netlogon code. I hope to cover what this bug was, how it manifested, and the fix that was implemented by the Windows developer to resolve the issue. So, this is going to be a long one....

<strong>Picture (Worth 1,000 Words)</strong>
<a href="https://msdnshared.blob.core.windows.net/media/2017/12/NTLM_RPC_Auth_2.png"><img src="https://msdnshared.blob.core.windows.net/media/2017/12/NTLM_RPC_Auth_2-300x169.png" alt="" width="300" height="169" class="alignnone size-medium wp-image-1095" /></a>

<strong>Basics</strong>
Netlogon sessions use RPC (remote-procedure call) sessions with domain controllers to communicate authentication requests to domains. In the cases of cross-forest authentication requests, regardless of the type of trust created (e.g.: one-way transitive, one-way intransitive, etc.), the cross-forest authentication requests are forwarded (via the trust) to the responsible domain. In this case, the responsible domains exist in the customer's on-premises environments.

So, in the above example, you'll see that the client communicates with the Café server. During authentication, the Café passes the request to the managed domain controller. The managed domain controller will see the trust and communicate the authentication request across the trust and receive only an NT status response back for the request from the customer's domain controllers.

<strong>When Repro Cometh</strong>
The condition that causes repro to start occurring is when the local domain controller (in this case, the managed domain controller in the illustration above) is awaiting a response from the customer's domain controller for an authentication request. In the authentication pipeline, if this request times-out, it's considered a re-triable exception - which is important for later. Because this exception is retriable, a the Café server doesn't consider that the authentication request has failed. Also, during this same time, the Café server may build a new Netlogon session with a new domain controller, which is where our problem begins to surface. 

The Netlogon code has a single object reference for the domain controller's name for the current Netlogon session on the current RPC session it should be using. (If you're familiar with native/unmanaged code, the reference to the domain controller's name is a pointer to a <a href="https://msdn.microsoft.com/en-us/library/windows/desktop/aa367308(v=vs.85).aspx" rel="noopener" target="_blank">wchar_t</a> value.) But remember: We've not disposed of the previous session because it's considered re-triable. So, since Netlogon can only communicate on one session per one RPC channel, we now have two Netlogon sessions with two RPC channels. The non-disposed of session is in red and the new session is in green in the illustration above. 

<strong>The Bug</strong>
The bug is that all subsequent authentication requests traverse the red authentication path but use the domain controller's name that was obtained from the creation of the green authentication path (the domain controller's name is supplied in the authentication request <a href="https://msdn.microsoft.com/en-us/library/cc236700.aspx" rel="noopener" target="_blank">as is defined in the specifications</a>). This causes all subsequent authentication requests to fail, no matter the destination forest, because the domain controller receives a request that it should not process.

<strong>Verifying Repro</strong>
The best way to verify the repro of this bug is to look at the Netlogon logs. If you see 0xc0000122 (STATUS_INVALID_COMPUTER_NAME), then you've hit repro of this specific condition. In Exchange, this will bubble-up via the app pool in IIS as a 401 Unauthorised (which makes chasing the bug a bit more complicated).

<strong>The Fix</strong>
Windows dev determined that the best way to fix this was to tear down both the Netlogon and RPC sessions, regardless of current status. This has been verified as working in RS3 builds of Windows 10/Server 2016 and is currently being tested in RS1 builds of Windows 10/Server 2016.]]></content:encoded>
    </item>
    <item>
      <title>Windows 10: Removing Groove, Facebook, and Other Unwanted Apps</title>
      <link>https://docs.microsoft.com/archive/blogs/johnbai/windows-10-removing-groove-facebook-and-other-unwanted-apps</link>
      <pubDate>Wed, 27 Dec 2017 11:26:27 GMT</pubDate>
      <dc:creator><![CDATA[John Bailey [MSFT]]]></dc:creator>
      <guid
        isPermaLink="false">https://blogs.technet.microsoft.com/johnbai/?p=1075</guid>
      <description><![CDATA[A few months ago, someone very dear to me asked why they couldn't remove unwanted apps from Windows...]]></description>
      <content:encoded><![CDATA[A few months ago, someone very dear to me asked why they couldn't remove unwanted apps from Windows 10 - mainly over privacy and right to decline concerns. I took it up as a sort of personal challenge to find a way to rid these apps for other people, as well, whilst I was attempting to figure out how to do this for them specifically. So, I give you the result - which is still a work in progress.

<code>
function Remove-UnwantedApps
{
# Attempt to remove Facebook (if it exists)
$facebookPkg = Get-AppxPackage -AllUsers | Where{$_.Name -like '*Facebook*'}
if($facebookPkg -ne $null)
{
Remove-AppxPackage $facebookPkg.PackageFullName -Confirm:$FALSE
}

# Attempt to remove Groove Music
$grooveMusicPkg = Get-AppxPackage -AllUsers | Where{$_.PackageFullName -ilike '*ZuneMusic*'}
if($grooveMusicPkg -ne $null)
{
Remove-AppxPackage $grooveMusicPkg.PackageFullName -Confirm:$FALSE
}

# Attempt to remove Groove Video
$grooveVideoPkg = Get-AppxPackage -AllUsers | Where{$_.Name -like '*ZuneVideo*'}
if($grooveVideoPkg -ne $null)
{
Remove-AppxPackage $grooveVideoPkg.PackageFullName -Confirm:$FALSE
}

# Attempt to remove all things XBox.
$xboxPkgs = Get-AppxPackage -AllUsers | Where{$_.Name -like '*Xbox*'}
foreach($xboxPkg in $xboxPkgs)
{
Remove-AppxPackage $xboxPkg.PackageFullName -Confirm:$FALSE
}

# Attempt to remove the Advertising apps
$advertPkgs = Get-AppxPackage -AllUsers | Where{$_.Name -like '*Microsoft.Advertising*'}
foreach($advertPkg in $advertPkgs)
{
Remove-AppxPackage $advertPkg.PackageFullName -Confirm:$FALSE
}

# Attempt to remove the Bing apps
$bingPkgs = Get-AppxPackage -AllUsers | Where{$_.Name -like '*Microsoft.Bing*'}
foreach($bingPkg in $bingPkgs)
{
Remove-AppxPackage $bingPkg.PackageFullName -Confirm:$FALSE
}

# Attempt to remove the Messaging package
$msgPkg = Get-AppxPackage -AllUsers | Where{$_.Name -like '*Microsoft.Messaging*'}
Remove-AppxPackage $msgPkg.PackageFullName -Confirm:$FALSE

# Attempt to remove Windows Store dependent packages
$storeDepPkgs = Get-AppxPackage -AllUsers | Where{$_.Dependencies -ilike '*Store*' -and $_.Name -inotlike '*WindowsStore*'}
foreach($sdPkg in $storeDepPkgs)
{
Remove-AppxPackage $sdPkg.PackageFullName -Confirm:$FALSE
}

# Attempt to remove Windows Store package
$storePkg = Get-AppxPackage -AllUsers | Where{$_.Name -ilike '*WindowsStore*'}
if($storePkg -ne $null)
{
Remove-AppxPackage $storePkg.PackageFullName -Confirm:$FALSE
}

# Attempt to disable Cortana via the Registry
$searchRegistyPath = Test-Path "HKLM:\SOFTWARE\Policies\Microsoft\Windows\Windows Search"
if($searchRegistyPath -eq $FALSE)
{
# Create the Windows Search Registry Key
New-Item -Path "HKLM:\SOFTWARE\Policies\Microsoft\Windows" -Name "Windows Search"

# Create the AllowCortana Registry Key
New-Item -Path "HKLM:\SOFTWARE\Policies\Microsoft\Windows\Windows Search" -Name "AllowCortana"

# Disable Cortana via the path
Set-Item -Path "HKLM:\SOFTWARE\Policies\Microsoft\Windows\Windows Search\AllowCortana" -Value 0
}
else
{
# Let's ensure the child item exists.
$allowCortanaRegistryPath = Test-Path "HKLM:\SOFTWARE\Policies\Microsoft\Windows\Windows Search\AllowCortana"
if($allowCortanaRegistryPath -eq $FALSE)
{
# Create the AllowCortana Registry Key
New-Item -Path "HKLM:\SOFTWARE\Policies\Microsoft\Windows\Windows Search" -Name "AllowCortana"
}

# Disable Cortana via the path
Set-Item -Path "HKLM:\SOFTWARE\Policies\Microsoft\Windows\Windows Search\AllowCortana" -Value 0
}

# Stop the Windows Search Service
$searchService = Get-Service WSearch
Stop-Service -InputObject $searchService -Force

# Attempt to remove Cortana via the App Package
$cortanaPkg = Get-AppxPackage -AllUsers | Where{$_.PackageFullName -ilike '*Cort*'}
foreach($cPkg in $cortanaPkg)
{
Remove-AppxPackage $cPkg.PackageFullName -Confirm:$FALSE
}

# Restart the system, so the registy changes take effect in the Windows Search Service's OnStart() method body.
}
</code>

Please note that this has only been tested on a local machine and, so far, validates. This can produce undesired results, such as not being able to install packages from the Windows Store in the future, since the Windows Store is removed via this script. <strong>YOU HAVE BEEN WARNED.</strong>

To use: Copy the red text into an Administrative session in PowerShell (right-click the PowerShell icon --&gt; Run as Administrator). Run 'Remove-UnwantedApps' at the new line, after the red code lines from above have been pasted into the PowerShell session. Restart your machine. Profit.]]></content:encoded>
    </item>
    <item>
      <title>O365 and Exchange 2016/Exchange 2013: Understanding the UserPhoto API</title>
      <link>https://docs.microsoft.com/archive/blogs/johnbai/o365-and-exchange-2016exchange-2013-understanding-the-userphoto-api</link>
      <pubDate>Fri, 16 Jun 2017 14:20:00 GMT</pubDate>
      <dc:creator><![CDATA[John Bailey [MSFT]]]></dc:creator>
      <guid
        isPermaLink="false">https://blogs.technet.microsoft.com/johnbai/?p=1045</guid>
      <description><![CDATA[We recently had an issue for an Enterprise Cloud customer, in which the photo was not rendering for...]]></description>
      <content:encoded><![CDATA[We recently had an issue for an Enterprise Cloud customer, in which the photo was not rendering for the user - which was uploaded to AD (and synced over via MMSSPP to the managed environment). It was sussed that the issue was customer-caused, as the customer was modifying the photo via the PowerShell commandlets and had deleted the photo. 

Despite the fact that the customer had disabled the OWA functionality to change the user photo in OWA, the customer was using the PowerShell commandlets to modify this object, which is the same interface/commands that OWA utilises behind the scenes.

To explain this behaviour in further detail: When you delete a photo from a mailbox in Exchange (or Exchange Online), it changes the UserPhotoCacheId MAPI property value to '0' and this signifies to the UserPhoto API that the photo has been deleted. When this occurs, we will not fall-back to the ADPhotoHandler to call the photo from AD because the user explicitly deleted the photo. This scenario is by-design of the UserPhoto API.

To rectify this behaviour, clear the MAPI property by running 'Remove-UserPhoto  -ClearMailboxPhotoRecord'.

Keep in mind, as well, that Exchange uses a CachingPhotoHandler and that the photos stored on disk have a TTL of 7 days.

I have written a script to help ascertain the MAPI properties on a given mailbox, obtain the location of the cached photos on disk, and obtain the IPM.UserPhoto item from the user's mailbox (on-premises):

<code>
function Get-UserPhotoDataOnPremises
{
    param([string]$User)
    Write-Warning -Message "The source of our powers comes from a Cracker Jack™ box, so this will take a minute. Please be patient..."
    if([System.String]::IsNullOrEmpty($User))
    {
        throw [System.NullReferenceException]::new("The user value cannot be null.")
    }
    else
    {
        $mbx = Get-Mailbox $User
    }

    [string]$scriptPath = $env:ExchangeInstallPath + "Scripts\ManagedStoreDiagnosticFunctions.ps1"
    # Dot-load script into function
    . $scriptPath

    [GUID]$guid = $mbx.ExchangeGuid.Guid
    [int]$mbxNumber = Get-StoreQuery -Database $mbx.Database -Query "SELECT MailboxNumber FROM Mailbox WHERE MailboxGuid='$guid'" | Select -ExpandProperty MailboxNumber
    [string]$folderId = Get-StoreQuery -Database $mbx.Database -Query "SELECT FolderId FROM Folder WHERE MailboxNumber='$mbxNumber' AND DisplayName='$([System.String]::Empty)'" | Select -ExpandProperty FolderId
    $global:item = Get-StoreQuery -Database $mbx.Database -Query "SELECT * FROM Message WHERE MailboxNumber='$mbxNumber' AND FolderId='$folderId' AND MessageClass='IPM.UserPhoto'" -Unlimited
    [string]$previewPhotoCachedId = (Get-StoreQuery -Database $mbx.Database -Query "SELECT UserPhotoPreviewCacheId FROM Mailbox WHERE MailboxNumber='$mbxNumber'" -Unlimited).p7C1B0003
    [string]$photoCacheId = (Get-StoreQuery -Database $mbx.Database -Query "SELECT UserPhotoCacheId FROM Mailbox WHERE MailboxNumber='$mbxNumber'" -Unlimited).p7C1A0003
 
    # Obtain files on disk (if any)
    $smtp = $mbx.WindowsEmailAddress.Address
    $smtpAtIndex = $smtp.IndexOf("@")
    $smtpAtIndexPlusOne = $smtpAtIndex + 1
    $smtpDotIndex = $smtp.LastIndexOf(".")
    $smtpNewLength = $smtpDotIndex - $smtpAtIndexPlusOne
    $subString = $smtp.Substring($smtpAtIndexPlusOne, $smtpNewLength)
    $queryString = "_$subString"
    $preSubString = $smtp.Substring(0, $smtpAtIndex)
    $srvr = Get-MailboxDatabaseCopyStatus $mbx.Database.Name | Where{$_.Status -contains 'Mounted'} | Select -ExpandProperty MailboxServer
    $folderPathUnc = "\\$($srvr)\" + $env:ExchangeInstallPath.Replace(":", "$") + "\ClientAccess\photos"
    $obj = Get-ChildItem -Path $folderPathUnc -Filter "*$($queryString)*"
    $folderPath = $obj.FullName
    $obj2 = Get-ChildItem -Path $folderPath
    $fullPaths = @()
    foreach($o in $obj2)
    {
        $picObj = Get-ChildItem -Path $o.FullName -Filter "*$($preSubString)*"
        $fullPaths += New-Object PSobject -Property @{
                                                        Name=$picObj.Name 
                                                        Size=$picObj.Length
                                                        Location=$picObj.FullName
                                                     }
    }
 
    if([System.String]::IsNullOrEmpty($item.MessageId) -eq $FALSE)
    {
        $string = "IPM.UserPhoto item found in user's mailbox. The object can be found in " + "$" + "item"
        Write-Host $string
    }
    if($previewPhotoCachedId)
    {
        Write-Host "UserPhotoPreviewCacheId found: $previewPhotoCachedId"
    }
    if($photoCacheId)
    {
        Write-Host "UserPhotoCacheId found: $photoCacheId"
    }
    Write-Host -ForegroundColor Green "Photo files found on disk on $($srvr) for $($smtp):"
    $fullPaths | FL
}
</code>

Here's an example as run from my lab:

<code>
[PS] E:\&gt;Get-UserPhotoDataOnPremises -User Administrator
WARNING: The source of our powers comes from a Cracker Jack™ box, so this will take a minute. Please be patient...
IPM.UserPhoto item found in user's mailbox. The object can be found in $item
UserPhotoPreviewCacheId found: -88512737
UserPhotoCacheId found: -88512737
Photo files found on disk on [REDACTED] for Administrator@contoso.se:


Name     : _Administrator-8EEDD78A2D804372C17E9FABD151BCD5.jpg
Location : \\[REDACTED]\E$\exchsrvr\ClientAccess\photos\_contoso.se-BBED6250E228D4F38F5F19BF4F1A6823\HR648x648\_Administrator-8EEDD78A2D804372C17E9FABD151BCD5.jpg
Size     : 79838

Name     : _Administrator-8EEDD78A2D804372C17E9FABD151BCD5.jpg
Location : \\[REDACTED]\E$\exchsrvr\ClientAccess\photos\_contoso.se-BBED6250E228D4F38F5F19BF4F1A6823\HR96x96\_Administrator-8EEDD78A2D804372C17E9FABD151BCD5.jpg
Size     : 3224
</code>

I've also written a method in C# to test obtain the photo via the EWS GetUserPhoto REST method:

<code>
/// <summary>
///     Creates an EWS request for a user's photo at each standard size.
/// </summary>
/// Vanity name of your endpoint.
/// Smtp Address of the user you're targeting.
private static void GetPhotos(string vanityName, string username)
{
    int[] sizeInts = new[] { 48, 64, 96, 120, 240, 360, 432, 504, 648 };
    Parallel.ForEach(sizeInts, delegate (int i)
    {
	Uri targetUri = new Uri($"https://{vanityName}/EWS/Exchange.asmx/s/GetUserPhoto?email={username}&amp;size=HR{i}x{i}");
	Console.WriteLine($"Targeting: {targetUri}");
	try
	{
    		HttpWebRequest newWebRequest = (HttpWebRequest)WebRequest.Create(targetUri);
    		newWebRequest.UserAgent = "Enterprise Cloud UserPhoto EWS Client";
    		newWebRequest.Credentials = new NetworkCredential("[UserName]", "[PassWord]");
    		using (HttpWebResponse newWebResponse = (HttpWebResponse)newWebRequest.GetResponse())
    		{
			if (newWebResponse.StatusCode == HttpStatusCode.OK)
			{
    				Console.WriteLine($"Size {i} photo found.");
			}
			else if(newWebResponse.StatusCode == HttpStatusCode.NotFound)
			{
    				Console.WriteLine($"Photo API states that a photo cannot be found for the size {i}x{i}");
			}
			else
			{
    				Console.WriteLine($"Unexpected http response received: {newWebResponse.StatusCode}");
			}
    		}

	}
	catch (Exception e)
	{
    		Console.WriteLine(e.Message);
	}

    });
}
</code>

If you run into any problems with the script or have any questions or concerns around the UserPhoto API, feel free to let know! :)]]></content:encoded>
    </item>
    <item>
      <title>2017 Project: Documented Code Samples</title>
      <link>https://docs.microsoft.com/archive/blogs/johnbai/2017-project-documented-code-samples</link>
      <pubDate>Sun, 26 Mar 2017 03:46:49 GMT</pubDate>
      <dc:creator><![CDATA[John Bailey [MSFT]]]></dc:creator>
      <guid
        isPermaLink="false">https://blogs.technet.microsoft.com/johnbai/?p=1026</guid>
      <description><![CDATA[In an effort to empower more people across the planet to learn, but for it not to be an arduous...]]></description>
      <content:encoded><![CDATA[In an effort to empower more people across the planet to learn, but for it not to be an arduous journey in doing so, I've started heavily commenting code so that people can learn from it. This will be the first of many code ventures that I attempt to do and then share with comments, so that others can learn from it. The reason for the commenting with the links is because I, myself, have often wondered what 'x' does or why 'y' may have been used; so, in typical learning fashion, I set off to my favourite search engine and undertake to read more on the class, method, property, etc. To save someone the time and heartache of doing that, I include the .NET MSDN/TechNet documentation with the code - to assist self-driven learning.

In this first of series, DownloadBingImage, Wes (Mills) was making a PowerShell script to download the <a href="http://www.bing.com/" target="_blank">Bing Search Image</a>. Kevin (Miller) asked him if it was in a service or task and Wes replied that it was a task, so I challenged myself to write it into a Windows Service. I rose to the occasion - mostly, out of self-interest in Windows Services, as it would help me to learn more about coding fundamentals in this area.

And, so, a few months of trial and error and I have a working version of the service installed on my local machine and it downloads the image[s]. This same exact code is what I'm sharing with you.

You can find a copy of the code with in-line comments and links to the classes/methods <a href="https://github.com/johnbaiMSFT/Samples/tree/master/Microsoft.Samples.Service.DownloadBingImage" target="_blank">here</a>. If you want to start at the main service entry point, look <a href="https://github.com/johnbaiMSFT/Samples/blob/master/Microsoft.Samples.Service.DownloadBingImage/Microsoft.Samples.Service.DownloadBingImage/Microsoft.Samples.Service.DownloadBingImage.cs">here</a>.

It should go without saying that I am <strong><em>not</em></strong> a professional developer (albeit, my role does require understanding all aspects of the SDLC), so if you have comments or are confused as to why I did something a particular way (from a professional developer's perspective) and it doesn't quite make sense, that's why: I'm more of a hobbyist than what others would call a "professional", at this point.

I hope that this helps at least one person on their journey towards software development. If it's just one, then the effort was worth it. :)

Happy Coding!]]></content:encoded>
    </item>
    <item>
      <title>EXODSnapIn: Alpha Release</title>
      <link>https://docs.microsoft.com/archive/blogs/johnbai/exodsnapin-alpha-release</link>
      <pubDate>Thu, 05 May 2016 00:19:27 GMT</pubDate>
      <dc:creator><![CDATA[John Bailey [MSFT]]]></dc:creator>
      <guid
        isPermaLink="false">https://blogs.technet.microsoft.com/johnbai/?p=1015</guid>
      <description><![CDATA[I wanted to write a post about the project I've been working on since circa December 2015. It's...]]></description>
      <content:encoded><![CDATA[I wanted to write a post about the project I've been working on since circa December 2015. It's approximately 1200 lines of code and 18 commands - all varying in intended design/function. The assembly is meant to be imported into your Exchange Management Shell (EMS) via importing the module: <em><strong>Import-Module .\EXODSnapIn.dll -Verbose</strong></em> The intended audience is any Exchange Administrator with access rights to 'Update-MailboxDatabaseCopy' at the most/highest. 

It should be important to note that some of these commands will work outside of EMS (e.g.: Get-WhoIsInformation) and do not, implicitly, require importation into EMS. 

To add the assembly as a default into PowerShell, browse to C:\Users\<em>your user name</em>\Documents\WindowsPowerShell and edit (or create it if it does not exist) the <strong>Microsoft.PowerShell_profile.ps1</strong> file to include <em><strong>Import-Module .\EXODSnapIn.dll -Verbose</strong></em>.

<strong>Get-AdObjectProperties</strong>
This command uses the System.DirectoryServices.Protocols library to search the current domain context for an object by both the property and property value supplied. In order to prevent overhead, I only return the processed collection of attributes for the first object returned.

<pre style='color:#d1d1d1;background:#000000'>$obj <span style='color:#00dddd'>=</span> <span style='color:#005fd2'>Get-AdObjectProperties</span> -Property <span style='color:#00c4c4'>mail</span> -PropertyValue <span style='color:#00c4c4'>johnbai@exchange.microsoft.com</span>
$obj<span style='color:#00dddd'>.</span><span style='color:#005fd2'>whenCreated</span>
<span style='color:#008c00'>12</span><span style='color:#00dddd'>/</span><span style='color:#008c00'>20</span><span style='color:#00dddd'>/</span><span style='color:#008c00'>2011</span> <span style='color:#008c00'>18</span>:<span style='color:#008c00'>54</span>:<span style='color:#008c00'>22</span>
</pre>

<strong>Get-InternetExchangeStatus</strong>
This command will present a new browser (or tab) showing the network graph of the <a href="https://en.wikipedia.org/wiki/Internet_exchange_point" target="_blank">Internet Exchange</a> site specified (via switch parameter). Unfortunately, not all IX have their network status listed publicly; so, if you're looking for the status for San Antonio, for example, you will not be able to find it with this command.

<pre style='color:#d1d1d1;background:#000000'><span style='color:#005fd2'>Get-InternetExchangeStatus</span> -Amsterdam -Dublin -Frankfurt -Hamburg -London -Madrid -Munich
</pre>

<strong>Get-WhoisInformation</strong>
This command takes an IPAddress (or array of them) and queries ARIN for the owner. If the owner is found to be RIPE, the command makes a second query to RIPE for the data before displaying it. (APNIC and LACNIC will be coming in the future, assuming they make REST endpoints available.)

<pre style='color:#d1d1d1;background:#000000'><span style='color:#005fd2'>Get-WhoisInformation</span> -IpAddresses <span style='color:#02d045'>"</span><span style='color:#00c4c4'>158.198.48.206</span><span style='color:#02d045'>"</span><span style='color:#00dddd'>,</span> <span style='color:#02d045'>"</span><span style='color:#00c4c4'>4.4.2.2</span><span style='color:#02d045'>"</span><span style='color:#00dddd'>,</span> <span style='color:#02d045'>"</span><span style='color:#00c4c4'>88.66.77.11</span><span style='color:#02d045'>"</span><span style='color:#00dddd'>,</span> <span style='color:#02d045'>"</span><span style='color:#00c4c4'>1.1.1.1</span><span style='color:#02d045'>"</span><span style='color:#00dddd'>,</span> <span style='color:#02d045'>"</span><span style='color:#00c4c4'>23.103.0.0</span><span style='color:#02d045'>"</span><span style='color:#00dddd'>,</span> <span style='color:#02d045'>"</span><span style='color:#00c4c4'>80.0.0.0</span><span style='color:#02d045'>"</span><span style='color:#00dddd'>,</span> <span style='color:#02d045'>"</span><span style='color:#00c4c4'>157.100.0.0</span><span style='color:#02d045'>"</span><span style='color:#00dddd'>,</span> <span style='color:#02d045'>"</span><span style='color:#00c4c4'>8.8.8.8</span><span style='color:#02d045'>"</span> <span style='color:#904050'>|</span> <span style='color:#005fd2'>FT</span> -AutoSize

<span style='color:#005fd2'>Name</span>                   <span style='color:#00c4c4'>OriginAs</span> <span style='color:#00c4c4'>StartAddress</span> <span style='color:#00c4c4'>EndAddress</span>
<span style='color:#00dddd'>--</span><span style='color:#00dddd'>--</span>                   <span style='color:#00dddd'>--</span><span style='color:#00dddd'>--</span><span style='color:#00dddd'>--</span><span style='color:#00dddd'>--</span> <span style='color:#00dddd'>--</span><span style='color:#00dddd'>--</span><span style='color:#00dddd'>--</span><span style='color:#00dddd'>--</span><span style='color:#00dddd'>--</span><span style='color:#00dddd'>--</span> <span style='color:#00dddd'>--</span><span style='color:#00dddd'>--</span><span style='color:#00dddd'>--</span><span style='color:#00dddd'>--</span><span style='color:#00dddd'>--</span>
<span style='color:#005fd2'>APNIC-ERX-158-198-0-0</span>           <span style='color:#009f00'>158.198</span><span style='color:#00c4c4'>.0.0</span>  <span style='color:#009f00'>158.215</span><span style='color:#00c4c4'>.255.255</span>
<span style='color:#005fd2'>LVLT-STATIC-4-4-16</span>              <span style='color:#009f00'>4.4</span><span style='color:#00c4c4'>.0.0</span>      <span style='color:#009f00'>4.4</span><span style='color:#00c4c4'>.255.255</span>
<span style='color:#005fd2'>ARCOR-DSL-NET15</span>                 <span style='color:#009f00'>88.64</span><span style='color:#00c4c4'>.208.0</span>  <span style='color:#009f00'>88.66</span><span style='color:#00c4c4'>.79.255</span>
<span style='color:#005fd2'>APNIC-1</span>                         <span style='color:#009f00'>1.0</span><span style='color:#00c4c4'>.0.0</span>      <span style='color:#009f00'>1.255</span><span style='color:#00c4c4'>.255.255</span>
<span style='color:#005fd2'>MSFT</span>                   <span style='color:#00c4c4'>AS8075</span>   <span style='color:#009f00'>23.96</span><span style='color:#00c4c4'>.0.0</span>    <span style='color:#009f00'>23.103</span><span style='color:#00c4c4'>.255.255</span>
<span style='color:#005fd2'>UK-NTLI-20010425</span>                <span style='color:#009f00'>80.0</span><span style='color:#00c4c4'>.0.0</span>     <span style='color:#009f00'>80.7</span><span style='color:#00c4c4'>.255.255</span>
<span style='color:#005fd2'>LACNIC-ERX-157-100-0-0</span>          <span style='color:#009f00'>157.100</span><span style='color:#00c4c4'>.0.0</span>  <span style='color:#009f00'>157.100</span><span style='color:#00c4c4'>.255.255</span>
<span style='color:#005fd2'>LVLT-GOGL-8-8-8</span>                 <span style='color:#009f00'>8.8</span><span style='color:#00c4c4'>.8.0</span>      <span style='color:#009f00'>8.8</span><span style='color:#00c4c4'>.8.255</span>
</pre>

<strong>Repair-MailboxSecurityDescriptor</strong>
This command queries the mailbox security descriptor for a specific user specified, removes the user's ACE, and re-applies all permissions on the object (without the removed ACE).

<pre style='color:#d1d1d1;background:#000000'><span style='color:#005fd2'>Repair-MailboxSecurityDescriptor</span> -Mailbox <span style='color:#00c4c4'>someone@contoso.com</span> -User <span style='color:#02d045'>"</span><span style='color:#00c4c4'>Contoso\Someone2</span><span style='color:#02d045'>"</span>
<span style='color:#005fd2'>WARNING:</span> <span style='color:#00c4c4'>The</span> <span style='color:#00c4c4'>ACE</span> <span style='color:#00c4c4'>for</span> <span style='color:#00c4c4'>Contoso\Someone2</span> <span style='color:#00c4c4'>on</span> <span style='color:#00c4c4'>someone@contoso.com</span> <span style='color:#00c4c4'>was</span> <span style='color:#00c4c4'>not</span> <span style='color:#00c4c4'>found.</span> <span style='color:#00c4c4'>Please</span> <span style='color:#00c4c4'>validate</span> <span style='color:#00c4c4'>your</span> <span style='color:#00c4c4'>input[s].</span>
</pre>

<strong>Get-ExchangeProcessDiagnostics</strong>
This command parses the XML from the original diagnostics command to only give you the process-related information you may be concerned with, when troubleshooting an issue related to the process (e.g.: working set, mem usage, lifetime, etc.).

<pre style='color:#d1d1d1;background:#000000'><span style='color:#005fd2'>Get-ExchangeProcessDiagnostics</span> -ProcessName <span style='color:#00c4c4'>MSExchangeMailboxAssistants</span> -Server $Server <span style='color:#904050'>|</span> <span style='color:#005fd2'>FT</span> -AutoSize

<span style='color:#005fd2'>ProcessName</span>                 <span style='color:#00c4c4'>LifeTime</span>            <span style='color:#00c4c4'>ThreadCount</span> <span style='color:#00c4c4'>HandleCount</span> <span style='color:#00c4c4'>WorkingSet</span>
<span style='color:#00dddd'>--</span><span style='color:#00dddd'>--</span><span style='color:#00dddd'>--</span><span style='color:#00dddd'>--</span><span style='color:#00dddd'>--</span><span style='color:#00dddd'>-</span>                 <span style='color:#00dddd'>--</span><span style='color:#00dddd'>--</span><span style='color:#00dddd'>--</span><span style='color:#00dddd'>--</span>            <span style='color:#00dddd'>--</span><span style='color:#00dddd'>--</span><span style='color:#00dddd'>--</span><span style='color:#00dddd'>--</span><span style='color:#00dddd'>--</span><span style='color:#00dddd'>-</span> <span style='color:#00dddd'>--</span><span style='color:#00dddd'>--</span><span style='color:#00dddd'>--</span><span style='color:#00dddd'>--</span><span style='color:#00dddd'>--</span><span style='color:#00dddd'>-</span> <span style='color:#00dddd'>--</span><span style='color:#00dddd'>--</span><span style='color:#00dddd'>--</span><span style='color:#00dddd'>--</span><span style='color:#00dddd'>--</span>
<span style='color:#005fd2'>MSExchangeMailboxAssistants</span> <span style='color:#009f00'>23.03</span><span style='color:#00c4c4'>:50:14.4678669</span>         <span style='color:#008c00'>167</span>        <span style='color:#008c00'>4315</span> <span style='color:#009f00'>570.8</span> <span style='color:#00c4c4'>MB</span> <span style='color:#d2cd86'>(</span><span style='color:#008c00'>598</span><span style='color:#00dddd'>,</span><span style='color:#008c00'>523</span><span style='color:#00dddd'>,</span><span style='color:#008c00'>904</span> bytes<span style='color:#d2cd86'>)</span>
</pre>

<strong>Get-DeletionEventsForMailbox</strong>
This command queries for <strong>all</strong> of the Database Events related to deletions performed on the user's mailbox.

<pre style='color:#d1d1d1;background:#000000'><span style='color:#005fd2'>Get-DeletionEventsForMailbox</span> -SmtpAddress <span style='color:#00c4c4'>someone@contoso.com</span> <span style='color:#904050'>|</span> <span style='color:#005fd2'>FT</span> -AutoSize
<span style='color:#005fd2'>WARNING:</span> <span style='color:#00c4c4'>This</span> <span style='color:#00c4c4'>command</span> <span style='color:#00c4c4'>will</span> <span style='color:#00c4c4'>take</span> <span style='color:#00c4c4'>some</span> <span style='color:#00c4c4'>time</span> <span style='color:#00c4c4'>to</span> <span style='color:#00c4c4'>complete.</span> <span style='color:#00c4c4'>Please</span> <span style='color:#00c4c4'>be</span> <span style='color:#00c4c4'>patient.</span>

  <span style='color:#005fd2'>Counter</span> <span style='color:#00c4c4'>CreateTime</span>            <span style='color:#00c4c4'>ItemType</span>     <span style='color:#00c4c4'>EventName</span>     <span style='color:#00c4c4'>ObjectClass</span>                                <span style='color:#00c4c4'>MailboxGuid</span>                          <span style='color:#00c4c4'>ClientCategory</span>       <span style='color:#00c4c4'>UserType</span> <span style='color:#00c4c4'>ParentEntryId</span>
  <span style='color:#00dddd'>--</span><span style='color:#00dddd'>--</span><span style='color:#00dddd'>--</span><span style='color:#00dddd'>-</span> <span style='color:#00dddd'>--</span><span style='color:#00dddd'>--</span><span style='color:#00dddd'>--</span><span style='color:#00dddd'>--</span><span style='color:#00dddd'>--</span>            <span style='color:#00dddd'>--</span><span style='color:#00dddd'>--</span><span style='color:#00dddd'>--</span><span style='color:#00dddd'>--</span>     <span style='color:#00dddd'>--</span><span style='color:#00dddd'>--</span><span style='color:#00dddd'>--</span><span style='color:#00dddd'>--</span><span style='color:#00dddd'>-</span>     <span style='color:#00dddd'>--</span><span style='color:#00dddd'>--</span><span style='color:#00dddd'>--</span><span style='color:#00dddd'>--</span><span style='color:#00dddd'>--</span><span style='color:#00dddd'>-</span>                                <span style='color:#00dddd'>--</span><span style='color:#00dddd'>--</span><span style='color:#00dddd'>--</span><span style='color:#00dddd'>--</span><span style='color:#00dddd'>--</span><span style='color:#00dddd'>-</span>                          <span style='color:#00dddd'>--</span><span style='color:#00dddd'>--</span><span style='color:#00dddd'>--</span><span style='color:#00dddd'>--</span><span style='color:#00dddd'>--</span><span style='color:#00dddd'>--</span><span style='color:#00dddd'>--</span>       <span style='color:#00dddd'>--</span><span style='color:#00dddd'>--</span><span style='color:#00dddd'>--</span><span style='color:#00dddd'>--</span> <span style='color:#00dddd'>--</span><span style='color:#00dddd'>--</span><span style='color:#00dddd'>--</span><span style='color:#00dddd'>--</span><span style='color:#00dddd'>--</span><span style='color:#00dddd'>--</span>-
 <span style='color:#008c00'>99999999</span> <span style='color:#008c00'>4</span><span style='color:#00dddd'>/</span><span style='color:#008c00'>28</span><span style='color:#00dddd'>/</span><span style='color:#008c00'>2016</span> <span style='color:#008c00'>12</span>:<span style='color:#008c00'>50</span>:<span style='color:#008c00'>27</span> PM MAPI_MESSAGE ObjectDeleted IPM<span style='color:#00dddd'>.</span><span style='color:#005fd2'>Note</span>                                   5081e2de<span style='color:#00dddd'>-</span>4bff<span style='color:#00dddd'>-</span>422a<span style='color:#00dddd'>-</span><span style='color:#008c00'>9601</span>-eff4bd04fab3 MOMT                          00000000DA58A48EAD04D14E83249194E7B36105010025A7CA50FD477849BFCCB20CBA662EF20000001C60AF0000
<span style='color:#008c00'>100000001</span> <span style='color:#008c00'>4</span><span style='color:#00dddd'>/</span><span style='color:#008c00'>28</span><span style='color:#00dddd'>/</span><span style='color:#008c00'>2016</span> <span style='color:#008c00'>12</span>:<span style='color:#008c00'>50</span>:<span style='color:#008c00'>27</span> PM MAPI_MESSAGE ObjectDeleted IPM<span style='color:#00dddd'>.</span><span style='color:#005fd2'>Note</span>                                   5081e2de<span style='color:#00dddd'>-</span>4bff<span style='color:#00dddd'>-</span>422a<span style='color:#00dddd'>-</span><span style='color:#008c00'>9601</span>-eff4bd04fab3 MOMT                          00000000DA58A48EAD04D14E83249194E7B36105010025A7CA50FD477849BFCCB20CBA662EF20000001C60AF0000
<span style='color:#008c00'>100000003</span> <span style='color:#008c00'>4</span><span style='color:#00dddd'>/</span><span style='color:#008c00'>28</span><span style='color:#00dddd'>/</span><span style='color:#008c00'>2016</span> <span style='color:#008c00'>12</span>:<span style='color:#008c00'>50</span>:<span style='color:#008c00'>27</span> PM MAPI_MESSAGE ObjectDeleted IPM<span style='color:#00dddd'>.</span><span style='color:#005fd2'>Note</span>                                   5081e2de<span style='color:#00dddd'>-</span>4bff<span style='color:#00dddd'>-</span>422a<span style='color:#00dddd'>-</span><span style='color:#008c00'>9601</span>-eff4bd04fab3 MOMT                          00000000DA58A48EAD04D14E83249194E7B36105010025A7CA50FD477849BFCCB20CBA662EF20000001C60AF0000
<span style='color:#008c00'>100001179</span> <span style='color:#008c00'>4</span><span style='color:#00dddd'>/</span><span style='color:#008c00'>28</span><span style='color:#00dddd'>/</span><span style='color:#008c00'>2016</span> <span style='color:#008c00'>1</span>:<span style='color:#008c00'>01</span>:<span style='color:#008c00'>31</span> PM  MAPI_MESSAGE ObjectDeleted IPM<span style='color:#00dddd'>.</span><span style='color:#005fd2'>Note</span>                                   5081e2de<span style='color:#00dddd'>-</span>4bff<span style='color:#00dddd'>-</span>422a<span style='color:#00dddd'>-</span><span style='color:#008c00'>9601</span>-eff4bd04fab3 Transport                     00000000DA58A48EAD04D14E83249194E7B36105010025A7CA50FD477849BFCCB20CBA662EF20000001BD97D0000
<span style='color:#008c00'>100001180</span> <span style='color:#008c00'>4</span><span style='color:#00dddd'>/</span><span style='color:#008c00'>28</span><span style='color:#00dddd'>/</span><span style='color:#008c00'>2016</span> <span style='color:#008c00'>1</span>:<span style='color:#008c00'>01</span>:<span style='color:#008c00'>31</span> PM  MAPI_MESSAGE ObjectDeleted IPM<span style='color:#00dddd'>.</span><span style='color:#005fd2'>Note</span>                                   5081e2de<span style='color:#00dddd'>-</span>4bff<span style='color:#00dddd'>-</span>422a<span style='color:#00dddd'>-</span><span style='color:#008c00'>9601</span>-eff4bd04fab3 Transport                     00000000DA58A48EAD04D14E83249194E7B36105010025A7CA50FD477849BFCCB20CBA662EF20000001C60AF0000
<span style='color:#008c00'>100001184</span> <span style='color:#008c00'>4</span><span style='color:#00dddd'>/</span><span style='color:#008c00'>28</span><span style='color:#00dddd'>/</span><span style='color:#008c00'>2016</span> <span style='color:#008c00'>1</span>:<span style='color:#008c00'>01</span>:<span style='color:#008c00'>34</span> PM  MAPI_MESSAGE ObjectDeleted IPM<span style='color:#00dddd'>.</span><span style='color:#005fd2'>Note</span>                                   5081e2de<span style='color:#00dddd'>-</span>4bff<span style='color:#00dddd'>-</span>422a<span style='color:#00dddd'>-</span><span style='color:#008c00'>9601</span>-eff4bd04fab3 MOMT                          00000000DA58A48EAD04D14E83249194E7B36105010025A7CA50FD477849BFCCB20CBA662EF20000001C60AF0000
<span style='color:#008c00'>100002827</span> <span style='color:#008c00'>4</span><span style='color:#00dddd'>/</span><span style='color:#008c00'>28</span><span style='color:#00dddd'>/</span><span style='color:#008c00'>2016</span> <span style='color:#008c00'>1</span>:<span style='color:#008c00'>14</span>:<span style='color:#008c00'>04</span> PM  MAPI_MESSAGE ObjectDeleted IPM<span style='color:#00dddd'>.</span><span style='color:#005fd2'>Note</span>                                   5081e2de<span style='color:#00dddd'>-</span>4bff<span style='color:#00dddd'>-</span>422a<span style='color:#00dddd'>-</span><span style='color:#008c00'>9601</span>-eff4bd04fab3 MOMT                          00000000DA58A48EAD04D14E83249194E7B36105010025A7CA50FD477849BFCCB20CBA662EF20000001C60AF0000
<span style='color:#008c00'>100003580</span> <span style='color:#008c00'>4</span><span style='color:#00dddd'>/</span><span style='color:#008c00'>28</span><span style='color:#00dddd'>/</span><span style='color:#008c00'>2016</span> <span style='color:#008c00'>1</span>:<span style='color:#008c00'>20</span>:<span style='color:#008c00'>23</span> PM  MAPI_MESSAGE ObjectDeleted IPM<span style='color:#00dddd'>.</span><span style='color:#005fd2'>Note</span>                                   5081e2de<span style='color:#00dddd'>-</span>4bff<span style='color:#00dddd'>-</span>422a<span style='color:#00dddd'>-</span><span style='color:#008c00'>9601</span>-eff4bd04fab3 Transport                     00000000DA58A48EAD04D14E83249194E7B36105010025A7CA50FD477849BFCCB20CBA662EF20000001BD97D0000
<span style='color:#008c00'>100003581</span> <span style='color:#008c00'>4</span><span style='color:#00dddd'>/</span><span style='color:#008c00'>28</span><span style='color:#00dddd'>/</span><span style='color:#008c00'>2016</span> <span style='color:#008c00'>1</span>:<span style='color:#008c00'>20</span>:<span style='color:#008c00'>23</span> PM  MAPI_MESSAGE ObjectDeleted IPM<span style='color:#00dddd'>.</span><span style='color:#005fd2'>Note</span>                                   5081e2de<span style='color:#00dddd'>-</span>4bff<span style='color:#00dddd'>-</span>422a<span style='color:#00dddd'>-</span><span style='color:#008c00'>9601</span>-eff4bd04fab3 Transport                     00000000DA58A48EAD04D14E83249194E7B36105010025A7CA50FD477849BFCCB20CBA662EF20000001C60AF0000
<span style='color:#008c00'>100003585</span> <span style='color:#008c00'>4</span><span style='color:#00dddd'>/</span><span style='color:#008c00'>28</span><span style='color:#00dddd'>/</span><span style='color:#008c00'>2016</span> <span style='color:#008c00'>1</span>:<span style='color:#008c00'>20</span>:<span style='color:#008c00'>24</span> PM  MAPI_MESSAGE ObjectDeleted IPM<span style='color:#00dddd'>.</span><span style='color:#005fd2'>Note</span>                                   5081e2de<span style='color:#00dddd'>-</span>4bff<span style='color:#00dddd'>-</span>422a<span style='color:#00dddd'>-</span><span style='color:#008c00'>9601</span>-eff4bd04fab3 MOMT                          00000000DA58A48EAD04D14E83249194E7B36105010025A7CA50FD477849BFCCB20CBA662EF20000001C60AF0000
<span style='color:#008c00'>100003590</span> <span style='color:#008c00'>4</span><span style='color:#00dddd'>/</span><span style='color:#008c00'>28</span><span style='color:#00dddd'>/</span><span style='color:#008c00'>2016</span> <span style='color:#008c00'>1</span>:<span style='color:#008c00'>20</span>:<span style='color:#008c00'>24</span> PM  MAPI_MESSAGE ObjectDeleted IPM<span style='color:#00dddd'>.</span><span style='color:#005fd2'>Note</span>                                   5081e2de<span style='color:#00dddd'>-</span>4bff<span style='color:#00dddd'>-</span>422a<span style='color:#00dddd'>-</span><span style='color:#008c00'>9601</span>-eff4bd04fab3 MOMT                          00000000DA58A48EAD04D14E83249194E7B36105010025A7CA50FD477849BFCCB20CBA662EF20000001C60AF0000
<span style='color:#008c00'>100003780</span> <span style='color:#008c00'>4</span><span style='color:#00dddd'>/</span><span style='color:#008c00'>28</span><span style='color:#00dddd'>/</span><span style='color:#008c00'>2016</span> <span style='color:#008c00'>1</span>:<span style='color:#008c00'>22</span>:<span style='color:#008c00'>37</span> PM  MAPI_MESSAGE ObjectDeleted IPM<span style='color:#00dddd'>.</span><span style='color:#005fd2'>Note</span>                                   5081e2de<span style='color:#00dddd'>-</span>4bff<span style='color:#00dddd'>-</span>422a<span style='color:#00dddd'>-</span><span style='color:#008c00'>9601</span>-eff4bd04fab3 MOMT                          00000000DA58A48EAD04D14E83249194E7B36105010025A7CA50FD477849BFCCB20CBA662EF20000001C60AF0000
<span style='color:#008c00'>100004093</span> <span style='color:#008c00'>4</span><span style='color:#00dddd'>/</span><span style='color:#008c00'>28</span><span style='color:#00dddd'>/</span><span style='color:#008c00'>2016</span> <span style='color:#008c00'>1</span>:<span style='color:#008c00'>25</span>:<span style='color:#008c00'>30</span> PM  MAPI_MESSAGE ObjectDeleted IPM<span style='color:#00dddd'>.</span><span style='color:#005fd2'>Note</span>                                   5081e2de<span style='color:#00dddd'>-</span>4bff<span style='color:#00dddd'>-</span>422a<span style='color:#00dddd'>-</span><span style='color:#008c00'>9601</span>-eff4bd04fab3 Transport                     00000000DA58A48EAD04D14E83249194E7B36105010025A7CA50FD477849BFCCB20CBA662EF20000001BD97D0000
<span style='color:#008c00'>100004094</span> <span style='color:#008c00'>4</span><span style='color:#00dddd'>/</span><span style='color:#008c00'>28</span><span style='color:#00dddd'>/</span><span style='color:#008c00'>2016</span> <span style='color:#008c00'>1</span>:<span style='color:#008c00'>25</span>:<span style='color:#008c00'>30</span> PM  MAPI_MESSAGE ObjectDeleted IPM<span style='color:#00dddd'>.</span><span style='color:#005fd2'>Note</span>                                   5081e2de<span style='color:#00dddd'>-</span>4bff<span style='color:#00dddd'>-</span>422a<span style='color:#00dddd'>-</span><span style='color:#008c00'>9601</span>-eff4bd04fab3 Transport                     00000000DA58A48EAD04D14E83249194E7B36105010025A7CA50FD477849BFCCB20CBA662EF20000001C60AF0000
<span style='color:#008c00'>100004126</span> <span style='color:#008c00'>4</span><span style='color:#00dddd'>/</span><span style='color:#008c00'>28</span><span style='color:#00dddd'>/</span><span style='color:#008c00'>2016</span> <span style='color:#008c00'>1</span>:<span style='color:#008c00'>25</span>:<span style='color:#008c00'>48</span> PM  MAPI_MESSAGE ObjectDeleted IPM<span style='color:#00dddd'>.</span><span style='color:#005fd2'>Note</span>                                   5081e2de<span style='color:#00dddd'>-</span>4bff<span style='color:#00dddd'>-</span>422a<span style='color:#00dddd'>-</span><span style='color:#008c00'>9601</span>-eff4bd04fab3 MOMT                          00000000DA58A48EAD04D14E83249194E7B36105010025A7CA50FD477849BFCCB20CBA662EF20000001C60AF0000
<span style='color:#008c00'>100006291</span> <span style='color:#008c00'>4</span><span style='color:#00dddd'>/</span><span style='color:#008c00'>28</span><span style='color:#00dddd'>/</span><span style='color:#008c00'>2016</span> <span style='color:#008c00'>1</span>:<span style='color:#008c00'>40</span>:<span style='color:#008c00'>06</span> PM  MAPI_MESSAGE ObjectDeleted IPM<span style='color:#00dddd'>.</span><span style='color:#005fd2'>Note</span>                                   5081e2de<span style='color:#00dddd'>-</span>4bff<span style='color:#00dddd'>-</span>422a<span style='color:#00dddd'>-</span><span style='color:#008c00'>9601</span>-eff4bd04fab3 MOMT                          00000000DA58A48EAD04D14E83249194E7B36105010025A7CA50FD477849BFCCB20CBA662EF20000001C60AF0000
<span style='color:#008c00'>100006589</span> <span style='color:#008c00'>4</span><span style='color:#00dddd'>/</span><span style='color:#008c00'>28</span><span style='color:#00dddd'>/</span><span style='color:#008c00'>2016</span> <span style='color:#008c00'>1</span>:<span style='color:#008c00'>43</span>:<span style='color:#008c00'>47</span> PM  MAPI_MESSAGE ObjectDeleted IPM<span style='color:#00dddd'>.</span><span style='color:#005fd2'>Note</span>                                   5081e2de<span style='color:#00dddd'>-</span>4bff<span style='color:#00dddd'>-</span>422a<span style='color:#00dddd'>-</span><span style='color:#008c00'>9601</span>-eff4bd04fab3 MOMT                          00000000DA58A48EAD04D14E83249194E7B36105010025A7CA50FD477849BFCCB20CBA662EF20000001C60AF0000
<span style='color:#008c00'>100007329</span> <span style='color:#008c00'>4</span><span style='color:#00dddd'>/</span><span style='color:#008c00'>28</span><span style='color:#00dddd'>/</span><span style='color:#008c00'>2016</span> <span style='color:#008c00'>1</span>:<span style='color:#008c00'>54</span>:<span style='color:#008c00'>20</span> PM  MAPI_MESSAGE ObjectDeleted IPM<span style='color:#00dddd'>.</span><span style='color:#005fd2'>Note</span>                                   5081e2de<span style='color:#00dddd'>-</span>4bff<span style='color:#00dddd'>-</span>422a<span style='color:#00dddd'>-</span><span style='color:#008c00'>9601</span>-eff4bd04fab3 Transport                     00000000DA58A48EAD04D14E83249194E7B36105010025A7CA50FD477849BFCCB20CBA662EF20000001BD97D0000
<span style='color:#008c00'>100007330</span> <span style='color:#008c00'>4</span><span style='color:#00dddd'>/</span><span style='color:#008c00'>28</span><span style='color:#00dddd'>/</span><span style='color:#008c00'>2016</span> <span style='color:#008c00'>1</span>:<span style='color:#008c00'>54</span>:<span style='color:#008c00'>20</span> PM  MAPI_MESSAGE ObjectDeleted IPM<span style='color:#00dddd'>.</span><span style='color:#005fd2'>Note</span>                                   5081e2de<span style='color:#00dddd'>-</span>4bff<span style='color:#00dddd'>-</span>422a<span style='color:#00dddd'>-</span><span style='color:#008c00'>9601</span>-eff4bd04fab3 Transport                     00000000DA58A48EAD04D14E83249194E7B36105010025A7CA50FD477849BFCCB20CBA662EF20000001C60AF0000
<span style='color:#008c00'>100007338</span> <span style='color:#008c00'>4</span><span style='color:#00dddd'>/</span><span style='color:#008c00'>28</span><span style='color:#00dddd'>/</span><span style='color:#008c00'>2016</span> <span style='color:#008c00'>1</span>:<span style='color:#008c00'>54</span>:<span style='color:#008c00'>22</span> PM  MAPI_MESSAGE ObjectDeleted IPM<span style='color:#00dddd'>.</span><span style='color:#005fd2'>Note</span>                                   5081e2de<span style='color:#00dddd'>-</span>4bff<span style='color:#00dddd'>-</span>422a<span style='color:#00dddd'>-</span><span style='color:#008c00'>9601</span>-eff4bd04fab3 MOMT                          00000000DA58A48EAD04D14E83249194E7B36105010025A7CA50FD477849BFCCB20CBA662EF20000001C60AF0000
<span style='color:#008c00'>100008983</span> <span style='color:#008c00'>4</span><span style='color:#00dddd'>/</span><span style='color:#008c00'>28</span><span style='color:#00dddd'>/</span><span style='color:#008c00'>2016</span> <span style='color:#008c00'>2</span>:<span style='color:#008c00'>05</span>:<span style='color:#008c00'>57</span> PM  MAPI_MESSAGE ObjectDeleted IPM<span style='color:#00dddd'>.</span><span style='color:#005fd2'>Note</span>                                   5081e2de<span style='color:#00dddd'>-</span>4bff<span style='color:#00dddd'>-</span>422a<span style='color:#00dddd'>-</span><span style='color:#008c00'>9601</span>-eff4bd04fab3 Transport                     00000000DA58A48EAD04D14E83249194E7B36105010025A7CA50FD477849BFCCB20CBA662EF20000001BD97D0000
<span style='color:#008c00'>100008984</span> <span style='color:#008c00'>4</span><span style='color:#00dddd'>/</span><span style='color:#008c00'>28</span><span style='color:#00dddd'>/</span><span style='color:#008c00'>2016</span> <span style='color:#008c00'>2</span>:<span style='color:#008c00'>05</span>:<span style='color:#008c00'>57</span> PM  MAPI_MESSAGE ObjectDeleted IPM<span style='color:#00dddd'>.</span><span style='color:#005fd2'>Note</span>                                   5081e2de<span style='color:#00dddd'>-</span>4bff<span style='color:#00dddd'>-</span>422a<span style='color:#00dddd'>-</span><span style='color:#008c00'>9601</span>-eff4bd04fab3 Transport                     00000000DA58A48EAD04D14E83249194E7B36105010025A7CA50FD477849BFCCB20CBA662EF20000001C60AF0000
<span style='color:#008c00'>100008997</span> <span style='color:#008c00'>4</span><span style='color:#00dddd'>/</span><span style='color:#008c00'>28</span><span style='color:#00dddd'>/</span><span style='color:#008c00'>2016</span> <span style='color:#008c00'>2</span>:<span style='color:#008c00'>05</span>:<span style='color:#008c00'>58</span> PM  MAPI_MESSAGE ObjectDeleted IPM<span style='color:#00dddd'>.</span><span style='color:#005fd2'>Note</span>                                   5081e2de<span style='color:#00dddd'>-</span>4bff<span style='color:#00dddd'>-</span>422a<span style='color:#00dddd'>-</span><span style='color:#008c00'>9601</span>-eff4bd04fab3 MOMT                          00000000DA58A48EAD04D14E83249194E7B36105010025A7CA50FD477849BFCCB20CBA662EF20000001C60AF0000
<span style='color:#008c00'>100010278</span> <span style='color:#008c00'>4</span><span style='color:#00dddd'>/</span><span style='color:#008c00'>28</span><span style='color:#00dddd'>/</span><span style='color:#008c00'>2016</span> <span style='color:#008c00'>2</span>:<span style='color:#008c00'>13</span>:<span style='color:#008c00'>29</span> PM  MAPI_MESSAGE ObjectDeleted IPM<span style='color:#00dddd'>.</span><span style='color:#005fd2'>Schedule</span><span style='color:#00dddd'>.</span><span style='color:#005fd2'>Meeting</span><span style='color:#00dddd'>.</span><span style='color:#005fd2'>Request</span>               5081e2de<span style='color:#00dddd'>-</span>4bff<span style='color:#00dddd'>-</span>422a<span style='color:#00dddd'>-</span><span style='color:#008c00'>9601</span>-eff4bd04fab3 EventBasedAssistants          00000000DA58A48EAD04D14E83249194E7B36105010022F02B7771143E4B8B48ABD43107FC9300000AF544800000
<span style='color:#008c00'>100010279</span> <span style='color:#008c00'>4</span><span style='color:#00dddd'>/</span><span style='color:#008c00'>28</span><span style='color:#00dddd'>/</span><span style='color:#008c00'>2016</span> <span style='color:#008c00'>2</span>:<span style='color:#008c00'>13</span>:<span style='color:#008c00'>29</span> PM  MAPI_MESSAGE ObjectDeleted IPM<span style='color:#00dddd'>.</span><span style='color:#005fd2'>Schedule</span><span style='color:#00dddd'>.</span><span style='color:#005fd2'>Meeting</span><span style='color:#00dddd'>.</span><span style='color:#005fd2'>Request</span>               5081e2de<span style='color:#00dddd'>-</span>4bff<span style='color:#00dddd'>-</span>422a<span style='color:#00dddd'>-</span><span style='color:#008c00'>9601</span>-eff4bd04fab3 EventBasedAssistants          00000000DA58A48EAD04D14E83249194E7B36105010025A7CA50FD477849BFCCB20CBA662EF20000001C60AF0000
<span style='color:#008c00'>100010424</span> <span style='color:#008c00'>4</span><span style='color:#00dddd'>/</span><span style='color:#008c00'>28</span><span style='color:#00dddd'>/</span><span style='color:#008c00'>2016</span> <span style='color:#008c00'>2</span>:<span style='color:#008c00'>14</span>:<span style='color:#008c00'>04</span> PM  MAPI_MESSAGE ObjectDeleted IPM<span style='color:#00dddd'>.</span><span style='color:#005fd2'>Appointment</span>                            5081e2de<span style='color:#00dddd'>-</span>4bff<span style='color:#00dddd'>-</span>422a<span style='color:#00dddd'>-</span><span style='color:#008c00'>9601</span>-eff4bd04fab3 MOMT                          00000000DA58A48EAD04D14E83249194E7B36105010025A7CA50FD477849BFCCB20CBA662EF20000001CD03C0000
<span style='color:#008c00'>100010643</span> <span style='color:#008c00'>4</span><span style='color:#00dddd'>/</span><span style='color:#008c00'>28</span><span style='color:#00dddd'>/</span><span style='color:#008c00'>2016</span> <span style='color:#008c00'>2</span>:<span style='color:#008c00'>16</span>:<span style='color:#008c00'>15</span> PM  MAPI_MESSAGE ObjectDeleted IPM<span style='color:#00dddd'>.</span><span style='color:#005fd2'>Appointment</span>                            5081e2de<span style='color:#00dddd'>-</span>4bff<span style='color:#00dddd'>-</span>422a<span style='color:#00dddd'>-</span><span style='color:#008c00'>9601</span>-eff4bd04fab3 MOMT                          00000000DA58A48EAD04D14E83249194E7B36105010022F02B7771143E4B8B48ABD43107FC9300000AF544800000
<span style='color:#008c00'>100010644</span> <span style='color:#008c00'>4</span><span style='color:#00dddd'>/</span><span style='color:#008c00'>28</span><span style='color:#00dddd'>/</span><span style='color:#008c00'>2016</span> <span style='color:#008c00'>2</span>:<span style='color:#008c00'>16</span>:<span style='color:#008c00'>15</span> PM  MAPI_MESSAGE ObjectDeleted IPM<span style='color:#00dddd'>.</span><span style='color:#005fd2'>Appointment</span>                            5081e2de<span style='color:#00dddd'>-</span>4bff<span style='color:#00dddd'>-</span>422a<span style='color:#00dddd'>-</span><span style='color:#008c00'>9601</span>-eff4bd04fab3 MOMT                          00000000DA58A48EAD04D14E83249194E7B36105010025A7CA50FD477849BFCCB20CBA662EF20000001C60AF0000
<span style='color:#008c00'>100010662</span> <span style='color:#008c00'>4</span><span style='color:#00dddd'>/</span><span style='color:#008c00'>28</span><span style='color:#00dddd'>/</span><span style='color:#008c00'>2016</span> <span style='color:#008c00'>2</span>:<span style='color:#008c00'>16</span>:<span style='color:#008c00'>16</span> PM  MAPI_MESSAGE ObjectDeleted IPM<span style='color:#00dddd'>.</span><span style='color:#005fd2'>Schedule</span><span style='color:#00dddd'>.</span><span style='color:#005fd2'>Meeting</span><span style='color:#00dddd'>.</span><span style='color:#005fd2'>Canceled</span>              5081e2de<span style='color:#00dddd'>-</span>4bff<span style='color:#00dddd'>-</span>422a<span style='color:#00dddd'>-</span><span style='color:#008c00'>9601</span>-eff4bd04fab3 MOMT                          00000000DA58A48EAD04D14E83249194E7B36105010022F02B7771143E4B8B48ABD43107FC9300000AF544800000
<span style='color:#008c00'>100010663</span> <span style='color:#008c00'>4</span><span style='color:#00dddd'>/</span><span style='color:#008c00'>28</span><span style='color:#00dddd'>/</span><span style='color:#008c00'>2016</span> <span style='color:#008c00'>2</span>:<span style='color:#008c00'>16</span>:<span style='color:#008c00'>16</span> PM  MAPI_MESSAGE ObjectDeleted IPM<span style='color:#00dddd'>.</span><span style='color:#005fd2'>Schedule</span><span style='color:#00dddd'>.</span><span style='color:#005fd2'>Meeting</span><span style='color:#00dddd'>.</span><span style='color:#005fd2'>Canceled</span>              5081e2de<span style='color:#00dddd'>-</span>4bff<span style='color:#00dddd'>-</span>422a<span style='color:#00dddd'>-</span><span style='color:#008c00'>9601</span>-eff4bd04fab3 MOMT                          00000000DA58A48EAD04D14E83249194E7B36105010025A7CA50FD477849BFCCB20CBA662EF20000001C60AF0000
<span style='color:#008c00'>100010745</span> <span style='color:#008c00'>4</span><span style='color:#00dddd'>/</span><span style='color:#008c00'>28</span><span style='color:#00dddd'>/</span><span style='color:#008c00'>2016</span> <span style='color:#008c00'>2</span>:<span style='color:#008c00'>16</span>:<span style='color:#008c00'>37</span> PM  MAPI_MESSAGE ObjectDeleted IPM<span style='color:#00dddd'>.</span><span style='color:#005fd2'>Note</span>                                   5081e2de<span style='color:#00dddd'>-</span>4bff<span style='color:#00dddd'>-</span>422a<span style='color:#00dddd'>-</span><span style='color:#008c00'>9601</span>-eff4bd04fab3 MOMT                          00000000DA58A48EAD04D14E83249194E7B36105010025A7CA50FD477849BFCCB20CBA662EF20000001C60AF0000
<span style='color:#008c00'>100010806</span> <span style='color:#008c00'>4</span><span style='color:#00dddd'>/</span><span style='color:#008c00'>28</span><span style='color:#00dddd'>/</span><span style='color:#008c00'>2016</span> <span style='color:#008c00'>2</span>:<span style='color:#008c00'>16</span>:<span style='color:#008c00'>56</span> PM  MAPI_MESSAGE ObjectDeleted IPM<span style='color:#00dddd'>.</span><span style='color:#005fd2'>Note</span>                                   5081e2de<span style='color:#00dddd'>-</span>4bff<span style='color:#00dddd'>-</span>422a<span style='color:#00dddd'>-</span><span style='color:#008c00'>9601</span>-eff4bd04fab3 MOMT                          00000000DA58A48EAD04D14E83249194E7B36105010025A7CA50FD477849BFCCB20CBA662EF20000001C60AF0000
<span style='color:#008c00'>100015172</span> <span style='color:#008c00'>4</span><span style='color:#00dddd'>/</span><span style='color:#008c00'>28</span><span style='color:#00dddd'>/</span><span style='color:#008c00'>2016</span> <span style='color:#008c00'>2</span>:<span style='color:#008c00'>43</span>:<span style='color:#008c00'>27</span> PM  MAPI_MESSAGE ObjectDeleted IPM<span style='color:#00dddd'>.</span><span style='color:#005fd2'>Note</span>                                   5081e2de<span style='color:#00dddd'>-</span>4bff<span style='color:#00dddd'>-</span>422a<span style='color:#00dddd'>-</span><span style='color:#008c00'>9601</span>-eff4bd04fab3 Transport                     00000000DA58A48EAD04D14E83249194E7B36105010025A7CA50FD477849BFCCB20CBA662EF20000001BD97D0000
<span style='color:#008c00'>100015173</span> <span style='color:#008c00'>4</span><span style='color:#00dddd'>/</span><span style='color:#008c00'>28</span><span style='color:#00dddd'>/</span><span style='color:#008c00'>2016</span> <span style='color:#008c00'>2</span>:<span style='color:#008c00'>43</span>:<span style='color:#008c00'>27</span> PM  MAPI_MESSAGE ObjectDeleted IPM<span style='color:#00dddd'>.</span><span style='color:#005fd2'>Note</span>                                   5081e2de<span style='color:#00dddd'>-</span>4bff<span style='color:#00dddd'>-</span>422a<span style='color:#00dddd'>-</span><span style='color:#008c00'>9601</span>-eff4bd04fab3 Transport                     00000000DA58A48EAD04D14E83249194E7B36105010025A7CA50FD477849BFCCB20CBA662EF20000001C60AF0000
<span style='color:#008c00'>100015177</span> <span style='color:#008c00'>4</span><span style='color:#00dddd'>/</span><span style='color:#008c00'>28</span><span style='color:#00dddd'>/</span><span style='color:#008c00'>2016</span> <span style='color:#008c00'>2</span>:<span style='color:#008c00'>43</span>:<span style='color:#008c00'>29</span> PM  MAPI_MESSAGE ObjectDeleted IPM<span style='color:#00dddd'>.</span><span style='color:#005fd2'>Note</span>                                   5081e2de<span style='color:#00dddd'>-</span>4bff<span style='color:#00dddd'>-</span>422a<span style='color:#00dddd'>-</span><span style='color:#008c00'>9601</span>-eff4bd04fab3 MOMT                          00000000DA58A48EAD04D14E83249194E7B36105010025A7CA50FD477849BFCCB20CBA662EF20000001C60AF0000
<span style='color:#008c00'>100015286</span> <span style='color:#008c00'>4</span><span style='color:#00dddd'>/</span><span style='color:#008c00'>28</span><span style='color:#00dddd'>/</span><span style='color:#008c00'>2016</span> <span style='color:#008c00'>2</span>:<span style='color:#008c00'>44</span>:<span style='color:#008c00'>14</span> PM  MAPI_MESSAGE ObjectDeleted IPM<span style='color:#00dddd'>.</span><span style='color:#005fd2'>Note</span>                                   5081e2de<span style='color:#00dddd'>-</span>4bff<span style='color:#00dddd'>-</span>422a<span style='color:#00dddd'>-</span><span style='color:#008c00'>9601</span>-eff4bd04fab3 MOMT                          00000000DA58A48EAD04D14E83249194E7B36105010025A7CA50FD477849BFCCB20CBA662EF20000001C60AF0000
<span style='color:#008c00'>100022263</span> <span style='color:#008c00'>4</span><span style='color:#00dddd'>/</span><span style='color:#008c00'>28</span><span style='color:#00dddd'>/</span><span style='color:#008c00'>2016</span> <span style='color:#008c00'>3</span>:<span style='color:#008c00'>13</span>:<span style='color:#008c00'>05</span> PM  MAPI_MESSAGE ObjectDeleted IPM<span style='color:#00dddd'>.</span><span style='color:#005fd2'>Note</span>                                   5081e2de<span style='color:#00dddd'>-</span>4bff<span style='color:#00dddd'>-</span>422a<span style='color:#00dddd'>-</span><span style='color:#008c00'>9601</span>-eff4bd04fab3 MOMT                          00000000DA58A48EAD04D14E83249194E7B36105010025A7CA50FD477849BFCCB20CBA662EF20000001C60AF0000
<span style='color:#008c00'>100023147</span> <span style='color:#008c00'>4</span><span style='color:#00dddd'>/</span><span style='color:#008c00'>28</span><span style='color:#00dddd'>/</span><span style='color:#008c00'>2016</span> <span style='color:#008c00'>3</span>:<span style='color:#008c00'>17</span>:<span style='color:#008c00'>52</span> PM  MAPI_MESSAGE ObjectDeleted IPM<span style='color:#00dddd'>.</span><span style='color:#005fd2'>Note</span>                                   5081e2de<span style='color:#00dddd'>-</span>4bff<span style='color:#00dddd'>-</span>422a<span style='color:#00dddd'>-</span><span style='color:#008c00'>9601</span>-eff4bd04fab3 MOMT                          00000000DA58A48EAD04D14E83249194E7B36105010025A7CA50FD477849BFCCB20CBA662EF20000001C60AF0000
<span style='color:#008c00'>100023157</span> <span style='color:#008c00'>4</span><span style='color:#00dddd'>/</span><span style='color:#008c00'>28</span><span style='color:#00dddd'>/</span><span style='color:#008c00'>2016</span> <span style='color:#008c00'>3</span>:<span style='color:#008c00'>17</span>:<span style='color:#008c00'>53</span> PM  MAPI_MESSAGE ObjectDeleted IPM<span style='color:#00dddd'>.</span><span style='color:#005fd2'>Note</span>                                   5081e2de<span style='color:#00dddd'>-</span>4bff<span style='color:#00dddd'>-</span>422a<span style='color:#00dddd'>-</span><span style='color:#008c00'>9601</span>-eff4bd04fab3 Transport                     00000000DA58A48EAD04D14E83249194E7B36105010025A7CA50FD477849BFCCB20CBA662EF20000001BD97D0000
<span style='color:#008c00'>100023158</span> <span style='color:#008c00'>4</span><span style='color:#00dddd'>/</span><span style='color:#008c00'>28</span><span style='color:#00dddd'>/</span><span style='color:#008c00'>2016</span> <span style='color:#008c00'>3</span>:<span style='color:#008c00'>17</span>:<span style='color:#008c00'>53</span> PM  MAPI_MESSAGE ObjectDeleted IPM<span style='color:#00dddd'>.</span><span style='color:#005fd2'>Note</span>                                   5081e2de<span style='color:#00dddd'>-</span>4bff<span style='color:#00dddd'>-</span>422a<span style='color:#00dddd'>-</span><span style='color:#008c00'>9601</span>-eff4bd04fab3 Transport                     00000000DA58A48EAD04D14E83249194E7B36105010025A7CA50FD477849BFCCB20CBA662EF20000001C60AF0000
<span style='color:#008c00'>100026697</span> <span style='color:#008c00'>4</span><span style='color:#00dddd'>/</span><span style='color:#008c00'>28</span><span style='color:#00dddd'>/</span><span style='color:#008c00'>2016</span> <span style='color:#008c00'>3</span>:<span style='color:#008c00'>32</span>:<span style='color:#008c00'>15</span> PM  MAPI_MESSAGE ObjectDeleted IPM<span style='color:#00dddd'>.</span><span style='color:#005fd2'>Appointment</span><span style='color:#00dddd'>.</span><span style='color:#005fd2'>MP</span>                         5081e2de<span style='color:#00dddd'>-</span>4bff<span style='color:#00dddd'>-</span>422a<span style='color:#00dddd'>-</span><span style='color:#008c00'>9601</span>-eff4bd04fab3 MOMT                          00000000DA58A48EAD04D14E83249194E7B36105010025A7CA50FD477849BFCCB20CBA662EF20000001CD03C0000
<span style='color:#008c00'>100037710</span> <span style='color:#008c00'>4</span><span style='color:#00dddd'>/</span><span style='color:#008c00'>28</span><span style='color:#00dddd'>/</span><span style='color:#008c00'>2016</span> <span style='color:#008c00'>4</span>:<span style='color:#008c00'>02</span>:<span style='color:#008c00'>45</span> PM  MAPI_MESSAGE ObjectDeleted IPM<span style='color:#00dddd'>.</span><span style='color:#005fd2'>Contact</span>                                5081e2de<span style='color:#00dddd'>-</span>4bff<span style='color:#00dddd'>-</span>422a<span style='color:#00dddd'>-</span><span style='color:#008c00'>9601</span>-eff4bd04fab3 TimeBasedAssistants           00000000DA58A48EAD04D14E83249194E7B36105010022F02B7771143E4B8B48ABD43107FC930000000060550000
<span style='color:#008c00'>100037711</span> <span style='color:#008c00'>4</span><span style='color:#00dddd'>/</span><span style='color:#008c00'>28</span><span style='color:#00dddd'>/</span><span style='color:#008c00'>2016</span> <span style='color:#008c00'>4</span>:<span style='color:#008c00'>02</span>:<span style='color:#008c00'>45</span> PM  MAPI_MESSAGE ObjectDeleted IPM<span style='color:#00dddd'>.</span><span style='color:#005fd2'>Contact</span>                                5081e2de<span style='color:#00dddd'>-</span>4bff<span style='color:#00dddd'>-</span>422a<span style='color:#00dddd'>-</span><span style='color:#008c00'>9601</span>-eff4bd04fab3 TimeBasedAssistants           00000000DA58A48EAD04D14E83249194E7B36105010022F02B7771143E4B8B48ABD43107FC93000078A453560000
<span style='color:#008c00'>100037712</span> <span style='color:#008c00'>4</span><span style='color:#00dddd'>/</span><span style='color:#008c00'>28</span><span style='color:#00dddd'>/</span><span style='color:#008c00'>2016</span> <span style='color:#008c00'>4</span>:<span style='color:#008c00'>02</span>:<span style='color:#008c00'>45</span> PM  MAPI_MESSAGE ObjectDeleted IPM<span style='color:#00dddd'>.</span><span style='color:#005fd2'>Contact</span>                                5081e2de<span style='color:#00dddd'>-</span>4bff<span style='color:#00dddd'>-</span>422a<span style='color:#00dddd'>-</span><span style='color:#008c00'>9601</span>-eff4bd04fab3 TimeBasedAssistants           00000000DA58A48EAD04D14E83249194E7B36105010022F02B7771143E4B8B48ABD43107FC93000078A457400000
</pre>

<strong>Get-ImpactedUserCount</strong>
This command gets the total number of mailboxes on the database, as is listed in AD.

<pre style='color:#d1d1d1;background:#000000'>$dbs <span style='color:#00dddd'>=</span> <span style='color:#005fd2'>Get-MailboxDatabase</span> <span style='color:#904050'>|</span> <span style='color:#005fd2'>Select</span> -ExpandProperty <span style='color:#00c4c4'>Name</span>
<span style='color:#005fd2'>Get-ImpactedUserCount</span> -Database $dbs
<span style='color:#005fd2'>The</span> <span style='color:#00c4c4'>total</span> <span style='color:#00c4c4'>mailboxes</span> <span style='color:#00c4c4'>on</span> <span style='color:#00c4c4'>Database1</span> <span style='color:#00c4c4'>are</span> <span style='color:#008c00'>21</span>
<span style='color:#005fd2'>The</span> <span style='color:#00c4c4'>total</span> <span style='color:#00c4c4'>mailboxes</span> <span style='color:#00c4c4'>on</span> <span style='color:#00c4c4'>Database2</span> <span style='color:#00c4c4'>are</span> <span style='color:#008c00'>162</span>
<span style='color:#005fd2'>The</span> <span style='color:#00c4c4'>total</span> <span style='color:#00c4c4'>mailboxes</span> <span style='color:#00c4c4'>on</span> <span style='color:#00c4c4'>Database3</span> <span style='color:#00c4c4'>are</span> <span style='color:#008c00'>41</span>
<span style='color:#005fd2'>The</span> <span style='color:#00c4c4'>total</span> <span style='color:#00c4c4'>mailboxes</span> <span style='color:#00c4c4'>on</span> <span style='color:#00c4c4'>Database4</span> <span style='color:#00c4c4'>are</span> <span style='color:#008c00'>43</span>
<span style='color:#005fd2'>The</span> <span style='color:#00c4c4'>total</span> <span style='color:#00c4c4'>mailboxes</span> <span style='color:#00c4c4'>are</span> <span style='color:#008c00'>267</span>
</pre>

<strong>Get-MailboxQuotaStatus</strong>
This command provides the current quota statistics for the mailbox in question.

<pre style='color:#d1d1d1;background:#000000'><span style='color:#005fd2'>Get-MailboxQuotaStatus</span> -Identity <span style='color:#00c4c4'>someoneone@contoso.com</span> <span style='color:#904050'>|</span> <span style='color:#005fd2'>FT</span> -AutoSize

<span style='color:#005fd2'>ExchangeGuid</span>                         <span style='color:#00c4c4'>Quarantined</span> <span style='color:#00c4c4'>UseDbDefaults</span> <span style='color:#00c4c4'>TotItemSize</span>                     <span style='color:#00c4c4'>MsgTblTotalSize</span>                <span style='color:#00c4c4'>TotDelItemSize</span>
<span style='color:#00dddd'>--</span><span style='color:#00dddd'>--</span><span style='color:#00dddd'>--</span><span style='color:#00dddd'>--</span><span style='color:#00dddd'>--</span><span style='color:#00dddd'>--</span>                         <span style='color:#00dddd'>--</span><span style='color:#00dddd'>--</span><span style='color:#00dddd'>--</span><span style='color:#00dddd'>--</span><span style='color:#00dddd'>--</span><span style='color:#00dddd'>-</span> <span style='color:#00dddd'>--</span><span style='color:#00dddd'>--</span><span style='color:#00dddd'>--</span><span style='color:#00dddd'>--</span><span style='color:#00dddd'>--</span><span style='color:#00dddd'>--</span><span style='color:#00dddd'>-</span> <span style='color:#00dddd'>--</span><span style='color:#00dddd'>--</span><span style='color:#00dddd'>--</span><span style='color:#00dddd'>--</span><span style='color:#00dddd'>--</span><span style='color:#00dddd'>-</span>                     <span style='color:#00dddd'>--</span><span style='color:#00dddd'>--</span><span style='color:#00dddd'>--</span><span style='color:#00dddd'>--</span><span style='color:#00dddd'>--</span><span style='color:#00dddd'>--</span><span style='color:#00dddd'>--</span><span style='color:#00dddd'>-</span>                <span style='color:#00dddd'>--</span><span style='color:#00dddd'>--</span><span style='color:#00dddd'>--</span><span style='color:#00dddd'>--</span><span style='color:#00dddd'>--</span><span style='color:#00dddd'>--</span><span style='color:#00dddd'>--</span>
<span style='color:#005fd2'>594274b1-9e6f-45aa-b912-9ddb3797b57c</span>       <span style='color:#00c4c4'>False</span>         <span style='color:#00c4c4'>False</span> <span style='color:#009f00'>19.04</span> <span style='color:#00c4c4'>GB</span> <span style='color:#d2cd86'>(</span><span style='color:#008c00'>20</span><span style='color:#00dddd'>,</span><span style='color:#008c00'>447</span><span style='color:#00dddd'>,</span><span style='color:#008c00'>468</span><span style='color:#00dddd'>,</span><span style='color:#008c00'>845</span> bytes<span style='color:#d2cd86'>)</span> <span style='color:#009f00'>7.134</span> <span style='color:#00c4c4'>GB</span> <span style='color:#d2cd86'>(</span><span style='color:#008c00'>7</span><span style='color:#00dddd'>,</span><span style='color:#008c00'>659</span><span style='color:#00dddd'>,</span><span style='color:#008c00'>716</span><span style='color:#00dddd'>,</span><span style='color:#008c00'>608</span> bytes<span style='color:#d2cd86'>)</span> <span style='color:#009f00'>2.269</span> <span style='color:#00c4c4'>GB</span> <span style='color:#d2cd86'>(</span><span style='color:#008c00'>2</span><span style='color:#00dddd'>,</span><span style='color:#008c00'>435</span><span style='color:#00dddd'>,</span><span style='color:#008c00'>837</span><span style='color:#00dddd'>,</span><span style='color:#008c00'>443</span> bytes<span style='color:#d2cd86'>)</span>


<span style='color:#005fd2'>Get-MailboxQuotaStatus</span> -Identity <span style='color:#00c4c4'>someoneone@contoso.com</span> -Archive <span style='color:#904050'>|</span> <span style='color:#005fd2'>FT</span> -AutoSize

<span style='color:#005fd2'>ExchangeGuid</span>                         <span style='color:#00c4c4'>Quarantined</span> <span style='color:#00c4c4'>UseDbDefaults</span> <span style='color:#00c4c4'>TotItemSize</span>                     <span style='color:#00c4c4'>MsgTblTotalSize</span>                 <span style='color:#00c4c4'>TotDelItemSize</span>
<span style='color:#00dddd'>--</span><span style='color:#00dddd'>--</span><span style='color:#00dddd'>--</span><span style='color:#00dddd'>--</span><span style='color:#00dddd'>--</span><span style='color:#00dddd'>--</span>                         <span style='color:#00dddd'>--</span><span style='color:#00dddd'>--</span><span style='color:#00dddd'>--</span><span style='color:#00dddd'>--</span><span style='color:#00dddd'>--</span><span style='color:#00dddd'>-</span> <span style='color:#00dddd'>--</span><span style='color:#00dddd'>--</span><span style='color:#00dddd'>--</span><span style='color:#00dddd'>--</span><span style='color:#00dddd'>--</span><span style='color:#00dddd'>--</span><span style='color:#00dddd'>-</span> <span style='color:#00dddd'>--</span><span style='color:#00dddd'>--</span><span style='color:#00dddd'>--</span><span style='color:#00dddd'>--</span><span style='color:#00dddd'>--</span><span style='color:#00dddd'>-</span>                     <span style='color:#00dddd'>--</span><span style='color:#00dddd'>--</span><span style='color:#00dddd'>--</span><span style='color:#00dddd'>--</span><span style='color:#00dddd'>--</span><span style='color:#00dddd'>--</span><span style='color:#00dddd'>--</span><span style='color:#00dddd'>-</span>                 <span style='color:#00dddd'>--</span><span style='color:#00dddd'>--</span><span style='color:#00dddd'>--</span><span style='color:#00dddd'>--</span><span style='color:#00dddd'>--</span><span style='color:#00dddd'>--</span><span style='color:#00dddd'>--</span>
<span style='color:#005fd2'>594274b1-9e6f-45aa-b912-9ddb3797b57c</span>       <span style='color:#00c4c4'>False</span>         <span style='color:#00c4c4'>False</span> <span style='color:#009f00'>60.81</span> <span style='color:#00c4c4'>GB</span> <span style='color:#d2cd86'>(</span><span style='color:#008c00'>65</span><span style='color:#00dddd'>,</span><span style='color:#008c00'>289</span><span style='color:#00dddd'>,</span><span style='color:#008c00'>171</span><span style='color:#00dddd'>,</span><span style='color:#008c00'>556</span> bytes<span style='color:#d2cd86'>)</span> <span style='color:#009f00'>15.13</span> <span style='color:#00c4c4'>GB</span> <span style='color:#d2cd86'>(</span><span style='color:#008c00'>16</span><span style='color:#00dddd'>,</span><span style='color:#008c00'>247</span><span style='color:#00dddd'>,</span><span style='color:#008c00'>652</span><span style='color:#00dddd'>,</span><span style='color:#008c00'>352</span> bytes<span style='color:#d2cd86'>)</span> <span style='color:#009f00'>532.7</span> <span style='color:#00c4c4'>KB</span> <span style='color:#d2cd86'>(</span><span style='color:#008c00'>545</span><span style='color:#00dddd'>,</span><span style='color:#008c00'>501</span> bytes<span style='color:#d2cd86'>)</span>
</pre>

<strong>Get-TotalItemCount</strong>
This command returns the total number of items contained within the MAPI message table.

<pre style='color:#d1d1d1;background:#000000'><span style='color:#005fd2'>Get-TotalItemCount</span> -PrimarySmtp <span style='color:#00c4c4'>someone@contoso.com</span>
<span style='color:#008c00'>250194</span>
<span style='color:#005fd2'>Get-TotalItemCount</span> -PrimarySmtp <span style='color:#00c4c4'>someone@contoso.com</span> -IncludeArchive
<span style='color:#008c00'>1249282</span>
</pre>

<strong>Get-TransportSendMomtEvents</strong>
This command looks for the MOMT events from a client (e.g.: Outlook) submission to StoreDriver.

<pre style='color:#d1d1d1;background:#000000'><span style='color:#005fd2'>Get-TransportSendMomtEvents</span> -SenderSmtpAddress <span style='color:#00c4c4'>someone@contoso.com</span> -MessageId <span style='color:#02d045'>"</span><span style='color:#00c4c4'>&lt;4810ce213bfc4cd7af8b9421e7266e7f@server.contoso.com&gt;</span><span style='color:#02d045'>"</span> <span style='color:#904050'>|</span> <span style='color:#005fd2'>FT</span> -AutoSize
<span style='color:#005fd2'>WARNING:</span> <span style='color:#00c4c4'>This</span> <span style='color:#00c4c4'>command</span> <span style='color:#00c4c4'>will</span> <span style='color:#00c4c4'>take</span> <span style='color:#00c4c4'>some</span> <span style='color:#00c4c4'>time</span> <span style='color:#00c4c4'>to</span> <span style='color:#00c4c4'>complete.</span> <span style='color:#00c4c4'>Please</span> <span style='color:#00c4c4'>be</span> <span style='color:#00c4c4'>patient.</span>

  <span style='color:#005fd2'>Counter</span> <span style='color:#00c4c4'>ItemType</span>     <span style='color:#00c4c4'>EventName</span>     <span style='color:#00c4c4'>ObjectClass</span> <span style='color:#00c4c4'>MailboxGuid</span>                          <span style='color:#00c4c4'>ClientCategory</span> <span style='color:#00c4c4'>ParentEntryId</span>
  <span style='color:#00dddd'>--</span><span style='color:#00dddd'>--</span><span style='color:#00dddd'>--</span><span style='color:#00dddd'>-</span> <span style='color:#00dddd'>--</span><span style='color:#00dddd'>--</span><span style='color:#00dddd'>--</span><span style='color:#00dddd'>--</span>     <span style='color:#00dddd'>--</span><span style='color:#00dddd'>--</span><span style='color:#00dddd'>--</span><span style='color:#00dddd'>--</span><span style='color:#00dddd'>-</span>     <span style='color:#00dddd'>--</span><span style='color:#00dddd'>--</span><span style='color:#00dddd'>--</span><span style='color:#00dddd'>--</span><span style='color:#00dddd'>--</span><span style='color:#00dddd'>-</span> <span style='color:#00dddd'>--</span><span style='color:#00dddd'>--</span><span style='color:#00dddd'>--</span><span style='color:#00dddd'>--</span><span style='color:#00dddd'>--</span><span style='color:#00dddd'>-</span>                          <span style='color:#00dddd'>--</span><span style='color:#00dddd'>--</span><span style='color:#00dddd'>--</span><span style='color:#00dddd'>--</span><span style='color:#00dddd'>--</span><span style='color:#00dddd'>--</span><span style='color:#00dddd'>--</span> <span style='color:#00dddd'>--</span><span style='color:#00dddd'>--</span><span style='color:#00dddd'>--</span><span style='color:#00dddd'>--</span><span style='color:#00dddd'>--</span><span style='color:#00dddd'>--</span>-
<span style='color:#008c00'>172362630</span> MAPI_MESSAGE ObjectCreated IPM<span style='color:#00dddd'>.</span><span style='color:#005fd2'>Note</span>    594274b1<span style='color:#00dddd'>-</span>9e6f<span style='color:#00dddd'>-</span>45aa-b912<span style='color:#00dddd'>-</span>9ddb3797b57c MOMT           000000004435FCF3C07DBE4F974F9D7A807901D00100BDCAB4A4117C7547B38E0314FA2AF58900000000000D0000
<span style='color:#008c00'>172362631</span> MAPI_MESSAGE ObjectCreated IPM<span style='color:#00dddd'>.</span><span style='color:#005fd2'>Note</span>    594274b1<span style='color:#00dddd'>-</span>9e6f<span style='color:#00dddd'>-</span>45aa-b912<span style='color:#00dddd'>-</span>9ddb3797b57c MOMT           000000004435FCF3C07DBE4F974F9D7A807901D00100BDCAB4A4117C7547B38E0314FA2AF589000000000BE80000
<span style='color:#008c00'>172362632</span> MAPI_MESSAGE ObjectCreated IPM<span style='color:#00dddd'>.</span><span style='color:#005fd2'>Note</span>    594274b1<span style='color:#00dddd'>-</span>9e6f<span style='color:#00dddd'>-</span>45aa-b912<span style='color:#00dddd'>-</span>9ddb3797b57c MOMT           000000004435FCF3C07DBE4F974F9D7A807901D00100BDCAB4A4117C7547B38E0314FA2AF58900009B0A1F4A0000
<span style='color:#008c00'>172362636</span> MAPI_MESSAGE MailSubmitted IPM<span style='color:#00dddd'>.</span><span style='color:#005fd2'>Note</span>    594274b1<span style='color:#00dddd'>-</span>9e6f<span style='color:#00dddd'>-</span>45aa-b912<span style='color:#00dddd'>-</span>9ddb3797b57c MOMT           000000004435FCF3C07DBE4F974F9D7A807901D00100BDCAB4A4117C7547B38E0314FA2AF58900000000000D0000
<span style='color:#008c00'>172362645</span> MAPI_MESSAGE ObjectDeleted IPM<span style='color:#00dddd'>.</span><span style='color:#005fd2'>Note</span>    594274b1<span style='color:#00dddd'>-</span>9e6f<span style='color:#00dddd'>-</span>45aa-b912<span style='color:#00dddd'>-</span>9ddb3797b57c Transport      000000004435FCF3C07DBE4F974F9D7A807901D00100BDCAB4A4117C7547B38E0314FA2AF58900000000000D0000
<span style='color:#008c00'>172362646</span> MAPI_MESSAGE ObjectDeleted IPM<span style='color:#00dddd'>.</span><span style='color:#005fd2'>Note</span>    594274b1<span style='color:#00dddd'>-</span>9e6f<span style='color:#00dddd'>-</span>45aa-b912<span style='color:#00dddd'>-</span>9ddb3797b57c Transport      000000004435FCF3C07DBE4F974F9D7A807901D00100BDCAB4A4117C7547B38E0314FA2AF589000000000BE80000
<span style='color:#008c00'>172362647</span> MAPI_MESSAGE ObjectDeleted IPM<span style='color:#00dddd'>.</span><span style='color:#005fd2'>Note</span>    594274b1<span style='color:#00dddd'>-</span>9e6f<span style='color:#00dddd'>-</span>45aa-b912<span style='color:#00dddd'>-</span>9ddb3797b57c Transport      000000004435FCF3C07DBE4F974F9D7A807901D00100BDCAB4A4117C7547B38E0314FA2AF58900009B0A1F4A0000
</pre>

<strong>Get-ActiveUserCount</strong>
This command checks the perf counters of a specified server for both RPC and OWA user counters.

<pre style='color:#d1d1d1;background:#000000'><span style='color:#005fd2'>Get-ActiveUserCount</span> -Server <span style='color:#00c4c4'>SERVER</span>

<span style='color:#005fd2'>ComputerName</span>   	<span style='color:#00c4c4'>ListSet</span>                    <span style='color:#00c4c4'>Source</span>               <span style='color:#00c4c4'>Value</span>
<span style='color:#00dddd'>--</span><span style='color:#00dddd'>--</span><span style='color:#00dddd'>--</span><span style='color:#00dddd'>--</span><span style='color:#00dddd'>--</span><span style='color:#00dddd'>--</span>   	<span style='color:#00dddd'>--</span><span style='color:#00dddd'>--</span><span style='color:#00dddd'>--</span><span style='color:#00dddd'>-</span>                    <span style='color:#00dddd'>--</span><span style='color:#00dddd'>--</span><span style='color:#00dddd'>--</span>               <span style='color:#00dddd'>--</span><span style='color:#00dddd'>--</span>-
<span style='color:#005fd2'>SERVER</span> 		<span style='color:#00c4c4'>MSExchange</span> <span style='color:#00c4c4'>RpcClientAccess</span> <span style='color:#00c4c4'>Active</span> <span style='color:#00c4c4'>User</span> <span style='color:#00c4c4'>Count</span>        <span style='color:#008c00'>2</span>
<span style='color:#005fd2'>SERVER</span> 		<span style='color:#00c4c4'>MSExchange</span> <span style='color:#00c4c4'>OWA</span>             <span style='color:#00c4c4'>Current</span> <span style='color:#00c4c4'>Unique</span> <span style='color:#00c4c4'>Users</span>     <span style='color:#008c00'>1</span>
</pre>

<strong>Get-FailedHeathSetItems</strong>
This command obtains only the failed HealthSet entries from a query against the server.

<pre style='color:#d1d1d1;background:#000000'><span style='color:#005fd2'>Get-FailedHeathSetItems</span> -Server $Server -HealthSet <span style='color:#00c4c4'>OWA</span> <span style='color:#904050'>|</span> <span style='color:#005fd2'>FT</span> -AutoSize

<span style='color:#005fd2'>Server</span>       <span style='color:#00c4c4'>State</span>         <span style='color:#00c4c4'>Name</span>                          <span style='color:#00c4c4'>TargetResource</span> <span style='color:#00c4c4'>HealthSetName</span> <span style='color:#00c4c4'>AlertValue</span> <span style='color:#00c4c4'>ServerComponent</span>
<span style='color:#00dddd'>--</span><span style='color:#00dddd'>--</span><span style='color:#00dddd'>--</span>       <span style='color:#00dddd'>--</span><span style='color:#00dddd'>--</span><span style='color:#00dddd'>-</span>         <span style='color:#00dddd'>--</span><span style='color:#00dddd'>--</span>                          <span style='color:#00dddd'>--</span><span style='color:#00dddd'>--</span><span style='color:#00dddd'>--</span><span style='color:#00dddd'>--</span><span style='color:#00dddd'>--</span><span style='color:#00dddd'>--</span><span style='color:#00dddd'>--</span> <span style='color:#00dddd'>--</span><span style='color:#00dddd'>--</span><span style='color:#00dddd'>--</span><span style='color:#00dddd'>--</span><span style='color:#00dddd'>--</span><span style='color:#00dddd'>--</span><span style='color:#00dddd'>-</span> <span style='color:#00dddd'>--</span><span style='color:#00dddd'>--</span><span style='color:#00dddd'>--</span><span style='color:#00dddd'>--</span><span style='color:#00dddd'>--</span> <span style='color:#00dddd'>--</span><span style='color:#00dddd'>--</span><span style='color:#00dddd'>--</span><span style='color:#00dddd'>--</span><span style='color:#00dddd'>--</span><span style='color:#00dddd'>--</span><span style='color:#00dddd'>--</span>-
<span style='color:#005fd2'>SERVER</span> 	     <span style='color:#00c4c4'>NotApplicable</span> <span style='color:#00c4c4'>MaintenanceFailureMonitor.OWA</span>                <span style='color:#00c4c4'>OWA</span>           <span style='color:#00c4c4'>Unhealthy</span>  <span style='color:#00c4c4'>None</span>
</pre>

<strong>Get-UserFromSid</strong>
This command converts any SID you provide it to a NT Account (e.g.: Forest\user), as long as the SID is discover-able in AD.

<pre style='color:#d1d1d1;background:#000000'><span style='color:#005fd2'>Get-UserFromSid</span> -Sid <span style='color:#00c4c4'>S-1-5-21-2127521184-1604012920-1887927527-8406844</span>
<span style='color:#005fd2'>Domain\User</span>
<span style='color:#005fd2'>Get-UserFromSid</span> -Sid <span style='color:#00c4c4'>S-1-5-21-2014436394-2366853861-4082801726-2365144</span>
<span style='color:#005fd2'>Domain\User2</span>
</pre>

<strong>Restart-ServiceOnAllNodes</strong>
This command will restart a service you specify across all nodes in a DAG (Database Availability Group).

<pre style='color:#d1d1d1;background:#000000'><span style='color:#005fd2'>Restart-ServiceOnAllNodes</span> -Dag <span style='color:#00c4c4'>DAG1</span> -Service <span style='color:#00c4c4'>MSExchangeMailboxAssistants</span>
<span style='color:#005fd2'>WARNING:</span> <span style='color:#00c4c4'>The</span> <span style='color:#00c4c4'>MSExchangeMailboxAssistants</span> <span style='color:#00c4c4'>service</span> <span style='color:#00c4c4'>on</span> <span style='color:#00c4c4'>SERVER1</span> <span style='color:#00c4c4'>is</span> <span style='color:#00c4c4'>stopping.</span>
<span style='color:#005fd2'>WARNING:</span> <span style='color:#00c4c4'>The</span> <span style='color:#00c4c4'>MSExchangeMailboxAssistants</span> <span style='color:#00c4c4'>service</span> <span style='color:#00c4c4'>on</span> <span style='color:#00c4c4'>SERVER1</span> <span style='color:#00c4c4'>is</span> <span style='color:#00c4c4'>starting.</span>
<span style='color:#005fd2'>WARNING:</span> <span style='color:#00c4c4'>The</span> <span style='color:#00c4c4'>MSExchangeMailboxAssistants</span> <span style='color:#00c4c4'>service</span> <span style='color:#00c4c4'>on</span> <span style='color:#00c4c4'>SERVER1</span> <span style='color:#00c4c4'>is</span> <span style='color:#00c4c4'>starting.</span>
<span style='color:#005fd2'>WARNING:</span> <span style='color:#00c4c4'>The</span> <span style='color:#00c4c4'>MSExchangeMailboxAssistants</span> <span style='color:#00c4c4'>service</span> <span style='color:#00c4c4'>on</span> <span style='color:#00c4c4'>SERVER1</span> <span style='color:#00c4c4'>is</span> <span style='color:#00c4c4'>starting.</span>
<span style='color:#005fd2'>WARNING:</span> <span style='color:#00c4c4'>The</span> <span style='color:#00c4c4'>MSExchangeMailboxAssistants</span> <span style='color:#00c4c4'>service</span> <span style='color:#00c4c4'>on</span> <span style='color:#00c4c4'>SERVER1</span> <span style='color:#00c4c4'>is</span> <span style='color:#00c4c4'>starting.</span>
<span style='color:#005fd2'>WARNING:</span> <span style='color:#00c4c4'>The</span> <span style='color:#00c4c4'>MSExchangeMailboxAssistants</span> <span style='color:#00c4c4'>service</span> <span style='color:#00c4c4'>on</span> <span style='color:#00c4c4'>SERVER1</span> <span style='color:#00c4c4'>is</span> <span style='color:#00c4c4'>starting.</span>
<span style='color:#005fd2'>WARNING:</span> <span style='color:#00c4c4'>The</span> <span style='color:#00c4c4'>MSExchangeMailboxAssistants</span> <span style='color:#00c4c4'>service</span> <span style='color:#00c4c4'>on</span> <span style='color:#00c4c4'>SERVER1</span> <span style='color:#00c4c4'>is</span> <span style='color:#00c4c4'>starting.</span>
<span style='color:#005fd2'>WARNING:</span> <span style='color:#00c4c4'>The</span> <span style='color:#00c4c4'>MSExchangeMailboxAssistants</span> <span style='color:#00c4c4'>service</span> <span style='color:#00c4c4'>on</span> <span style='color:#00c4c4'>SERVER2</span> <span style='color:#00c4c4'>is</span> <span style='color:#00c4c4'>starting.</span>
<span style='color:#005fd2'>WARNING:</span> <span style='color:#00c4c4'>The</span> <span style='color:#00c4c4'>MSExchangeMailboxAssistants</span> <span style='color:#00c4c4'>service</span> <span style='color:#00c4c4'>on</span> <span style='color:#00c4c4'>SERVER2</span> <span style='color:#00c4c4'>is</span> <span style='color:#00c4c4'>starting.</span>
</pre>

<strong>Start-DatabaseReseed</strong>
This command attempts to reseed a database from the mounted copy; which is the preferred (recommended) way to reseed a database, so that a fail-over copy is available for HA (assuming more than two copies exist).

<pre style='color:#d1d1d1;background:#000000'><span style='color:#005fd2'>Start-DatabaseReseed</span> -DatabaseCopy $Copy -DeleteExistingFiles<span style='color:#00dddd'>:</span><span style='color:#007d45'>$TRUE</span>
</pre>

<strong>Test-ClientOwaEndPoints</strong>
This command obtains the IP address entries for the name specified and attempts to perform an HTTP request against OWA.

<pre style='color:#d1d1d1;background:#000000'><span style='color:#005fd2'>Test-ClientOwaEndPoints</span> <span style='color:#00c4c4'>mail.contoso.com</span> <span style='color:#904050'>|</span> <span style='color:#005fd2'>FT</span> -AutoSize

<span style='color:#005fd2'>IpAddress</span>   <span style='color:#00c4c4'>OwaStatusCode</span>
<span style='color:#00dddd'>--</span><span style='color:#00dddd'>--</span><span style='color:#00dddd'>--</span><span style='color:#00dddd'>--</span><span style='color:#00dddd'>-</span>   <span style='color:#00dddd'>--</span><span style='color:#00dddd'>--</span><span style='color:#00dddd'>--</span><span style='color:#00dddd'>--</span><span style='color:#00dddd'>--</span><span style='color:#00dddd'>--</span>-
<span style='color:#009f00'>38.96</span>.<span style='color:#009f00'>29.10</span>        Unused
<span style='color:#009f00'>38.96</span>.<span style='color:#009f00'>29.10</span>        Unused
</pre>

<strong>Test-TcpConnectivity</strong>
This command uses the basic .NET TcpClient to make a TCP connection to the specified host on the specified port.

<pre style='color:#d1d1d1;background:#000000'><span style='color:#005fd2'>Test-TcpConnectivity</span> -Endpoint <span style='color:#00c4c4'>mail.contoso.com</span> -Port <span style='color:#008c00'>25</span>
<span style='color:#005fd2'>True</span>
<span style='color:#005fd2'>Test-TcpConnectivity</span> -Endpoint <span style='color:#00c4c4'>mail.contoso.com</span> -Port <span style='color:#008c00'>443</span>
<span style='color:#005fd2'>True</span>
<span style='color:#005fd2'>Test-TcpConnectivity</span> -Endpoint <span style='color:#00c4c4'>mail.contoso.com</span> -Port <span style='color:#008c00'>444</span>
<span style='color:#005fd2'>Exception</span> <span style='color:#00c4c4'>Caught:</span> <span style='color:#00c4c4'>No</span> <span style='color:#00c4c4'>connection</span> <span style='color:#00c4c4'>could</span> <span style='color:#00c4c4'>be</span> <span style='color:#00c4c4'>made</span> <span style='color:#00c4c4'>because</span> <span style='color:#00c4c4'>the</span> <span style='color:#00c4c4'>target</span> <span style='color:#00c4c4'>machine</span> <span style='color:#00c4c4'>actively</span> <span style='color:#00c4c4'>refused</span> <span style='color:#00c4c4'>it</span> <span style='color:#009f00'>10.221</span><span style='color:#00c4c4'>.254.5:444</span>
</pre>

<strong>Show-NetlogonImpact</strong>
This command shows the Netlogon counters for a specified machine.


<pre style='color:#d1d1d1;background:#000000'><span style='color:#005fd2'>Show-NetlogonImpact</span> -Server <span style='color:#00c4c4'>SERVER</span> -Intervals <span style='color:#008c00'>3</span>

<span style='color:#005fd2'>ComputerName</span>   <span style='color:#00c4c4'>Source</span>             <span style='color:#00c4c4'>Value</span>
<span style='color:#00dddd'>--</span><span style='color:#00dddd'>--</span><span style='color:#00dddd'>--</span><span style='color:#00dddd'>--</span><span style='color:#00dddd'>--</span><span style='color:#00dddd'>--</span>   <span style='color:#00dddd'>--</span><span style='color:#00dddd'>--</span><span style='color:#00dddd'>--</span>             <span style='color:#00dddd'>--</span><span style='color:#00dddd'>--</span>-
<span style='color:#005fd2'>SERVER</span> 		<span style='color:#00c4c4'>Semaphore</span> <span style='color:#00c4c4'>Waiters</span>      <span style='color:#008c00'>0</span>
<span style='color:#005fd2'>SERVER</span> 		<span style='color:#00c4c4'>Semaphore</span> <span style='color:#00c4c4'>Holders</span>      <span style='color:#008c00'>0</span>
<span style='color:#005fd2'>SERVER</span> 		<span style='color:#00c4c4'>Semaphore</span> <span style='color:#00c4c4'>TimeOuts</span>     <span style='color:#008c00'>0</span>
<span style='color:#005fd2'>SERVER</span> 		<span style='color:#00c4c4'>Semaphore</span> <span style='color:#00c4c4'>Acquires</span> <span style='color:#008c00'>48614</span>

<span style='color:#005fd2'>SERVER</span> 		<span style='color:#00c4c4'>Semaphore</span> <span style='color:#00c4c4'>Holders</span>      <span style='color:#008c00'>0</span>
<span style='color:#005fd2'>SERVER</span> 		<span style='color:#00c4c4'>Semaphore</span> <span style='color:#00c4c4'>TimeOuts</span>     <span style='color:#008c00'>0</span>
<span style='color:#005fd2'>SERVER</span> 		<span style='color:#00c4c4'>Semaphore</span> <span style='color:#00c4c4'>Waiters</span>      <span style='color:#008c00'>0</span>
<span style='color:#005fd2'>SERVER</span> 		<span style='color:#00c4c4'>Semaphore</span> <span style='color:#00c4c4'>Acquires</span> <span style='color:#008c00'>48616</span>

<span style='color:#005fd2'>SERVER</span> 		<span style='color:#00c4c4'>Semaphore</span> <span style='color:#00c4c4'>Waiters</span>      <span style='color:#008c00'>0</span>
<span style='color:#005fd2'>SERVER</span> 		<span style='color:#00c4c4'>Semaphore</span> <span style='color:#00c4c4'>Acquires</span> <span style='color:#008c00'>48616</span>
<span style='color:#005fd2'>SERVER</span> 		<span style='color:#00c4c4'>Semaphore</span> <span style='color:#00c4c4'>TimeOuts</span>     <span style='color:#008c00'>0</span>
<span style='color:#005fd2'>SERVER</span> 		<span style='color:#00c4c4'>Semaphore</span> <span style='color:#00c4c4'>Holders</span>      <span style='color:#008c00'>0</span>
</pre>

<strong>Download</strong>
To download the assembly, please visit the TechNet Gallery <a href="https://gallery.technet.microsoft.com/EXOD-PowerShell-Snap-In-ccb00471">here</a>.]]></content:encoded>
    </item>
    <item>
      <title>C# + AD: Dump COM and Use System.DirectoryServices.Protocols with LINQ to Query AD</title>
      <link>https://docs.microsoft.com/archive/blogs/johnbai/c-ad-dump-com-and-use-system-directoryservices-protocols-with-linq-to</link>
      <pubDate>Mon, 25 Apr 2016 15:23:24 GMT</pubDate>
      <dc:creator><![CDATA[John Bailey [MSFT]]]></dc:creator>
      <guid
        isPermaLink="false">https://blogs.technet.microsoft.com/johnbai/?p=1005</guid>
      <description><![CDATA[A while back, I posted about using ADSI COM to get the data that you wanted. I want to show you how...]]></description>
      <content:encoded><![CDATA[A while back, I posted about using ADSI COM to get the data that you wanted. I want to show you how you can do this 10 times faster, using System.DirectoryServices.Protocols and LINQ.

Class for the actual AD query being performed:

<pre style='color:#d1d1d1;background:#000000'>
    <span style='color:#9999a9'>/// &lt;summary&gt;</span>
    <span style='color:#9999a9'>/// Initializes a new instance of the &lt;see cref="LdapSearcher"/&gt; class.</span>
    <span style='color:#9999a9'>/// &lt;/summary&gt;</span>
    <span style='color:#e66170;font-weight:bold'>internal</span> <span style='color:#e66170;font-weight:bold'>class</span> LdapSearcher
    <span style='color:#b060b0'>{</span>
        <span style='color:#9999a9'>/// &lt;summary&gt;</span>
        <span style='color:#9999a9'>/// Initializes a new instance of the &lt;see cref="SearchTheForestTask"/&gt; method.</span>
        <span style='color:#9999a9'>/// &lt;/summary&gt;</span>
        <span style='color:#9999a9'>/// &lt;param name="filter"&gt;The filter to use for the LDAP query.&lt;/param&gt;</span>
        <span style='color:#9999a9'>/// &lt;param name="sizeLimit"&gt;The limit of return objects for the query.&lt;/param&gt;</span>
        <span style='color:#9999a9'>/// &lt;param name="configContainer"&gt;&lt;/param&gt;</span>
        <span style='color:#9999a9'>/// &lt;returns&gt;&lt;/returns&gt;</span>
        <span style='color:#e66170;font-weight:bold'>public</span> <span style='color:#e66170;font-weight:bold'>static</span> async Task<span style='color:#d2cd86'>&lt;</span>SearchResponse<span style='color:#d2cd86'>&gt;</span> SearchTheForestTask<span style='color:#d2cd86'>(</span><span style='color:#e66170;font-weight:bold'>string</span> filter<span style='color:#d2cd86'>,</span> <span style='color:#e66170;font-weight:bold'>int</span>? sizeLimit<span style='color:#d2cd86'>,</span> <span style='color:#e66170;font-weight:bold'>bool</span> configContainer<span style='color:#d2cd86'>)</span>
        <span style='color:#b060b0'>{</span>
            <span style='color:#9999a9'>// More information on the return statement can be found here: </span><span style='color:#6070ec'>https://msdn.microsoft.com/en-us/library/1h3swy84.aspx</span>
            <span style='color:#9999a9'>// More information on the async/await keywords can be found here: </span><span style='color:#6070ec'>https://msdn.microsoft.com/en-us/library/hh191443.aspx</span>
            <span style='color:#9999a9'>// More information on the Task&lt;TResult&gt;.Run() method can be found here: </span><span style='color:#6070ec'>https://msdn.microsoft.com/en-us/library/hh160382</span><span style='color:#9999a9'>(v=vs.110).aspx</span>
            <span style='color:#e66170;font-weight:bold'>return</span> await Task<span style='color:#d2cd86'>.</span>Run<span style='color:#d2cd86'>(</span>async <span style='color:#9999a9'>/* Run on asynchronous thread so we don't block. */</span>
                <span style='color:#d2cd86'>(</span><span style='color:#d2cd86'>)</span> <span style='color:#d2cd86'>=</span><span style='color:#d2cd86'>&gt;</span>
                <span style='color:#b060b0'>{</span>
                    <span style='color:#9999a9'>// More information on the return statement can be found here: </span><span style='color:#6070ec'>https://msdn.microsoft.com/en-us/library/1h3swy84.aspx</span>
                    <span style='color:#9999a9'>// More information on the async/await keywords can be found here: </span><span style='color:#6070ec'>https://msdn.microsoft.com/en-us/library/hh191443.aspx</span>
                    <span style='color:#9999a9'>// More information on the Task&lt;TResult&gt;.Run() method can be found here: </span><span style='color:#6070ec'>https://msdn.microsoft.com/en-us/library/hh160382</span><span style='color:#9999a9'>(v=vs.110).aspx</span>
                    <span style='color:#e66170;font-weight:bold'>return</span> await Task<span style='color:#d2cd86'>.</span>Run<span style='color:#d2cd86'>(</span><span style='color:#d2cd86'>(</span><span style='color:#d2cd86'>)</span> <span style='color:#d2cd86'>=</span><span style='color:#d2cd86'>&gt;</span> SearchTheForest<span style='color:#d2cd86'>(</span>filter<span style='color:#d2cd86'>,</span> sizeLimit<span style='color:#d2cd86'>,</span> configContainer<span style='color:#d2cd86'>)</span><span style='color:#d2cd86'>)</span><span style='color:#b060b0'>;</span>
                <span style='color:#b060b0'>}</span><span style='color:#d2cd86'>)</span><span style='color:#b060b0'>;</span>
        <span style='color:#b060b0'>}</span>

        <span style='color:#9999a9'>/// &lt;summary&gt;</span>
        <span style='color:#9999a9'>/// Initializes a new instance of the &lt;see cref="SearchTheForest"/&gt; method.</span>
        <span style='color:#9999a9'>/// &lt;/summary&gt;</span>
        <span style='color:#9999a9'>/// &lt;param name="filter"&gt;The filter to use for the LDAP query.&lt;/param&gt;</span>
        <span style='color:#9999a9'>/// &lt;param name="sizeLimit"&gt;The limit of return objects for the query.&lt;/param&gt;</span>
        <span style='color:#9999a9'>/// &lt;param name="configContainer"&gt;&lt;/param&gt;</span>
        <span style='color:#9999a9'>/// &lt;returns&gt;&lt;/returns&gt;</span>
        <span style='color:#e66170;font-weight:bold'>private</span> <span style='color:#e66170;font-weight:bold'>static</span> SearchResponse SearchTheForest<span style='color:#d2cd86'>(</span><span style='color:#e66170;font-weight:bold'>string</span> filter<span style='color:#d2cd86'>,</span> <span style='color:#e66170;font-weight:bold'>int</span>? sizeLimit<span style='color:#d2cd86'>,</span> <span style='color:#e66170;font-weight:bold'>bool</span> configContainer<span style='color:#d2cd86'>)</span>
        <span style='color:#b060b0'>{</span>
            <span style='color:#e66170;font-weight:bold'>string</span> targetServer <span style='color:#d2cd86'>=</span> Domain<span style='color:#d2cd86'>.</span>GetComputerDomain<span style='color:#d2cd86'>(</span><span style='color:#d2cd86'>)</span><span style='color:#d2cd86'>.</span>FindDomainController<span style='color:#d2cd86'>(</span><span style='color:#d2cd86'>)</span><span style='color:#d2cd86'>.</span>Name<span style='color:#b060b0'>;</span>

            <span style='color:#9999a9'>// We can't await a Task to get RootDSE via async or it may execute AFTER we need it.</span>
            DirectoryEntry rootDse <span style='color:#d2cd86'>=</span> <span style='color:#e66170;font-weight:bold'>new</span> DirectoryEntry<span style='color:#d2cd86'>(</span><span style='color:#02d045'>"</span><span style='color:#00c4c4'>LDAP://RootDSE</span><span style='color:#02d045'>"</span><span style='color:#d2cd86'>)</span>
            <span style='color:#b060b0'>{</span>
                <span style='color:#9999a9'>// More information on the DirectoryEntry.AuthenticationType property can be found here: </span><span style='color:#6070ec'>https://msdn.microsoft.com/en-us/library/system.directoryservices.directoryentry.authenticationtype</span><span style='color:#9999a9'>(v=vs.110).aspx</span>
                <span style='color:#9999a9'>// More information on the AuthenticationTypes enumeration can be found here: </span><span style='color:#6070ec'>https://msdn.microsoft.com/en-us/library/system.directoryservices.authenticationtypes</span><span style='color:#9999a9'>(v=vs.110).aspx</span>
                AuthenticationType <span style='color:#d2cd86'>=</span> AuthenticationTypes<span style='color:#d2cd86'>.</span>Encryption
            <span style='color:#b060b0'>}</span><span style='color:#b060b0'>;</span>

            <span style='color:#e66170;font-weight:bold'>string</span> searchRoot <span style='color:#d2cd86'>=</span> AdMethods<span style='color:#d2cd86'>.</span>GetSearchRootTask<span style='color:#d2cd86'>(</span>rootDse<span style='color:#d2cd86'>,</span> configContainer<span style='color:#d2cd86'>)</span><span style='color:#d2cd86'>.</span>Result<span style='color:#b060b0'>;</span>

            <span style='color:#9999a9'>// We instantiate the object to clear data.</span>
            Ad<span style='color:#d2cd86'>.</span>NewSearchResponse <span style='color:#d2cd86'>=</span> <span style='color:#e66170;font-weight:bold'>null</span><span style='color:#b060b0'>;</span>

            <span style='color:#9999a9'>// If the size limit isn't defined, we set it to 1k.</span>
            <span style='color:#e66170;font-weight:bold'>int</span> pageSize <span style='color:#d2cd86'>=</span> sizeLimit ?? <span style='color:#008c00'>1000</span><span style='color:#b060b0'>;</span>

            <span style='color:#9999a9'>// We specify the page size so that we don't break all the things.</span>
            <span style='color:#9999a9'>// More information on the PageResultRequestControl class can be found here: </span><span style='color:#6070ec'>https://msdn.microsoft.com/en-us/library/system.directoryservices.protocols.pageresultrequestcontrol</span><span style='color:#9999a9'>(v=vs.100).aspx</span>
            PageResultRequestControl newPageResultRequestControl <span style='color:#d2cd86'>=</span> <span style='color:#e66170;font-weight:bold'>new</span> PageResultRequestControl<span style='color:#d2cd86'>(</span>pageSize<span style='color:#d2cd86'>)</span><span style='color:#b060b0'>;</span>

            <span style='color:#9999a9'>// We include deleted objects in the search.</span>
            <span style='color:#9999a9'>// More information on the ShowDeletedControl class can be found here: </span><span style='color:#6070ec'>https://msdn.microsoft.com/en-us/library/system.directoryservices.protocols.showdeletedcontrol</span><span style='color:#9999a9'>(v=vs.110).aspx</span>
            ShowDeletedControl newShowDeletedControl <span style='color:#d2cd86'>=</span> <span style='color:#e66170;font-weight:bold'>new</span> ShowDeletedControl<span style='color:#d2cd86'>(</span><span style='color:#d2cd86'>)</span><span style='color:#b060b0'>;</span>
            
            <span style='color:#9999a9'>// Establish connection to the Directory.</span>
            LdapConnection newLdapConnection <span style='color:#d2cd86'>=</span> <span style='color:#e66170;font-weight:bold'>new</span> LdapConnection<span style='color:#d2cd86'>(</span>targetServer<span style='color:#d2cd86'>)</span><span style='color:#b060b0'>;</span>

            <span style='color:#9999a9'>// Create the Search Request.</span>
            <span style='color:#9999a9'>// More information on the SearchRequest class be found here: </span><span style='color:#6070ec'>https://msdn.microsoft.com/en-us/library/system.directoryservices.protocols.searchrequest</span><span style='color:#9999a9'>(v=vs.110).aspx</span>
            SearchRequest newSearchRequest <span style='color:#d2cd86'>=</span> <span style='color:#e66170;font-weight:bold'>new</span> SearchRequest
            <span style='color:#b060b0'>{</span>
                <span style='color:#9999a9'>// More information on the SearchRequest.Filter property can be found here: </span><span style='color:#6070ec'>https://msdn.microsoft.com/en-us/library/system.directoryservices.protocols.searchrequest.filter</span><span style='color:#9999a9'>(v=vs.110).aspx</span>
                Filter <span style='color:#d2cd86'>=</span> filter<span style='color:#d2cd86'>,</span>

                <span style='color:#9999a9'>// We specify the search root for the query. Don't let the documentation lie to you,</span>
                <span style='color:#9999a9'>// this property does not specify the object to query FOR.</span>
                <span style='color:#9999a9'>// More information on the SearchRequest.DistinguishedName property can be found here: </span><span style='color:#6070ec'>https://msdn.microsoft.com/en-us/library/system.directoryservices.protocols.searchrequest.distinguishedname</span><span style='color:#9999a9'>(v=vs.110).aspx</span>
                DistinguishedName <span style='color:#d2cd86'>=</span> searchRoot<span style='color:#d2cd86'>,</span>

                <span style='color:#9999a9'>// More information on the SearchRequest.Scope property can be found here: </span><span style='color:#6070ec'>https://msdn.microsoft.com/en-us/library/system.directoryservices.protocols.searchrequest.scope</span><span style='color:#9999a9'>(v=vs.110).aspx</span>
                <span style='color:#9999a9'>// More information on the SearchScope enumeration can be found here: </span><span style='color:#6070ec'>https://msdn.microsoft.com/en-us/library/system.directoryservices.searchscope</span><span style='color:#9999a9'>(v=vs.110).aspx</span>
                Scope <span style='color:#d2cd86'>=</span> System<span style='color:#d2cd86'>.</span>DirectoryServices<span style='color:#d2cd86'>.</span>Protocols<span style='color:#d2cd86'>.</span>SearchScope<span style='color:#d2cd86'>.</span>Subtree<span style='color:#d2cd86'>,</span>

                <span style='color:#9999a9'>// More information on the SearchRequest.TimeLimit property can be found here: </span><span style='color:#6070ec'>https://msdn.microsoft.com/en-us/library/system.directoryservices.protocols.searchrequest.timelimit</span><span style='color:#9999a9'>(v=vs.110).aspx</span>
                TimeLimit <span style='color:#d2cd86'>=</span> TimeSpanConstants<span style='color:#d2cd86'>.</span>OneMinuteTimeSpan<span style='color:#d2cd86'>,</span>

                <span style='color:#9999a9'>// More information on the SearchRequest.RequestId property can be found here: </span><span style='color:#6070ec'>https://msdn.microsoft.com/en-us/library/system.directoryservices.protocols.directoryrequest.requestid</span><span style='color:#9999a9'>(v=vs.110).aspx</span>
                RequestId <span style='color:#d2cd86'>=</span> GuidConstants<span style='color:#d2cd86'>.</span>RequestGuid<span style='color:#d2cd86'>.</span>ToString<span style='color:#d2cd86'>(</span><span style='color:#d2cd86'>)</span><span style='color:#d2cd86'>,</span>

                <span style='color:#9999a9'>// More information on the SearchRequest.Aliases property can be found here: </span><span style='color:#6070ec'>https://msdn.microsoft.com/en-us/library/system.directoryservices.protocols.searchrequest.aliases</span><span style='color:#9999a9'>(v=vs.110).aspx</span>
                <span style='color:#9999a9'>// More information on the DereferenceAlias enumeration can be found there: </span><span style='color:#6070ec'>https://msdn.microsoft.com/en-us/library/system.directoryservices.protocols.dereferencealias</span><span style='color:#9999a9'>(v=vs.100).aspx</span>
                Aliases <span style='color:#d2cd86'>=</span> System<span style='color:#d2cd86'>.</span>DirectoryServices<span style='color:#d2cd86'>.</span>Protocols<span style='color:#d2cd86'>.</span>DereferenceAlias<span style='color:#d2cd86'>.</span>Never<span style='color:#d2cd86'>,</span>

                <span style='color:#9999a9'>// More information on the SearchRequest.TypesOnly property can be found here: </span><span style='color:#6070ec'>https://msdn.microsoft.com/en-us/library/system.directoryservices.protocols.searchrequest.typesonly</span><span style='color:#9999a9'>(v=vs.110).aspx</span>
                TypesOnly <span style='color:#d2cd86'>=</span> <span style='color:#e66170;font-weight:bold'>false</span><span style='color:#d2cd86'>,</span>

                <span style='color:#9999a9'>// More information on the SearchRequest.Controls property can be found here: </span><span style='color:#6070ec'>https://msdn.microsoft.com/en-us/library/system.directoryservices.protocols.directoryrequest.controls</span><span style='color:#9999a9'>(v=vs.110).aspx</span>
                Controls <span style='color:#d2cd86'>=</span> <span style='color:#b060b0'>{</span> newPageResultRequestControl<span style='color:#d2cd86'>,</span> newShowDeletedControl <span style='color:#b060b0'>}</span>
            <span style='color:#b060b0'>}</span><span style='color:#b060b0'>;</span>
            <span style='color:#e66170;font-weight:bold'>if</span> <span style='color:#d2cd86'>(</span>sizeLimit<span style='color:#d2cd86'>.</span>HasValue<span style='color:#d2cd86'>)</span>
            <span style='color:#b060b0'>{</span>
                <span style='color:#9999a9'>// More information on the SearchRequest.SizeLimit property can be found here: </span><span style='color:#6070ec'>https://msdn.microsoft.com/en-us/library/system.directoryservices.protocols.searchrequest.sizelimit</span><span style='color:#9999a9'>(v=vs.110).aspx</span>
                newSearchRequest<span style='color:#d2cd86'>.</span>SizeLimit <span style='color:#d2cd86'>=</span> sizeLimit<span style='color:#d2cd86'>.</span>Value<span style='color:#b060b0'>;</span>
            <span style='color:#b060b0'>}</span>

            <span style='color:#9999a9'>// Since we're entering a critical section, let's lock so we block further calls.</span>
            <span style='color:#9999a9'>// More information on the lock keyword can be found here: </span><span style='color:#6070ec'>https://msdn.microsoft.com/en-us/library/c5kehkcz.aspx</span>
            <span style='color:#e66170;font-weight:bold'>lock</span> <span style='color:#d2cd86'>(</span>ObjectConstants<span style='color:#d2cd86'>.</span>NewLock<span style='color:#d2cd86'>)</span>
            <span style='color:#b060b0'>{</span>
                <span style='color:#9999a9'>// Enter the critical section.</span>
                <span style='color:#9999a9'>// More information on the try keyword can be found here: </span><span style='color:#6070ec'>https://msdn.microsoft.com/en-us/library/6dekhbbc.aspx</span>
                <span style='color:#e66170;font-weight:bold'>try</span>
                <span style='color:#b060b0'>{</span>
                    <span style='color:#9999a9'>// More information on the SearchResponse class can be found here: </span><span style='color:#6070ec'>https://msdn.microsoft.com/en-us/library/system.directoryservices.protocols.searchresponse</span><span style='color:#9999a9'>(v=vs.110).aspx</span>
                    <span style='color:#9999a9'>// More information on the LdapConnection.SendRequest(DirectoryRequest) method can be found here: </span><span style='color:#6070ec'>https://msdn.microsoft.com/en-us/library/system.directoryservices.protocols.ldapconnection.sendrequest</span><span style='color:#9999a9'>(v=vs.110).aspx</span>
                    Ad<span style='color:#d2cd86'>.</span>NewSearchResponse <span style='color:#d2cd86'>=</span> <span style='color:#d2cd86'>(</span>SearchResponse<span style='color:#d2cd86'>)</span> newLdapConnection<span style='color:#d2cd86'>.</span>SendRequest<span style='color:#d2cd86'>(</span>newSearchRequest<span style='color:#d2cd86'>,</span> TimeSpanConstants<span style='color:#d2cd86'>.</span>OneMinuteTimeSpan<span style='color:#d2cd86'>)</span><span style='color:#b060b0'>;</span>
                <span style='color:#b060b0'>}</span>
                <span style='color:#e66170;font-weight:bold'>catch</span> <span style='color:#d2cd86'>(</span>LdapException exception<span style='color:#d2cd86'>)</span>
                <span style='color:#b060b0'>{</span>
                    <span style='color:#9999a9'>// We throw the base exception so it can be unwound by the calling thread.</span>
                    <span style='color:#9999a9'>// More information on the Exception.GetBaseException() method can be found here: </span><span style='color:#6070ec'>https://msdn.microsoft.com/en-us/library/system.exception.getbaseexception</span><span style='color:#9999a9'>(v=vs.110).aspx</span>
                    <span style='color:#e66170;font-weight:bold'>throw</span> exception<span style='color:#d2cd86'>.</span>GetBaseException<span style='color:#d2cd86'>(</span><span style='color:#d2cd86'>)</span><span style='color:#b060b0'>;</span>
                <span style='color:#b060b0'>}</span>
            <span style='color:#b060b0'>}</span>

            <span style='color:#9999a9'>// Since we need to await completion, we pass a value back.</span>
            <span style='color:#9999a9'>// More information on the return statement can be found here: </span><span style='color:#6070ec'>https://msdn.microsoft.com/en-us/library/1h3swy84.aspx</span>
            <span style='color:#e66170;font-weight:bold'>return</span> Ad<span style='color:#d2cd86'>.</span>NewSearchResponse<span style='color:#b060b0'>;</span>
        <span style='color:#b060b0'>}</span>
    <span style='color:#b060b0'>}</span>
</pre>

The real magic - taking the return and using LINQ:

<pre style='color:#d1d1d1;background:#000000'>
           <span style='color:#d2cd86'>/</span><span style='color:#d2cd86'>/</span> More information on the TaskFactory class can be found here<span style='color:#d2cd86'>:</span> <span style='color:#6070ec'>https://msdn.microsoft.com/en-us/library/system.threading.tasks.taskfactory</span><span style='color:#d2cd86'>(</span>v<span style='color:#d2cd86'>=</span>vs<span style='color:#00a800'>.110</span><span style='color:#d2cd86'>)</span><span style='color:#d2cd86'>.</span>aspx
            TaskFactory<span style='color:#d2cd86'>&lt;</span>SearchResponse<span style='color:#d2cd86'>&gt;</span> newTaskFactory <span style='color:#d2cd86'>=</span> new TaskFactory<span style='color:#d2cd86'>&lt;</span>SearchResponse<span style='color:#d2cd86'>&gt;</span><span style='color:#d2cd86'>(</span><span style='color:#d2cd86'>)</span><span style='color:#d2cd86'>;</span>

            <span style='color:#d2cd86'>/</span><span style='color:#d2cd86'>/</span> More information on the using statement can be found here<span style='color:#d2cd86'>:</span> <span style='color:#6070ec'>https://msdn.microsoft.com/en-us/library/yh598w02.aspx</span>
            <span style='color:#d2cd86'>/</span><span style='color:#d2cd86'>/</span> More information on the Task<span style='color:#d2cd86'>&lt;</span>TResult<span style='color:#d2cd86'>&gt;</span> class can be found here<span style='color:#d2cd86'>:</span> <span style='color:#6070ec'>https://msdn.microsoft.com/en-us/library/dd321424</span><span style='color:#d2cd86'>(</span>v<span style='color:#d2cd86'>=</span>vs<span style='color:#00a800'>.110</span><span style='color:#d2cd86'>)</span><span style='color:#d2cd86'>.</span>aspx
            <span style='color:#d2cd86'>/</span><span style='color:#d2cd86'>/</span> More information on the TaskFactory<span style='color:#00a800'>.</span>StartNew<span style='color:#d2cd86'>(</span>Action<span style='color:#d2cd86'>)</span> method can be found here<span style='color:#d2cd86'>:</span> <span style='color:#6070ec'>https://msdn.microsoft.com/en-us/library/dd321439</span><span style='color:#d2cd86'>(</span>v<span style='color:#d2cd86'>=</span>vs<span style='color:#00a800'>.110</span><span style='color:#d2cd86'>)</span><span style='color:#d2cd86'>.</span>aspx
            using <span style='color:#d2cd86'>(</span>Task<span style='color:#d2cd86'>&lt;</span>SearchResponse<span style='color:#d2cd86'>&gt;</span> newTask <span style='color:#d2cd86'>=</span> newTaskFactory<span style='color:#00a800'>.</span>StartNew<span style='color:#d2cd86'>(</span><span style='color:#d2cd86'>(</span><span style='color:#d2cd86'>)</span> <span style='color:#d2cd86'>=</span><span style='color:#d2cd86'>&gt;</span> LdapSearcher<span style='color:#00a800'>.</span>SearchTheForestTask<span style='color:#d2cd86'>(</span>filter<span style='color:#d2cd86'>,</span> null<span style='color:#d2cd86'>,</span> false<span style='color:#d2cd86'>)</span><span style='color:#d2cd86'>.</span>Result<span style='color:#d2cd86'>)</span><span style='color:#d2cd86'>)</span>
            <span style='color:#d2cd86'>{</span>
                <span style='color:#d2cd86'>/</span><span style='color:#d2cd86'>/</span> More information on the TaskAwaiter<span style='color:#d2cd86'>&lt;</span>TResult<span style='color:#d2cd86'>&gt;</span> class can be found here<span style='color:#d2cd86'>:</span> <span style='color:#6070ec'>https://msdn.microsoft.com/en-us/library/hh138386</span><span style='color:#d2cd86'>(</span>v<span style='color:#d2cd86'>=</span>vs<span style='color:#00a800'>.110</span><span style='color:#d2cd86'>)</span><span style='color:#d2cd86'>.</span>aspx
                <span style='color:#d2cd86'>/</span><span style='color:#d2cd86'>/</span> More information on the Task<span style='color:#00a800'>.</span>GetAwaiter<span style='color:#d2cd86'>(</span><span style='color:#d2cd86'>)</span> method can be found here<span style='color:#d2cd86'>:</span> <span style='color:#6070ec'>https://msdn.microsoft.com/en-us/library/system.threading.tasks.task.getawaiter</span><span style='color:#d2cd86'>(</span>v<span style='color:#d2cd86'>=</span>vs<span style='color:#00a800'>.110</span><span style='color:#d2cd86'>)</span><span style='color:#d2cd86'>.</span>aspx
                TaskAwaiter<span style='color:#d2cd86'>&lt;</span>SearchResponse<span style='color:#d2cd86'>&gt;</span> newTaskAwaiter <span style='color:#d2cd86'>=</span> newTask<span style='color:#00a800'>.</span>GetAwaiter<span style='color:#d2cd86'>(</span><span style='color:#d2cd86'>)</span><span style='color:#d2cd86'>;</span>

                <span style='color:#d2cd86'>/</span><span style='color:#d2cd86'>/</span> More information on the TaskAwaiter<span style='color:#00a800'>.</span>IsCompleted property can be found here<span style='color:#d2cd86'>:</span> <span style='color:#6070ec'>https://msdn.microsoft.com/en-us/library/system.runtime.compilerservices.taskawaiter.iscompleted</span><span style='color:#d2cd86'>(</span>v<span style='color:#d2cd86'>=</span>vs<span style='color:#00a800'>.110</span><span style='color:#d2cd86'>)</span><span style='color:#d2cd86'>.</span>aspx
                while <span style='color:#d2cd86'>(</span><span style='color:#d2cd86'>!</span>newTaskAwaiter<span style='color:#00a800'>.</span>IsCompleted<span style='color:#d2cd86'>)</span>
                <span style='color:#d2cd86'>{</span>
                    <span style='color:#d2cd86'>/</span><span style='color:#d2cd86'>/</span> More information on the string<span style='color:#00a800'>.</span>Format<span style='color:#d2cd86'>(</span><span style='color:#d2cd86'>)</span> method can be found here<span style='color:#d2cd86'>:</span> <span style='color:#6070ec'>https://msdn.microsoft.com/en-us/library/system.string.format</span><span style='color:#d2cd86'>(</span>v<span style='color:#d2cd86'>=</span>vs<span style='color:#00a800'>.110</span><span style='color:#d2cd86'>)</span><span style='color:#d2cd86'>.</span>aspx
                    this<span style='color:#00a800'>.</span>WriteDebug<span style='color:#d2cd86'>(</span>string<span style='color:#00a800'>.</span>Format<span style='color:#d2cd86'>(</span><span style='color:#02d045'>"</span><span style='color:#00c4c4'>Awaiting task with id'{0}' to finish.</span><span style='color:#02d045'>"</span><span style='color:#d2cd86'>,</span> newTask<span style='color:#00a800'>.</span>Id<span style='color:#d2cd86'>)</span><span style='color:#d2cd86'>)</span><span style='color:#d2cd86'>;</span>

                    <span style='color:#d2cd86'>/</span><span style='color:#d2cd86'>/</span> Let<span style='color:#00c4c4'>'</span>s wait for task completion<span style='color:#d2cd86'>.</span>
                    System<span style='color:#00a800'>.</span>Threading<span style='color:#00a800'>.</span>Thread<span style='color:#00a800'>.</span>Sleep<span style='color:#d2cd86'>(</span><span style='color:#00a800'>500</span><span style='color:#d2cd86'>)</span><span style='color:#d2cd86'>;</span>
                <span style='color:#d2cd86'>}</span>

                <span style='color:#d2cd86'>/</span><span style='color:#d2cd86'>/</span> More information on the TaskAwaiter<span style='color:#00a800'>.</span>IsCompleted property can be found here<span style='color:#d2cd86'>:</span> <span style='color:#6070ec'>https://msdn.microsoft.com/en-us/library/system.runtime.compilerservices.taskawaiter.iscompleted</span><span style='color:#d2cd86'>(</span>v<span style='color:#d2cd86'>=</span>vs<span style='color:#00a800'>.110</span><span style='color:#d2cd86'>)</span><span style='color:#d2cd86'>.</span>aspx
                if <span style='color:#d2cd86'>(</span>newTaskAwaiter<span style='color:#00a800'>.</span>IsCompleted<span style='color:#d2cd86'>)</span>
                <span style='color:#d2cd86'>{</span>
                    <span style='color:#d2cd86'>/</span><span style='color:#d2cd86'>/</span> More information on the string<span style='color:#00a800'>.</span>Format<span style='color:#d2cd86'>(</span><span style='color:#d2cd86'>)</span> method can be found here<span style='color:#d2cd86'>:</span> <span style='color:#6070ec'>https://msdn.microsoft.com/en-us/library/system.string.format</span><span style='color:#d2cd86'>(</span>v<span style='color:#d2cd86'>=</span>vs<span style='color:#00a800'>.110</span><span style='color:#d2cd86'>)</span><span style='color:#d2cd86'>.</span>aspx
                    this<span style='color:#00a800'>.</span>WriteDebug<span style='color:#d2cd86'>(</span>string<span style='color:#00a800'>.</span>Format<span style='color:#d2cd86'>(</span><span style='color:#02d045'>"</span><span style='color:#00c4c4'>Task with Id '{0}' completed.</span><span style='color:#02d045'>"</span><span style='color:#d2cd86'>,</span> newTask<span style='color:#00a800'>.</span>Id<span style='color:#d2cd86'>)</span><span style='color:#d2cd86'>)</span><span style='color:#d2cd86'>;</span>

                    <span style='color:#d2cd86'>/</span><span style='color:#d2cd86'>/</span> More information on the Task<span style='color:#00a800'>.</span>IsFaulted property can be found here<span style='color:#d2cd86'>:</span> <span style='color:#6070ec'>https://msdn.microsoft.com/en-us/library/system.threading.tasks.task.isfaulted</span><span style='color:#d2cd86'>(</span>v<span style='color:#d2cd86'>=</span>vs<span style='color:#00a800'>.110</span><span style='color:#d2cd86'>)</span><span style='color:#d2cd86'>.</span>aspx
                    if <span style='color:#d2cd86'>(</span><span style='color:#d2cd86'>!</span>newTask<span style='color:#00a800'>.</span>IsFaulted<span style='color:#d2cd86'>)</span>
                    <span style='color:#d2cd86'>{</span>
                        <span style='color:#d2cd86'>/</span><span style='color:#d2cd86'>/</span> More information on the TaskAwaiter<span style='color:#00a800'>.</span>GetResult<span style='color:#d2cd86'>(</span><span style='color:#d2cd86'>)</span> method can be found here<span style='color:#d2cd86'>:</span> <span style='color:#6070ec'>https://msdn.microsoft.com/en-us/library/system.runtime.compilerservices.taskawaiter.getresult</span><span style='color:#d2cd86'>(</span>v<span style='color:#d2cd86'>=</span>vs<span style='color:#00a800'>.110</span><span style='color:#d2cd86'>)</span><span style='color:#d2cd86'>.</span>aspx
                        newTaskAwaiter<span style='color:#00a800'>.</span>GetResult<span style='color:#d2cd86'>(</span><span style='color:#d2cd86'>)</span><span style='color:#d2cd86'>;</span>

                        <span style='color:#d2cd86'>/</span><span style='color:#d2cd86'>/</span> More information on the SearchResultEntryCollection class can be found here<span style='color:#d2cd86'>:</span> <span style='color:#6070ec'>https://msdn.microsoft.com/en-us/library/system.directoryservices.protocols.searchresultentrycollection</span><span style='color:#d2cd86'>(</span>v<span style='color:#d2cd86'>=</span>vs<span style='color:#00a800'>.110</span><span style='color:#d2cd86'>)</span><span style='color:#d2cd86'>.</span>aspx
                        SearchResultEntryCollection newSearchResultEntryCollection <span style='color:#d2cd86'>=</span> Ad<span style='color:#00a800'>.</span>NewSearchResponse<span style='color:#00a800'>.</span>Entries<span style='color:#d2cd86'>;</span>

                        <span style='color:#d2cd86'>/</span><span style='color:#d2cd86'>/</span> More information on the SearchResultEntry class can be found here<span style='color:#d2cd86'>:</span> <span style='color:#6070ec'>https://msdn.microsoft.com/en-us/library/system.directoryservices.protocols.searchresultentry</span><span style='color:#d2cd86'>(</span>v<span style='color:#d2cd86'>=</span>vs<span style='color:#00a800'>.110</span><span style='color:#d2cd86'>)</span><span style='color:#d2cd86'>.</span>aspx
                        SearchResultEntry newSearchResultEntry <span style='color:#d2cd86'>=</span> newSearchResultEntryCollection<span style='color:#d2cd86'>[</span><span style='color:#00a800'>0</span><span style='color:#d2cd86'>]</span><span style='color:#d2cd86'>;</span>

                        <span style='color:#d2cd86'>/</span><span style='color:#d2cd86'>/</span> More information on the SearchResultAttributeCollection class can be found here<span style='color:#d2cd86'>:</span> <span style='color:#6070ec'>https://msdn.microsoft.com/en-us/library/system.directoryservices.protocols.searchresultattributecollection</span><span style='color:#d2cd86'>(</span>v<span style='color:#d2cd86'>=</span>vs<span style='color:#00a800'>.110</span><span style='color:#d2cd86'>)</span><span style='color:#d2cd86'>.</span>aspx
                        SearchResultAttributeCollection newSearchResultAttributeCollection <span style='color:#d2cd86'>=</span> newSearchResultEntry<span style='color:#00a800'>.</span>Attributes<span style='color:#d2cd86'>;</span>

                        <span style='color:#d2cd86'>/</span><span style='color:#d2cd86'>/</span> Validate we don<span style='color:#00c4c4'>'</span>t hit the System<span style='color:#00a800'>.</span>NullReferenceException
                        <span style='color:#d2cd86'>/</span><span style='color:#d2cd86'>/</span> More information on the SearchResultAttributeCollection<span style='color:#00a800'>.</span>Values property can be found here<span style='color:#d2cd86'>:</span> <span style='color:#6070ec'>https://msdn.microsoft.com/en-us/library/system.directoryservices.protocols.searchresultattributecollection.values</span><span style='color:#d2cd86'>(</span>v<span style='color:#d2cd86'>=</span>vs<span style='color:#00a800'>.110</span><span style='color:#d2cd86'>)</span><span style='color:#d2cd86'>.</span>aspx
                        if <span style='color:#d2cd86'>(</span>newSearchResultAttributeCollection<span style='color:#00a800'>.</span>Values <span style='color:#d2cd86'>!</span><span style='color:#d2cd86'>=</span> null<span style='color:#d2cd86'>)</span>
                        <span style='color:#d2cd86'>{</span>
                            <span style='color:#d2cd86'>/</span><span style='color:#d2cd86'>/</span> To save overhead from iterating through each attribute on the object<span style='color:#d2cd86'>,</span> we need to convert it into a queryable<span style='color:#d2cd86'>.</span>
                            <span style='color:#d2cd86'>/</span><span style='color:#d2cd86'>/</span> This takes some magic but the overall result is the same data<span style='color:#d2cd86'>,</span> just slightly faster<span style='color:#d2cd86'>.</span>

                            <span style='color:#d2cd86'>/</span><span style='color:#d2cd86'>/</span> More information on the SearchResultAttributeCollection<span style='color:#00a800'>.</span>Values property can be found here<span style='color:#d2cd86'>:</span> <span style='color:#6070ec'>https://msdn.microsoft.com/en-us/library/system.directoryservices.protocols.searchresultattributecollection.values</span><span style='color:#d2cd86'>(</span>v<span style='color:#d2cd86'>=</span>vs<span style='color:#00a800'>.100</span><span style='color:#d2cd86'>)</span><span style='color:#d2cd86'>.</span>aspx
                            ICollection newCollection <span style='color:#d2cd86'>=</span> newSearchResultAttributeCollection<span style='color:#00a800'>.</span>Values<span style='color:#d2cd86'>;</span>

                            <span style='color:#d2cd86'>/</span><span style='color:#d2cd86'>/</span> More information on the Enumerable<span style='color:#00a800'>.</span>Cast<span style='color:#d2cd86'>&lt;</span>TResult<span style='color:#d2cd86'>&gt;</span><span style='color:#d2cd86'>(</span><span style='color:#d2cd86'>)</span> method can be found here<span style='color:#d2cd86'>:</span> <span style='color:#6070ec'>https://msdn.microsoft.com/en-us/library/bb341406</span><span style='color:#d2cd86'>(</span>v<span style='color:#d2cd86'>=</span>vs<span style='color:#00a800'>.110</span><span style='color:#d2cd86'>)</span><span style='color:#d2cd86'>.</span>aspx
                            IEnumerable newDirectoryAttributesCollection <span style='color:#d2cd86'>=</span> newCollection<span style='color:#00a800'>.</span>Cast<span style='color:#d2cd86'>&lt;</span>DirectoryAttribute<span style='color:#d2cd86'>&gt;</span><span style='color:#d2cd86'>(</span><span style='color:#d2cd86'>)</span><span style='color:#d2cd86'>;</span>

                            <span style='color:#d2cd86'>/</span><span style='color:#d2cd86'>/</span> More information on the Queryable<span style='color:#00a800'>.</span>AsQueryable<span style='color:#d2cd86'>(</span><span style='color:#d2cd86'>)</span> method can be found here<span style='color:#d2cd86'>:</span> <span style='color:#6070ec'>https://msdn.microsoft.com/en-us/library/bb353734</span><span style='color:#d2cd86'>(</span>v<span style='color:#d2cd86'>=</span>vs<span style='color:#00a800'>.110</span><span style='color:#d2cd86'>)</span><span style='color:#d2cd86'>.</span>aspx
                            IQueryable<span style='color:#d2cd86'>&lt;</span>DirectoryAttribute<span style='color:#d2cd86'>&gt;</span> newQueryable <span style='color:#d2cd86'>=</span> <span style='color:#d2cd86'>(</span>IQueryable<span style='color:#d2cd86'>&lt;</span>DirectoryAttribute<span style='color:#d2cd86'>&gt;</span><span style='color:#d2cd86'>)</span> newDirectoryAttributesCollection<span style='color:#00a800'>.</span>AsQueryable<span style='color:#d2cd86'>(</span><span style='color:#d2cd86'>)</span><span style='color:#d2cd86'>;</span>

                            <span style='color:#d2cd86'>/</span><span style='color:#d2cd86'>/</span> More information on the Where<span style='color:#d2cd86'>(</span><span style='color:#d2cd86'>)</span> method can be found here<span style='color:#d2cd86'>:</span> <span style='color:#6070ec'>https://msdn.microsoft.com/en-us/library/bb546161.aspx</span>
                            <span style='color:#d2cd86'>/</span><span style='color:#d2cd86'>/</span> More information on the Select<span style='color:#d2cd86'>(</span><span style='color:#d2cd86'>)</span> method can be found here<span style='color:#d2cd86'>:</span> <span style='color:#6070ec'>https://msdn.microsoft.com/en-us/library/bb546168.aspx</span>
                            IQueryable<span style='color:#d2cd86'>&lt;</span>object<span style='color:#d2cd86'>[</span><span style='color:#d2cd86'>]</span><span style='color:#d2cd86'>&gt;</span> newQueryableObjectUno <span style='color:#d2cd86'>=</span> newQueryable<span style='color:#00a800'>.</span>Where<span style='color:#d2cd86'>(</span>x <span style='color:#d2cd86'>=</span><span style='color:#d2cd86'>&gt;</span> x<span style='color:#00a800'>.</span>Name<span style='color:#00a800'>.</span>Equals<span style='color:#d2cd86'>(</span><span style='color:#02d045'>"</span><span style='color:#00c4c4'>msExchMailboxSecurityDescriptor</span><span style='color:#02d045'>"</span><span style='color:#d2cd86'>)</span><span style='color:#d2cd86'>)</span><span style='color:#d2cd86'>.</span>Select<span style='color:#d2cd86'>(</span>x <span style='color:#d2cd86'>=</span><span style='color:#d2cd86'>&gt;</span> x<span style='color:#00a800'>.</span>GetValues<span style='color:#d2cd86'>(</span>typeof <span style='color:#d2cd86'>(</span>byte<span style='color:#d2cd86'>[</span><span style='color:#d2cd86'>]</span><span style='color:#d2cd86'>)</span><span style='color:#d2cd86'>)</span><span style='color:#d2cd86'>)</span><span style='color:#d2cd86'>;</span>

                            <span style='color:#d2cd86'>/</span><span style='color:#d2cd86'>/</span> More information on the FirstOrDefault<span style='color:#d2cd86'>(</span><span style='color:#d2cd86'>)</span> method can be found here<span style='color:#d2cd86'>:</span> <span style='color:#6070ec'>https://msdn.microsoft.com/en-us/library/bb546140.aspx</span>
                            object<span style='color:#d2cd86'>[</span><span style='color:#d2cd86'>]</span> newObjectsUno <span style='color:#d2cd86'>=</span> newQueryableObjectUno<span style='color:#00a800'>.</span>FirstOrDefault<span style='color:#d2cd86'>(</span><span style='color:#d2cd86'>)</span><span style='color:#d2cd86'>;</span>

                            <span style='color:#d2cd86'>/</span><span style='color:#d2cd86'>/</span> If the data is null<span style='color:#d2cd86'>,</span> we went wrong somewhere but it<span style='color:#00c4c4'>'</span>s best to prevent System<span style='color:#00a800'>.</span>NullReferenceException<span style='color:#d2cd86'>.</span>
                            if <span style='color:#d2cd86'>(</span>newObjectsUno <span style='color:#d2cd86'>!</span><span style='color:#d2cd86'>=</span> null<span style='color:#d2cd86'>)</span>
                            <span style='color:#d2cd86'>{</span>
                                byte<span style='color:#d2cd86'>[</span><span style='color:#d2cd86'>]</span> newByteArrayBytes <span style='color:#d2cd86'>=</span> <span style='color:#d2cd86'>(</span>byte<span style='color:#d2cd86'>[</span><span style='color:#d2cd86'>]</span><span style='color:#d2cd86'>)</span> newObjectsUno<span style='color:#d2cd86'>[</span><span style='color:#00a800'>0</span><span style='color:#d2cd86'>]</span><span style='color:#d2cd86'>;</span>

                                <span style='color:#d2cd86'>/</span><span style='color:#d2cd86'>/</span> We decode the string<span style='color:#d2cd86'>.</span>
                                CommonSecurityDescriptor newCommonSecurityDescriptor <span style='color:#d2cd86'>=</span> new CommonSecurityDescriptor<span style='color:#d2cd86'>(</span>true<span style='color:#d2cd86'>,</span> true<span style='color:#d2cd86'>,</span> newByteArrayBytes<span style='color:#d2cd86'>,</span> <span style='color:#00a800'>0</span><span style='color:#d2cd86'>)</span><span style='color:#d2cd86'>;</span>
                                string attrValue <span style='color:#d2cd86'>=</span> newCommonSecurityDescriptor<span style='color:#00a800'>.</span>GetSddlForm<span style='color:#d2cd86'>(</span>AccessControlSections<span style='color:#00a800'>.</span>All<span style='color:#d2cd86'>)</span><span style='color:#d2cd86'>;</span>

                                this<span style='color:#00a800'>.</span>WriteObject<span style='color:#d2cd86'>(</span>attrValue<span style='color:#d2cd86'>)</span><span style='color:#d2cd86'>;</span>
                            <span style='color:#d2cd86'>}</span>
                        <span style='color:#d2cd86'>}</span>
                    <span style='color:#d2cd86'>}</span>
                <span style='color:#d2cd86'>}</span>
            <span style='color:#d2cd86'>}</span>
</pre>

While this isn't quite straight-forward, what's happening is that we're obtaining all of the properties for the object in AD, in byte format, and then performing a select against the specific property that we want to see.

Happy coding! :) ]]></content:encoded>
    </item>
    <item>
      <title>Debugging: When Recursive NDRs Bring the FSC to It's Knees And Causes Queuing</title>
      <link>https://docs.microsoft.com/archive/blogs/johnbai/debugging-when-recursive-ndrs-bring-the-fsc-to-its-knees-and-causes-queuing</link>
      <pubDate>Tue, 05 Apr 2016 20:52:49 GMT</pubDate>
      <dc:creator><![CDATA[John Bailey [MSFT]]]></dc:creator>
      <guid
        isPermaLink="false">https://blogs.technet.microsoft.com/johnbai/?p=1002</guid>
      <description><![CDATA[A while back (circa July 2015), we had alerting for queuing for a Dedicated customer. When we went...]]></description>
      <content:encoded><![CDATA[A while back (circa July 2015), we had alerting for queuing for a Dedicated customer. When we went and looked, the messages were just sitting in the Submission queue.

We dumped the EdgeTransport process and I cracked it open. When I looked at the dump, only 4 threads were at or above 30 frames and those threads had the same stack[s] (redacted for readability):

<pre style='color:#d1d1d1;background:#000000'># Child<span style='color:#d2cd86'>-</span>SP          RetAddr           Call Site
<span style='color:#00a800'>00</span> <span style='color:#00a800'>00000000</span>`3587d298 000007fe`ff2e74f6 ntdll<span style='color:#d2cd86'>!</span>ZwAlpcSendWaitReceivePort<span style='color:#d2cd86'>+</span>0xa
<span style='color:#00a800'>01</span> <span style='color:#00a800'>00000000</span>`3587d2a0 000007fe`ff2e1c32 rpcrt4<span style='color:#d2cd86'>!</span>LRPC<span style='color:#d2cd86'>_</span>CCALL<span style='color:#d2cd86'>:</span><span style='color:#d2cd86'>:</span>SendReceive<span style='color:#d2cd86'>+</span>0x156
<span style='color:#00a800'>02</span> <span style='color:#00a800'>00000000</span>`3587d360 000007fe`fdf228c0 rpcrt4<span style='color:#d2cd86'>!</span>I<span style='color:#d2cd86'>_</span>RpcSendReceive<span style='color:#d2cd86'>+</span>0x42
<span style='color:#00a800'>03</span> <span style='color:#00a800'>00000000</span>`3587d390 000007fe`fdf2282f ole32<span style='color:#d2cd86'>!</span>ThreadSendReceive<span style='color:#d2cd86'>+</span>0x40
<span style='color:#00a800'>04</span> <span style='color:#00a800'>00000000</span>`3587d3e0 000007fe`fdf2265b ole32<span style='color:#d2cd86'>!</span>CRpcChannelBuffer<span style='color:#d2cd86'>:</span><span style='color:#d2cd86'>:</span>SwitchAptAndDispatchCall<span style='color:#d2cd86'>+</span>0xa3
<span style='color:#00a800'>05</span> <span style='color:#00a800'>00000000</span>`3587d480 000007fe`fddddaaa ole32<span style='color:#d2cd86'>!</span>CRpcChannelBuffer<span style='color:#d2cd86'>:</span><span style='color:#d2cd86'>:</span>SendReceive2<span style='color:#d2cd86'>+</span>0x11b
<span style='color:#00a800'>06</span> <span style='color:#00a800'>00000000</span>`3587d640 000007fe`fdddda0c ole32<span style='color:#d2cd86'>!</span>CAptRpcChnl<span style='color:#d2cd86'>:</span><span style='color:#d2cd86'>:</span>SendReceive<span style='color:#d2cd86'>+</span>0x52
<span style='color:#00a800'>07</span> <span style='color:#00a800'>00000000</span>`3587d710 000007fe`fdf2205d ole32<span style='color:#d2cd86'>!</span>CCtxComChnl<span style='color:#d2cd86'>:</span><span style='color:#d2cd86'>:</span>SendReceive<span style='color:#d2cd86'>+</span>0x68
<span style='color:#00a800'>08</span> <span style='color:#00a800'>00000000</span>`3587d7c0 000007fe`ff38fd61 ole32<span style='color:#d2cd86'>!</span>NdrExtpProxySendReceive<span style='color:#d2cd86'>+</span>0x45
<span style='color:#00a800'>09</span> <span style='color:#00a800'>00000000</span>`3587d7f0 000007fe`fdf1f82f rpcrt4<span style='color:#d2cd86'>!</span>NdrpClientCall2<span style='color:#d2cd86'>+</span>0x9ea
0a <span style='color:#00a800'>00000000</span>`3587df60 000007fe`fdddd8a2 ole32<span style='color:#d2cd86'>!</span>ObjectStublessClient<span style='color:#d2cd86'>+</span>0x1ad
0b <span style='color:#00a800'>00000000</span>`3587e2f0 000007fe`f839a8b7 ole32<span style='color:#d2cd86'>!</span>ObjectStubless<span style='color:#d2cd86'>+</span>0x42
0c <span style='color:#00a800'>00000000</span>`<span style='color:#00a800'>3587e340</span> 000007ff`0042901d mscorwks<span style='color:#d2cd86'>!</span>DoCLRToCOMCall<span style='color:#d2cd86'>+</span>0x177
0d <span style='color:#00a800'>00000000</span>`3587e3f0 000007ff`00424efc DomainBoundILStubClass<span style='color:#00a800'>.</span>IL<span style='color:#d2cd86'>_</span>STUB<span style='color:#d2cd86'>(</span>System<span style='color:#00a800'>.</span>Object<span style='color:#d2cd86'>,</span> UInt32<span style='color:#d2cd86'>,</span> UInt32 ByRef<span style='color:#d2cd86'>,</span> UInt32 ByRef<span style='color:#d2cd86'>,</span> System<span style='color:#00a800'>.</span>Array ByRef<span style='color:#d2cd86'>)</span><span style='color:#d2cd86'>+</span>0x15d
0e <span style='color:#00a800'>00000000</span>`<span style='color:#00a800'>3587e540</span> 000007ff`001af3ec FSEAgent<span style='color:#d2cd86'>_</span>8<span style='color:#d2cd86'>_</span>0<span style='color:#d2cd86'>_</span>685<span style='color:#d2cd86'>!</span>Antigen<span style='color:#00a800'>.</span>Scanner<span style='color:#00a800'>.</span>Scan<span style='color:#d2cd86'>(</span><span style='color:#d2cd86'>)</span><span style='color:#d2cd86'>+</span>0x45c
0f <span style='color:#00a800'>00000000</span>`<span style='color:#00a800'>3587e640</span> 000007fe`f74f2bbb FSEAgent<span style='color:#d2cd86'>_</span>8<span style='color:#d2cd86'>_</span>0<span style='color:#d2cd86'>_</span>685<span style='color:#d2cd86'>!</span>Antigen<span style='color:#00a800'>.</span>Scanner<span style='color:#00a800'>.</span>ScannerThread<span style='color:#d2cd86'>(</span><span style='color:#d2cd86'>)</span><span style='color:#d2cd86'>+</span>0x13c
<span style='color:#00a800'>10</span> <span style='color:#00a800'>00000000</span>`3587e6e0 000007fe`f758aadd mscorlib<span style='color:#d2cd86'>_</span>ni<span style='color:#d2cd86'>!</span>System<span style='color:#00a800'>.</span>Threading<span style='color:#00a800'>.</span>ExecutionContext<span style='color:#00a800'>.</span>Run<span style='color:#d2cd86'>(</span>System<span style='color:#00a800'>.</span>Threading<span style='color:#00a800'>.</span>ExecutionContext<span style='color:#d2cd86'>,</span> System<span style='color:#00a800'>.</span>Threading<span style='color:#00a800'>.</span>ContextCallback<span style='color:#d2cd86'>,</span> System<span style='color:#00a800'>.</span>Object<span style='color:#d2cd86'>)</span><span style='color:#d2cd86'>+</span>0x9b
<span style='color:#00a800'>11</span> <span style='color:#00a800'>00000000</span>`<span style='color:#00a800'>3587e730</span> 000007fe`f839c6a2 mscorlib<span style='color:#d2cd86'>_</span>ni<span style='color:#d2cd86'>!</span>System<span style='color:#00a800'>.</span>Threading<span style='color:#00a800'>.</span>ThreadHelper<span style='color:#00a800'>.</span>ThreadStart<span style='color:#d2cd86'>(</span><span style='color:#d2cd86'>)</span><span style='color:#d2cd86'>+</span>0x4d
<span style='color:#00a800'>12</span> <span style='color:#00a800'>00000000</span>`<span style='color:#00a800'>3587e780</span> 000007fe`f825ff03 mscorwks<span style='color:#d2cd86'>!</span>CallDescrWorker<span style='color:#d2cd86'>+</span>0x82
<span style='color:#00a800'>13</span> <span style='color:#00a800'>00000000</span>`3587e7d0 000007fe`f877a291 mscorwks<span style='color:#d2cd86'>!</span>CallDescrWorkerWithHandler<span style='color:#d2cd86'>+</span>0xd3
<span style='color:#00a800'>14</span> <span style='color:#00a800'>00000000</span>`<span style='color:#00a800'>3587e870</span> 000007fe`f81c37b9 mscorwks<span style='color:#d2cd86'>!</span>MethodDesc<span style='color:#d2cd86'>:</span><span style='color:#d2cd86'>:</span>CallDescr<span style='color:#d2cd86'>+</span>0x2b1
<span style='color:#00a800'>15</span> <span style='color:#00a800'>00000000</span>`3587eab0 000007fe`f831d298 mscorwks<span style='color:#d2cd86'>!</span>ThreadNative<span style='color:#d2cd86'>:</span><span style='color:#d2cd86'>:</span>KickOffThread<span style='color:#d2cd86'>_</span>Worker<span style='color:#d2cd86'>+</span>0x191
<span style='color:#00a800'>16</span> <span style='color:#00a800'>00000000</span>`3587edd0 000007fe`f8230945 mscorwks<span style='color:#d2cd86'>!</span>ManagedThreadBase<span style='color:#d2cd86'>_</span>DispatchInner<span style='color:#d2cd86'>+</span>0x2c
<span style='color:#00a800'>17</span> <span style='color:#00a800'>00000000</span>`3587ee20 000007fe`f81fe52d mscorwks<span style='color:#d2cd86'>!</span>ManagedThreadBase<span style='color:#d2cd86'>_</span>DispatchMiddle<span style='color:#d2cd86'>+</span>0x9d
<span style='color:#00a800'>18</span> <span style='color:#00a800'>00000000</span>`3587eef0 000007fe`f835a2b5 mscorwks<span style='color:#d2cd86'>!</span>ManagedThreadBase<span style='color:#d2cd86'>_</span>DispatchOuter<span style='color:#d2cd86'>+</span>0x31
<span style='color:#00a800'>19</span> <span style='color:#00a800'>00000000</span>`3587ef30 000007fe`f832825b mscorwks<span style='color:#d2cd86'>!</span>ManagedThreadBase<span style='color:#d2cd86'>_</span>FullTransitionWithAD<span style='color:#d2cd86'>+</span>0x35
1a <span style='color:#00a800'>00000000</span>`3587ef90 000007fe`f8320134 mscorwks<span style='color:#d2cd86'>!</span>ThreadNative<span style='color:#d2cd86'>:</span><span style='color:#d2cd86'>:</span>KickOffThread<span style='color:#d2cd86'>+</span>0xd3
1b <span style='color:#00a800'>00000000</span>`3587f070 <span style='color:#00a800'>00000000</span>`779959dd mscorwks<span style='color:#d2cd86'>!</span>Thread<span style='color:#d2cd86'>:</span><span style='color:#d2cd86'>:</span>intermediateThreadProc<span style='color:#d2cd86'>+</span>0x78
1c <span style='color:#00a800'>00000000</span>`3587fc40 <span style='color:#00a800'>00000000</span>`77aca651 kernel32<span style='color:#d2cd86'>!</span>BaseThreadInitThunk<span style='color:#d2cd86'>+</span>0xd
1d <span style='color:#00a800'>00000000</span>`3587fc70 <span style='color:#00a800'>00000000</span>`<span style='color:#00a800'>00000000</span> ntdll<span style='color:#d2cd86'>!</span>RtlUserThreadStart<span style='color:#d2cd86'>+</span>0x1d
</pre>

All of those aforementioned threads were passing to COM:

<pre style='color:#d1d1d1;background:#000000'><span style='color:#d2cd86'>!</span>findstack mscorwks<span style='color:#d2cd86'>!</span>DoCLRToCOMCall
Thread <span style='color:#00a800'>064</span><span style='color:#d2cd86'>,</span> <span style='color:#00a800'>1</span> frame<span style='color:#d2cd86'>(</span>s<span style='color:#d2cd86'>)</span> match
        <span style='color:#d2cd86'>*</span> <span style='color:#00a800'>12</span> 000000003587e3e0 000007ff0042901d mscorwks<span style='color:#d2cd86'>!</span>DoCLRToCOMCall<span style='color:#d2cd86'>+</span>0x177

Thread <span style='color:#00a800'>066</span><span style='color:#d2cd86'>,</span> <span style='color:#00a800'>1</span> frame<span style='color:#d2cd86'>(</span>s<span style='color:#d2cd86'>)</span> match
        <span style='color:#d2cd86'>*</span> <span style='color:#00a800'>12</span> 0000000051cfe240 000007ff0042901d mscorwks<span style='color:#d2cd86'>!</span>DoCLRToCOMCall<span style='color:#d2cd86'>+</span>0x177

Thread <span style='color:#00a800'>068</span><span style='color:#d2cd86'>,</span> <span style='color:#00a800'>1</span> frame<span style='color:#d2cd86'>(</span>s<span style='color:#d2cd86'>)</span> match
        <span style='color:#d2cd86'>*</span> <span style='color:#00a800'>12</span> 0000000051dfddb0 000007ff0042901d mscorwks<span style='color:#d2cd86'>!</span>DoCLRToCOMCall<span style='color:#d2cd86'>+</span>0x177

Thread <span style='color:#00a800'>070</span><span style='color:#d2cd86'>,</span> <span style='color:#00a800'>1</span> frame<span style='color:#d2cd86'>(</span>s<span style='color:#d2cd86'>)</span> match
        <span style='color:#d2cd86'>*</span> <span style='color:#00a800'>12</span> <span style='color:#00a800'>000000005205e250</span> 000007ff0042901d mscorwks<span style='color:#d2cd86'>!</span>DoCLRToCOMCall<span style='color:#d2cd86'>+</span>0x177
</pre>

And the messages that were being processed were NDRs that have been around the block or two (sorry for the wall of text):

<pre style='color:#d1d1d1;background:#000000'><span style='color:#00a800'>0</span><span style='color:#d2cd86'>:</span><span style='color:#00a800'>064</span><span style='color:#d2cd86'>&gt;</span> <span style='color:#d2cd86'>!</span>mdt 00000000e074c8b0
00000000e074c8b0 <span style='color:#d2cd86'>(</span>System<span style='color:#00a800'>.</span>String<span style='color:#d2cd86'>)</span> Length<span style='color:#d2cd86'>=</span><span style='color:#00a800'>12515</span><span style='color:#d2cd86'>,</span> String<span style='color:#d2cd86'>=</span><span style='color:#02d045'>"</span><span style='color:#00c4c4'>Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undelivered Mail Returned to Sender</span><span style='color:#02d045'>"</span>
</pre>

<pre style='color:#d1d1d1;background:#000000'><span style='color:#00a800'>0</span><span style='color:#d2cd86'>:</span><span style='color:#00a800'>070</span><span style='color:#d2cd86'>&gt;</span> <span style='color:#d2cd86'>!</span>mdt 0000000100776d88
0000000100776d88 <span style='color:#d2cd86'>(</span>System<span style='color:#00a800'>.</span>String<span style='color:#d2cd86'>)</span> Length<span style='color:#d2cd86'>=</span><span style='color:#00a800'>11719</span><span style='color:#d2cd86'>,</span> String<span style='color:#d2cd86'>=</span><span style='color:#02d045'>"</span><span style='color:#00c4c4'>Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Undeliverable: Delayed Mail (still being retried)</span><span style='color:#02d045'>"</span>
</pre>

The message details (in redacted form) were:

<pre style='color:#d1d1d1;background:#000000'><span style='color:#00a800'>0</span><span style='color:#d2cd86'>:</span><span style='color:#00a800'>064</span><span style='color:#d2cd86'>&gt;</span> <span style='color:#d2cd86'>!</span>mdt 0000000081097f30
0000000081097f30 <span style='color:#d2cd86'>(</span>Antigen<span style='color:#00a800'>.</span>AntigenMessage<span style='color:#d2cd86'>)</span>
    m<span style='color:#d2cd86'>_</span>folder<span style='color:#d2cd86'>:</span>00000000810a01f0 <span style='color:#d2cd86'>(</span>System<span style='color:#00a800'>.</span>String<span style='color:#d2cd86'>)</span> Length<span style='color:#d2cd86'>=</span><span style='color:#00a800'>36</span><span style='color:#d2cd86'>,</span> String<span style='color:#d2cd86'>=</span><span style='color:#02d045'>"</span><span style='color:#00c4c4'>C:\forefront\data\\Archive\Internal\</span><span style='color:#02d045'>"</span>
    m<span style='color:#d2cd86'>_</span>fileObject<span style='color:#d2cd86'>:</span>0x250e0 <span style='color:#d2cd86'>(</span>System<span style='color:#00a800'>.</span>UInt32<span style='color:#d2cd86'>)</span>
    m<span style='color:#d2cd86'>_</span>bcc<span style='color:#d2cd86'>:</span>00000000e0754c50 <span style='color:#d2cd86'>(</span>System<span style='color:#00a800'>.</span>String<span style='color:#d2cd86'>)</span> Length<span style='color:#d2cd86'>=</span><span style='color:#00a800'>43</span><span style='color:#d2cd86'>,</span> String<span style='color:#d2cd86'>=</span><span style='color:#02d045'>"</span><span style='color:#00c4c4'>&lt;recipient&gt;;</span><span style='color:#02d045'>"</span>
    m<span style='color:#d2cd86'>_</span>flags<span style='color:#d2cd86'>:</span>0x0 <span style='color:#d2cd86'>(</span>System<span style='color:#00a800'>.</span>Int32<span style='color:#d2cd86'>)</span>
    m<span style='color:#d2cd86'>_</span>smtpSenderAddress<span style='color:#d2cd86'>:</span>00000000907eb738 <span style='color:#d2cd86'>(</span>System<span style='color:#00a800'>.</span>String<span style='color:#d2cd86'>)</span> Length<span style='color:#d2cd86'>=</span><span style='color:#00a800'>21</span><span style='color:#d2cd86'>,</span> String<span style='color:#d2cd86'>=</span><span style='color:#02d045'>"</span><span style='color:#00c4c4'>"Sender"</span><span style='color:#02d045'>"</span>
    m<span style='color:#d2cd86'>_</span>smtpExternalIP<span style='color:#d2cd86'>:</span>NULL <span style='color:#d2cd86'>(</span>System<span style='color:#00a800'>.</span>String<span style='color:#d2cd86'>)</span>
    m<span style='color:#d2cd86'>_</span>onlyTreatIfPurge<span style='color:#d2cd86'>:</span>0x0 <span style='color:#d2cd86'>(</span>System<span style='color:#00a800'>.</span>UInt32<span style='color:#d2cd86'>)</span>
    m<span style='color:#d2cd86'>_</span>isSystemMessage<span style='color:#d2cd86'>:</span>0x1 <span style='color:#d2cd86'>(</span>System<span style='color:#00a800'>.</span>UInt32<span style='color:#d2cd86'>)</span>
    m<span style='color:#d2cd86'>_</span>smtpExternalHostName<span style='color:#d2cd86'>:</span>NULL <span style='color:#d2cd86'>(</span>System<span style='color:#00a800'>.</span>String<span style='color:#d2cd86'>)</span>
    m<span style='color:#d2cd86'>_</span>MessageDateTimeReceived<span style='color:#d2cd86'>:</span><span style='color:#00a800'>00000000e0754990</span> <span style='color:#d2cd86'>(</span>System<span style='color:#00a800'>.</span>String<span style='color:#d2cd86'>)</span> Length<span style='color:#d2cd86'>=</span><span style='color:#00a800'>20</span><span style='color:#d2cd86'>,</span> String<span style='color:#d2cd86'>=</span><span style='color:#02d045'>"</span><span style='color:#00c4c4'>2015-07-21T08:41:46Z</span><span style='color:#02d045'>"</span>
    m<span style='color:#d2cd86'>_</span>MessageDateTimeSent<span style='color:#d2cd86'>:</span>00000000e07549d8 <span style='color:#d2cd86'>(</span>System<span style='color:#00a800'>.</span>String<span style='color:#d2cd86'>)</span> Length<span style='color:#d2cd86'>=</span><span style='color:#00a800'>20</span><span style='color:#d2cd86'>,</span> String<span style='color:#d2cd86'>=</span><span style='color:#02d045'>"</span><span style='color:#00c4c4'>2015-07-21T08:26:23Z</span><span style='color:#02d045'>"</span>
    m<span style='color:#d2cd86'>_</span>EHSBypassVirusScan<span style='color:#d2cd86'>:</span>0x0 <span style='color:#d2cd86'>(</span>System<span style='color:#00a800'>.</span>UInt32<span style='color:#d2cd86'>)</span>
    m<span style='color:#d2cd86'>_</span>PremiumEngineSet<span style='color:#d2cd86'>:</span>0x0 <span style='color:#d2cd86'>(</span>System<span style='color:#00a800'>.</span>UInt32<span style='color:#d2cd86'>)</span>
    m<span style='color:#d2cd86'>_</span>IsTransportDecrypted<span style='color:#d2cd86'>:</span>0x0 <span style='color:#d2cd86'>(</span>System<span style='color:#00a800'>.</span>UInt32<span style='color:#d2cd86'>)</span>
    m<span style='color:#d2cd86'>_</span>ReplayHeaders<span style='color:#d2cd86'>:</span>00000000810a0428 <span style='color:#d2cd86'>(</span>System<span style='color:#00a800'>.</span>String<span style='color:#d2cd86'>)</span> Length<span style='color:#d2cd86'>=</span><span style='color:#00a800'>172</span><span style='color:#d2cd86'>,</span> String<span style='color:#d2cd86'>=</span>"X<span style='color:#d2cd86'>-</span>Receiver<span style='color:#d2cd86'>:</span> <span style='color:#d2cd86'>&lt;</span>recipient<span style='color:#d2cd86'>&gt;</span> ORCPT<span style='color:#d2cd86'>=</span>rfc822<span style='color:#d2cd86'>;</span><span style='color:#d2cd86'>&lt;</span>recipient<span style='color:#d2cd86'>&gt;</span>
X<span style='color:#d2cd86'>-</span>Sender<span style='color:#d2cd86'>:</span> <span style='color:#d2cd86'>&lt;</span>sender<span style='color:#d2cd86'>&gt;</span>
X<span style='color:#d2cd86'>-</span>CreatedBy<span style='color:#d2cd86'>:</span> MSExchange12"
</pre>

When I checked message tracking, this was a partial indicator of what introduced the problem:

<pre style='color:#d1d1d1;background:#000000'>$msgTrk <span style='color:#00dddd'>=</span> <span style='color:#d2cd86'>@(</span><span style='color:#d2cd86'>)</span>
$hubz <span style='color:#00dddd'>=</span> <span style='color:#005fd2'>Get-TransportServer</span>
<span style='color:#e66170;font-weight:bold'>foreach</span><span style='color:#d2cd86'>(</span>$hub <span style='color:#e66170;font-weight:bold'>in</span> $hubz<span style='color:#d2cd86'>)</span>
<span style='color:#d2cd86'>{</span>
     $msgTrk <span style='color:#00dddd'>+=</span> <span style='color:#005fd2'>Get-MessageTrackingLog</span> -Server $hub<span style='color:#00dddd'>.</span><span style='color:#005fd2'>Name</span> -Recipients <span style='color:#00c4c4'>&lt;recipient&gt;</span> -ResultSize <span style='color:#00c4c4'>Unlimited</span>
<span style='color:#d2cd86'>}</span>

$msgTrk<span style='color:#00dddd'>.</span><span style='color:#005fd2'>Count</span>
<span style='color:#008c00'>1491474</span>
</pre>

In the words of Strongbad, "<em>That is not a small number! That's a very big number!</em>"

This was a limitation in the Forefront hook in Transport that caused it to consume a lot of resources on the heap, which was exacerbated by a mail-storm from the customer's on-premises.]]></content:encoded>
    </item>
    <item>
      <title>Debugging: Incremental Mailbox Sync Move Requests Cause 'StopAll' to be called on the Assistants Infrastructure Which Causes CalendarNotificationAssistant to Stop Processing Text Message (SMS) Notifications</title>
      <link>https://docs.microsoft.com/archive/blogs/johnbai/debugging-incremental-mailbox-sync-move-requests-cause-stopall-to-be-called-on-the-assistants-infrastructure-which-causes-calendarnotificationassistant-to-stop-processing-text-message-sms-notif</link>
      <pubDate>Tue, 05 Apr 2016 16:56:38 GMT</pubDate>
      <dc:creator><![CDATA[John Bailey [MSFT]]]></dc:creator>
      <guid
        isPermaLink="false">https://blogs.technet.microsoft.com/johnbai/?p=991</guid>
      <description><![CDATA[Not too long ago, I debugged an issue with the Calendar Notification Assistant (CNA), wherein the...]]></description>
      <content:encoded><![CDATA[Not too long ago, I debugged an issue with the Calendar Notification Assistant (CNA), wherein the Assistant would stop processing text message (SMS) notifications for events. The affected end-users noted that if they enabled text message (SMS) notifications in Outlook Web Access (OWA), the notifications would work for around 24 hours and then they would fall back into reproduction of the issue, in which the notifications stop altogether.

When I went looking in PowerShell, I could verify (via the Admin Audit Log) that the commands to set the configuration for SMS were ran and that it was enabled:
<pre style="font-size: small;color: #d1d1d1;background: #000000"><span style="color: #005fd2">Search-AdminAuditLog</span> -Cmdlets <span style="color: #00c4c4">Set-TextMessagingAccount</span> <span style="color: #904050">|</span> <span style="color: #005fd2">Where</span><span style="color: #d2cd86">{</span><span style="color: #007997">$_</span><span style="color: #00dddd">.</span><span style="color: #005fd2">ObjectModified</span> <span style="color: #00dddd">-contains</span> <span style="color: #02d045">'</span><span style="color: #00c4c4">&lt;objectId&gt;</span><span style="color: #02d045">'</span><span style="color: #d2cd86">}</span> <span style="color: #904050">|</span> <span style="color: #005fd2">FL</span>


<span style="color: #005fd2">RunspaceId</span>         <span style="color: #00c4c4">:</span> <span style="color: #00c4c4">c7683058-b25c-4557-818d-546cf5f178c6</span>
<span style="color: #005fd2">ObjectModified</span>     <span style="color: #00c4c4">:</span> <span style="color: #00c4c4">&lt;objectId&gt;</span>
<span style="color: #005fd2">CmdletName</span>         <span style="color: #00c4c4">:</span> <span style="color: #00c4c4">Set-TextMessagingAccount</span>
<span style="color: #005fd2">CmdletParameters</span>   <span style="color: #00c4c4">:</span> <span style="color: #d2cd86">{</span><span style="color: #005fd2">CountryRegionId</span><span style="color: #00dddd">,</span> <span style="color: #00c4c4">MobileOperatorId</span><span style="color: #00dddd">,</span> <span style="color: #00c4c4">NotificationPhoneNumber</span><span style="color: #00dddd">,</span> <span style="color: #00c4c4">Identity</span><span style="color: #d2cd86">}</span>
<span style="color: #005fd2">ModifiedProperties</span> <span style="color: #00c4c4">:</span> <span style="color: #d2cd86">{</span><span style="color: #d2cd86">}</span>
<span style="color: #005fd2">Caller</span>             <span style="color: #00c4c4">:</span> <span style="color: #00c4c4">&lt;callerObjectId&gt;</span>
<span style="color: #005fd2">ExternalAccess</span>     <span style="color: #00c4c4">:</span>
<span style="color: #005fd2">Succeeded</span>          <span style="color: #00c4c4">:</span> <span style="color: #00c4c4">True</span>
<span style="color: #005fd2">Error</span>              <span style="color: #00c4c4">:</span> <span style="color: #00c4c4">None</span>
<span style="color: #005fd2">RunDate</span>            <span style="color: #00c4c4">:</span> <span style="color: #008c00">12</span><span style="color: #00c4c4">/22/2015</span> <span style="color: #008c00">1</span><span style="color: #00c4c4">:15:17</span> <span style="color: #00c4c4">PM</span>
<span style="color: #005fd2">OriginatingServer</span>  <span style="color: #00c4c4">:</span> <span style="color: #00c4c4">&lt;serverName&gt;</span>
<span style="color: #005fd2">Identity</span>           <span style="color: #00c4c4">:</span> <span style="color: #00c4c4">&lt;identity&gt;</span>
<span style="color: #005fd2">IsValid</span>            <span style="color: #00c4c4">:</span> <span style="color: #00c4c4">True</span>
<span style="color: #005fd2">ObjectState</span>        <span style="color: #00c4c4">:</span> <span style="color: #00c4c4">New</span>
</pre>
We could also see the messages being sent via the Message Tracking Log (MTL):
<pre style="font-size: small;color: #d1d1d1;background: #000000">$MsgTrk <span style="color: #904050">|</span> <span style="color: #005fd2">Sort</span> <span style="color: #00c4c4">TimeStamp</span> <span style="color: #904050">|</span> <span style="color: #005fd2">FT</span> <span style="color: #00c4c4">EventId</span><span style="color: #00dddd">,</span><span style="color: #00c4c4">Source</span><span style="color: #00dddd">,</span><span style="color: #00c4c4">Sender</span><span style="color: #00dddd">,</span><span style="color: #00c4c4">Recipients</span><span style="color: #00dddd">,</span><span style="color: #00c4c4">MessageSubject</span><span style="color: #00dddd">,</span><span style="color: #00c4c4">TimeStamp</span> -AutoSize

<span style="color: #005fd2">EventId</span> <span style="color: #00c4c4">Source</span>      <span style="color: #00c4c4">Sender</span>                       <span style="color: #00c4c4">Recipients</span>                                  <span style="color: #00c4c4">MessageSubject</span> 	<span style="color: #00c4c4">Timestamp</span>
<span style="color: #00dddd">--</span><span style="color: #00dddd">--</span><span style="color: #00dddd">--</span><span style="color: #00dddd">-</span> <span style="color: #00dddd">--</span><span style="color: #00dddd">--</span><span style="color: #00dddd">--</span>      <span style="color: #00dddd">--</span><span style="color: #00dddd">--</span><span style="color: #00dddd">--</span>                       <span style="color: #00dddd">--</span><span style="color: #00dddd">--</span><span style="color: #00dddd">--</span><span style="color: #00dddd">--</span><span style="color: #00dddd">--</span>                                  <span style="color: #00dddd">--</span><span style="color: #00dddd">--</span><span style="color: #00dddd">--</span><span style="color: #00dddd">--</span><span style="color: #00dddd">--</span><span style="color: #00dddd">--</span><span style="color: #00dddd">--</span> 	<span style="color: #00dddd">--</span><span style="color: #00dddd">--</span><span style="color: #00dddd">--</span><span style="color: #00dddd">--</span>-
<span style="color: #005fd2">RECEIVE</span> <span style="color: #00c4c4">STOREDRIVER</span> <span style="color: #00c4c4">&lt;senderEmailAddress&gt;</span> 	<span style="color: #d2cd86">{</span><span style="color: #005fd2">IMCEAMOBILE-+2B10008675309@domain.com</span><span style="color: #d2cd86">}</span>                		<span style="color: #008c00">12</span><span style="color: #00c4c4">/17/2015</span> <span style="color: #008c00">13</span><span style="color: #00c4c4">:18:34</span>
<span style="color: #005fd2">SEND</span>    <span style="color: #00c4c4">AGENT</span>       <span style="color: #00c4c4">&lt;senderEmailAddress&gt;</span> 	<span style="color: #d2cd86">{</span><span style="color: #005fd2">IMCEAMOBILE-+2B10008675309@domain.com</span><span style="color: #d2cd86">}</span>                		<span style="color: #008c00">12</span><span style="color: #00c4c4">/17/2015</span> <span style="color: #008c00">13</span><span style="color: #00c4c4">:18:34</span>
<span style="color: #005fd2">RECEIVE</span> <span style="color: #00c4c4">STOREDRIVER</span> <span style="color: #00c4c4">&lt;senderEmailAddress&gt;</span> 	<span style="color: #d2cd86">{</span><span style="color: #005fd2">IMCEAMOBILE-+2B10008675309@domain.com</span><span style="color: #d2cd86">}</span>                		<span style="color: #008c00">12</span><span style="color: #00c4c4">/17/2015</span> <span style="color: #008c00">13</span><span style="color: #00c4c4">:19:46</span>
<span style="color: #005fd2">SEND</span>    <span style="color: #00c4c4">AGENT</span>       <span style="color: #00c4c4">&lt;senderEmailAddress&gt;</span> 	<span style="color: #d2cd86">{</span><span style="color: #005fd2">IMCEAMOBILE-+2B10008675309@domain.com</span><span style="color: #d2cd86">}</span>                		<span style="color: #008c00">12</span><span style="color: #00c4c4">/17/2015</span> <span style="color: #008c00">13</span><span style="color: #00c4c4">:19:46</span>
<span style="color: #005fd2">RECEIVE</span> <span style="color: #00c4c4">STOREDRIVER</span> <span style="color: #00c4c4">&lt;senderEmailAddress&gt;</span> 	<span style="color: #d2cd86">{</span><span style="color: #005fd2">IMCEAMOBILE-+2B10008675309@domain.com</span><span style="color: #d2cd86">}</span>                		<span style="color: #008c00">12</span><span style="color: #00c4c4">/17/2015</span> <span style="color: #008c00">16</span><span style="color: #00c4c4">:15:02</span>
<span style="color: #005fd2">SEND</span>    <span style="color: #00c4c4">AGENT</span>       <span style="color: #00c4c4">&lt;senderEmailAddress&gt;</span> 	<span style="color: #d2cd86">{</span><span style="color: #005fd2">IMCEAMOBILE-+2B10008675309@domain.com</span><span style="color: #d2cd86">}</span>                		<span style="color: #008c00">12</span><span style="color: #00c4c4">/17/2015</span> <span style="color: #008c00">16</span><span style="color: #00c4c4">:15:02</span>
</pre>
Using this, I could tell the originator of the message: The Mailbox Assistants. This was done by the seeing that the client and the server were the same:
<pre style="font-size: small;color: #d1d1d1;background: #000000">$MsgTrk<span style="color: #d2cd86">[</span><span style="color: #008c00">0</span><span style="color: #d2cd86">]</span> <span style="color: #904050">|</span> <span style="color: #005fd2">FL</span>


<span style="color: #005fd2">RunspaceId</span>              <span style="color: #00c4c4">:</span> <span style="color: #00c4c4">13ad4581-25d9-4136-8ed1-a284b7e979db</span>
<span style="color: #005fd2">Timestamp</span>               <span style="color: #00c4c4">:</span> <span style="color: #008c00">12</span><span style="color: #00c4c4">/21/2015</span> <span style="color: #008c00">15</span><span style="color: #00c4c4">:40:31</span>
<span style="color: #005fd2">ClientIp</span>                <span style="color: #00c4c4">:</span> <span style="color: #00c4c4">&lt;ipAddress&gt;</span>
<span style="color: #005fd2">ClientHostname</span>          <span style="color: #00c4c4">:</span> <span style="color: #00c4c4">&lt;serverName&gt;</span>
<span style="color: #005fd2">ServerIp</span>                <span style="color: #00c4c4">:</span> <span style="color: #00c4c4">&lt;ipAddress&gt;</span>
<span style="color: #005fd2">ServerHostname</span>          <span style="color: #00c4c4">:</span> <span style="color: #00c4c4">&lt;serverName&gt;</span>
<span style="color: #005fd2">SourceContext</span>           <span style="color: #00c4c4">:</span> <span style="color: #00c4c4">08D30340C2F43943</span>
<span style="color: #005fd2">ConnectorId</span>             <span style="color: #00c4c4">:</span>
<span style="color: #005fd2">Source</span>                  <span style="color: #00c4c4">:</span> <span style="color: #00c4c4">STOREDRIVER</span>
<span style="color: #005fd2">EventId</span>                 <span style="color: #00c4c4">:</span> <span style="color: #00c4c4">RECEIVE</span>
<span style="color: #005fd2">InternalMessageId</span>       <span style="color: #00c4c4">:</span> <span style="color: #008c00">2429739</span>
<span style="color: #005fd2">MessageId</span>               <span style="color: #00c4c4">:</span> <span style="color: #00c4c4">&lt;messageId&gt;</span>
<span style="color: #005fd2">Recipients</span>              <span style="color: #00c4c4">:</span> <span style="color: #d2cd86">{</span><span style="color: #005fd2">IMCEAMOBILE-+2B10008675309@domain.com</span><span style="color: #d2cd86">}</span>
<span style="color: #005fd2">RecipientStatus</span>         <span style="color: #00c4c4">:</span> <span style="color: #d2cd86">{</span><span style="color: #005fd2">To</span><span style="color: #d2cd86">}</span>
<span style="color: #005fd2">TotalBytes</span>              <span style="color: #00c4c4">:</span> <span style="color: #008c00">6386</span>
<span style="color: #005fd2">RecipientCount</span>          <span style="color: #00c4c4">:</span> <span style="color: #008c00">1</span>
<span style="color: #005fd2">RelatedRecipientAddress</span> <span style="color: #00c4c4">:</span>
<span style="color: #005fd2">Reference</span>               <span style="color: #00c4c4">:</span>
<span style="color: #005fd2">MessageSubject</span>          <span style="color: #00c4c4">:</span>
<span style="color: #005fd2">Sender</span>                  <span style="color: #00c4c4">:</span> <span style="color: #00c4c4">&lt;emailAddress&gt;</span>
<span style="color: #005fd2">ReturnPath</span>              <span style="color: #00c4c4">:</span> <span style="color: #00c4c4">&lt;emailAddress&gt;</span>
<span style="color: #005fd2">MessageInfo</span>             <span style="color: #00c4c4">:</span> <span style="color: #00c4c4">04I:</span>
<span style="color: #005fd2">MessageLatency</span>          <span style="color: #00c4c4">:</span>
<span style="color: #005fd2">MessageLatencyType</span>      <span style="color: #00c4c4">:</span> <span style="color: #00c4c4">None</span>
<span style="color: #005fd2">EventData</span>               <span style="color: #00c4c4">:</span> <span style="color: #d2cd86">{</span><span style="color: #bb7977">[MailboxDatabaseGuid, 347a971c-e8f5-45de-8e01-870ed4dc6901]</span><span style="color: #00dddd">,</span> <span style="color: #bb7977">[ItemEntryId, 00-00-00-00-1E-95-32-44-0A-EA-D6-47-A5-98-9B-F0-5F-89-B9-09-07-00-BE-9B-24-68-00-23-66-49-95-41-BB-56-C6-02-E3-D0-00-00-00-03-71-5C-00-00-75-FB-A6-9E-77-CF-BE-43-A8-2A-B9-7F-C1-34-9A-01-00-00-1C-C-91-D1-00-00]</span><span style="color: #d2cd86">}</span>
</pre>
Once I knew this, I checked the Database Event Watermarks for any backlog:
<pre style="font-size: small;color: #d1d1d1;background: #000000"><span style="color: #005fd2">&lt;databaseName&gt;\&lt;serverName&gt;</span> <span style="color: #00c4c4">CalendarNotificationAssistant</span>             <span style="color: #008c00">977234167</span> <span style="color: #008c00">989106153</span>    <span style="color: #008c00">11871986</span>
</pre>
I now had enough data to assert that a dump of the process was necessary in order to see what's going on.

At the time of the dump, despite the fact that the user was no longer receiving text message (SMS) notifications, the process was processing (for lack of a better turn-of-phrase at the moment) a two week old message in thread 21 in the stack:
<pre style="font-size: small;color: #d1d1d1;background: #000000"><span style="color: #00a800">0</span><span style="color: #d2cd86">:</span><span style="color: #00a800">021</span><span style="color: #d2cd86">&gt;</span> <span style="color: #d2cd86">!</span>mdt <span style="color: #00a800">00000000036e1088</span>
<span style="color: #00a800">00000000036e1088</span> <span style="color: #d2cd86">(</span>Microsoft<span style="color: #00a800">.</span>Exchange<span style="color: #00a800">.</span>MailboxAssistants<span style="color: #00a800">.</span>Assistants<span style="color: #00a800">.</span>CalendarNotification<span style="color: #00a800">.</span>CalendarEvent<span style="color: #d2cd86">)</span>
    <span style="color: #d2cd86">&lt;</span>CalendarItemIdentity<span style="color: #d2cd86">&gt;</span>k<span style="color: #d2cd86">_</span><span style="color: #d2cd86">_</span>BackingField<span style="color: #d2cd86">:</span><span style="color: #00a800">00000000036e1208</span> <span style="color: #d2cd86">(</span>Microsoft<span style="color: #00a800">.</span>Exchange<span style="color: #00a800">.</span>Data<span style="color: #00a800">.</span>Storage<span style="color: #00a800">.</span>StoreObjectId<span style="color: #d2cd86">)</span>
    <span style="color: #d2cd86">&lt;</span>CalendarItemOccurrenceIdentity<span style="color: #d2cd86">&gt;</span>k<span style="color: #d2cd86">_</span><span style="color: #d2cd86">_</span>BackingField<span style="color: #d2cd86">:</span><span style="color: #00a800">00000000036e1048</span> <span style="color: #d2cd86">(</span>Microsoft<span style="color: #00a800">.</span>Exchange<span style="color: #00a800">.</span>Data<span style="color: #00a800">.</span>Storage<span style="color: #00a800">.</span>OccurrenceStoreObjectId<span style="color: #d2cd86">)</span>
    <span style="color: #d2cd86">&lt;</span>CalendarItemType<span style="color: #d2cd86">&gt;</span>k<span style="color: #d2cd86">_</span><span style="color: #d2cd86">_</span>BackingField<span style="color: #d2cd86">:</span>0x1 <span style="color: #d2cd86">(</span>Microsoft<span style="color: #00a800">.</span>Exchange<span style="color: #00a800">.</span>Data<span style="color: #00a800">.</span>Storage<span style="color: #00a800">.</span>CalendarItemType<span style="color: #d2cd86">)</span>
    <span style="color: #d2cd86">&lt;</span>NormalizedSubject<span style="color: #d2cd86">&gt;</span>k<span style="color: #d2cd86">_</span><span style="color: #d2cd86">_</span>BackingField<span style="color: #d2cd86">:</span><span style="color: #00a800">00000000036e0880</span> <span style="color: #d2cd86">(</span>System<span style="color: #00a800">.</span>String<span style="color: #d2cd86">)</span> Length<span style="color: #d2cd86">=</span><span style="color: #00a800">5</span><span style="color: #d2cd86">,</span> String<span style="color: #d2cd86">=</span><span style="color: #02d045">"</span><span style="color: #00c4c4">Lunch</span><span style="color: #02d045">"</span>
    <span style="color: #d2cd86">&lt;</span>Location<span style="color: #d2cd86">&gt;</span>k<span style="color: #d2cd86">_</span><span style="color: #d2cd86">_</span>BackingField<span style="color: #d2cd86">:</span><span style="color: #00a800">00000000036e0860</span> <span style="color: #d2cd86">(</span>System<span style="color: #00a800">.</span>String<span style="color: #d2cd86">)</span> 
    <span style="color: #d2cd86">&lt;</span>ReminderIsSet<span style="color: #d2cd86">&gt;</span>k<span style="color: #d2cd86">_</span><span style="color: #d2cd86">_</span>BackingField<span style="color: #d2cd86">:</span>true <span style="color: #d2cd86">(</span>System<span style="color: #00a800">.</span>Boolean<span style="color: #d2cd86">)</span>
    <span style="color: #d2cd86">&lt;</span>ReminderTime<span style="color: #d2cd86">&gt;</span>k<span style="color: #d2cd86">_</span><span style="color: #d2cd86">_</span>BackingField<span style="color: #d2cd86">:</span><span style="color: #d2cd86">(</span>Microsoft<span style="color: #00a800">.</span>Exchange<span style="color: #00a800">.</span>ExchangeSystem<span style="color: #00a800">.</span>ExDateTime<span style="color: #d2cd86">)</span> VALTYPE <span style="color: #d2cd86">(</span>MT<span style="color: #d2cd86">=</span>000007ff002c5cb0<span style="color: #d2cd86">,</span> ADDR<span style="color: #d2cd86">=</span><span style="background-color:red">00000000036e10d0</span><span style="color: #d2cd86">)</span>
    <span style="color: #d2cd86">&lt;</span>ReminderMinutesBeforeStart<span style="color: #d2cd86">&gt;</span>k<span style="color: #d2cd86">_</span><span style="color: #d2cd86">_</span>BackingField<span style="color: #d2cd86">:</span>0xf <span style="color: #d2cd86">(</span>System<span style="color: #00a800">.</span>Int32<span style="color: #d2cd86">)</span>
    <span style="color: #d2cd86">&lt;</span>StartTime<span style="color: #d2cd86">&gt;</span>k<span style="color: #d2cd86">_</span><span style="color: #d2cd86">_</span>BackingField<span style="color: #d2cd86">:</span><span style="color: #d2cd86">(</span>Microsoft<span style="color: #00a800">.</span>Exchange<span style="color: #00a800">.</span>ExchangeSystem<span style="color: #00a800">.</span>ExDateTime<span style="color: #d2cd86">)</span> VALTYPE <span style="color: #d2cd86">(</span>MT<span style="color: #d2cd86">=</span>000007ff002c5cb0<span style="color: #d2cd86">,</span> ADDR<span style="color: #d2cd86">=</span>00000000036e10f0<span style="color: #d2cd86">)</span>
    <span style="color: #d2cd86">&lt;</span>EndTime<span style="color: #d2cd86">&gt;</span>k<span style="color: #d2cd86">_</span><span style="color: #d2cd86">_</span>BackingField<span style="color: #d2cd86">:</span><span style="color: #d2cd86">(</span>Microsoft<span style="color: #00a800">.</span>Exchange<span style="color: #00a800">.</span>ExchangeSystem<span style="color: #00a800">.</span>ExDateTime<span style="color: #d2cd86">)</span> VALTYPE <span style="color: #d2cd86">(</span>MT<span style="color: #d2cd86">=</span>000007ff002c5cb0<span style="color: #d2cd86">,</span> ADDR<span style="color: #d2cd86">=</span><span style="color: #00a800">00000000036e1110</span><span style="color: #d2cd86">)</span>
    <span style="color: #d2cd86">&lt;</span>FreeBusyStatus<span style="color: #d2cd86">&gt;</span>k<span style="color: #d2cd86">_</span><span style="color: #d2cd86">_</span>BackingField<span style="color: #d2cd86">:</span>0x2 <span style="color: #d2cd86">(</span>Microsoft<span style="color: #00a800">.</span>Exchange<span style="color: #00a800">.</span>Data<span style="color: #00a800">.</span>Storage<span style="color: #00a800">.</span>BusyType<span style="color: #d2cd86">)</span>
    <span style="color: #d2cd86">&lt;</span>ChangeHighlight<span style="color: #d2cd86">&gt;</span>k<span style="color: #d2cd86">_</span><span style="color: #d2cd86">_</span>BackingField<span style="color: #d2cd86">:</span>0x0 <span style="color: #d2cd86">(</span>Microsoft<span style="color: #00a800">.</span>Exchange<span style="color: #00a800">.</span>Data<span style="color: #00a800">.</span>Storage<span style="color: #00a800">.</span>ChangeHighlightProperties<span style="color: #d2cd86">)</span>
    <span style="color: #d2cd86">&lt;</span>AppointmentState<span style="color: #d2cd86">&gt;</span>k<span style="color: #d2cd86">_</span><span style="color: #d2cd86">_</span>BackingField<span style="color: #d2cd86">:</span>0x0 <span style="color: #d2cd86">(</span>Microsoft<span style="color: #00a800">.</span>Exchange<span style="color: #00a800">.</span>Data<span style="color: #00a800">.</span>Storage<span style="color: #00a800">.</span>AppointmentStateFlags<span style="color: #d2cd86">)</span>
    <span style="color: #d2cd86">&lt;</span>CreationRequestTime<span style="color: #d2cd86">&gt;</span>k<span style="color: #d2cd86">_</span><span style="color: #d2cd86">_</span>BackingField<span style="color: #d2cd86">:</span><span style="color: #d2cd86">(</span>Microsoft<span style="color: #00a800">.</span>Exchange<span style="color: #00a800">.</span>ExchangeSystem<span style="color: #00a800">.</span>ExDateTime<span style="color: #d2cd86">)</span> VALTYPE <span style="color: #d2cd86">(</span>MT<span style="color: #d2cd86">=</span>000007ff002c5cb0<span style="color: #d2cd86">,</span> ADDR<span style="color: #d2cd86">=</span><span style="color: #00a800">00000000036e1130</span><span style="color: #d2cd86">)</span>
    <span style="color: #d2cd86">&lt;</span>ResponseType<span style="color: #d2cd86">&gt;</span>k<span style="color: #d2cd86">_</span><span style="color: #d2cd86">_</span>BackingField<span style="color: #d2cd86">:</span>0x0 <span style="color: #d2cd86">(</span>Microsoft<span style="color: #00a800">.</span>Exchange<span style="color: #00a800">.</span>Data<span style="color: #00a800">.</span>Storage<span style="color: #00a800">.</span>ResponseType<span style="color: #d2cd86">)</span>
    <span style="color: #d2cd86">&lt;</span>OldStartTime<span style="color: #d2cd86">&gt;</span>k<span style="color: #d2cd86">_</span><span style="color: #d2cd86">_</span>BackingField<span style="color: #d2cd86">:</span><span style="color: #d2cd86">(</span>System<span style="color: #00a800">.</span>Nullable`<span style="color: #00a800">1</span><span style="color: #d2cd86">)</span> VALTYPE <span style="color: #d2cd86">(</span>MT<span style="color: #d2cd86">=</span>000007fef6207cc8<span style="color: #d2cd86">,</span> ADDR<span style="color: #d2cd86">=</span><span style="color: #00a800">00000000036e1150</span><span style="color: #d2cd86">)</span>
    <span style="color: #d2cd86">&lt;</span>OldEndTime<span style="color: #d2cd86">&gt;</span>k<span style="color: #d2cd86">_</span><span style="color: #d2cd86">_</span>BackingField<span style="color: #d2cd86">:</span><span style="color: #d2cd86">(</span>System<span style="color: #00a800">.</span>Nullable`<span style="color: #00a800">1</span><span style="color: #d2cd86">)</span> VALTYPE <span style="color: #d2cd86">(</span>MT<span style="color: #d2cd86">=</span>000007fef6207cc8<span style="color: #d2cd86">,</span> ADDR<span style="color: #d2cd86">=</span><span style="color: #00a800">00000000036e1178</span><span style="color: #d2cd86">)</span>
</pre>
We can see the date of the item from the backing field:
<pre style="font-size: small;color: #d1d1d1;background: #000000"><span style="color: #00a800">0</span><span style="color: #d2cd86">:</span><span style="color: #00a800">021</span><span style="color: #d2cd86">&gt;</span> <span style="color: #d2cd86">!</span>mdt 000007ff002c5cb0 <span style="background-color:red">00000000036e10d0</span>
<span style="color: #d2cd86">(</span>Microsoft<span style="color: #00a800">.</span>Exchange<span style="color: #00a800">.</span>ExchangeSystem<span style="color: #00a800">.</span>ExDateTime<span style="color: #d2cd86">)</span> VALTYPE <span style="color: #d2cd86">(</span>MT<span style="color: #d2cd86">=</span>000007ff002c5cb0<span style="color: #d2cd86">,</span> ADDR<span style="color: #d2cd86">=</span>00000000036e10d0<span style="color: #d2cd86">)</span>
    timeZone<span style="color: #d2cd86">:</span>00000000014bb040 <span style="color: #d2cd86">(</span>Microsoft<span style="color: #00a800">.</span>Exchange<span style="color: #00a800">.</span>ExchangeSystem<span style="color: #00a800">.</span>ExTimeZone<span style="color: #d2cd86">)</span>
    universalTime<span style="color: #d2cd86">:</span><span style="color: #d2cd86">(</span>System<span style="color: #00a800">.</span>DateTime<span style="color: #d2cd86">)</span> <span style="color: #00a800">2015</span><span style="color: #d2cd86">/</span><span style="color: #00a800">12</span><span style="color: #d2cd86">/</span><span style="color: #00a800">23</span> <span style="color: #00a800">16:15:00</span><span style="color: #00a800">.000</span> VALTYPE <span style="color: #d2cd86">(</span>MT<span style="color: #d2cd86">=</span>000007fef62482d0<span style="color: #d2cd86">,</span> ADDR<span style="color: #d2cd86">=</span>00000000036e10d8<span style="color: #d2cd86">)</span>
    localTime<span style="color: #d2cd86">:</span><span style="color: #d2cd86">(</span>System<span style="color: #00a800">.</span>Nullable`<span style="color: #00a800">1</span><span style="color: #d2cd86">)</span> VALTYPE <span style="color: #d2cd86">(</span>MT<span style="color: #d2cd86">=</span>000007fef6207cc8<span style="color: #d2cd86">,</span> ADDR<span style="color: #d2cd86">=</span>00000000036e10e0<span style="color: #d2cd86">)</span>
</pre>
And we can see that it's processing the item for the same user that lodged the complaint:
<pre style="font-size: small;color: #d1d1d1;background: #000000"><span style="color: #00a800">0</span><span style="color: #d2cd86">:</span><span style="color: #00a800">021</span><span style="color: #d2cd86">&gt;</span> <span style="color: #d2cd86">!</span>mdt 0000000003761ad0
0000000003761ad0 <span style="color: #d2cd86">(</span>System<span style="color: #00a800">.</span>String<span style="color: #d2cd86">)</span> Length<span style="color: #d2cd86">=</span><span style="color: #00a800">129</span><span style="color: #d2cd86">,</span> String<span style="color: #d2cd86">=</span><span style="color: #02d045">"</span><span style="color: #00c4c4">&lt;sameUserFromAbove&gt;</span><span style="color: #02d045">"</span>
</pre>
Finally, after perusing the dump for an hour or more, I found what I believed to be introducing the issue:

<pre style="font-size: small;color: #d1d1d1;background: #000000"><span style="color: #d2cd86">&lt;</span>ContextInfo<span style="color: #d2cd86">&gt;</span>k<span style="color: #d2cd86">_</span><span style="color: #d2cd86">_</span>BackingField<span style="color: #d2cd86">:</span>00000000032fe908 <span style="color: #d2cd86">(</span>System<span style="color: #00a800">.</span>String<span style="color: #d2cd86">)</span> Length<span style="color: #d2cd86">=</span><span style="color: #00a800">7</span><span style="color: #d2cd86">,</span> String<span style="color: #d2cd86">=</span><span style="color: #02d045">"</span><span style="color: #00c4c4">StopAll</span><span style="color: #02d045">"</span>
</pre>
Given this, it was time to go to the devs and figure out what was going on. After some back-and-forth and a conference call with both the Store and Calendaring devs, we arrived at what was causing the issue.

First, it's important to understand that an incremental sync was created for the user but had not - as of the time of debugging - been completed:
<pre style="font-size: small;color: #d1d1d1;background: #000000"><span style="color: #005fd2">Get-MoveRequestStatistics</span> <span style="color: #00c4c4">957ca0a9-f84f-425e-a263-5b468e90d574</span> <span style="color: #904050">|</span> <span style="color: #005fd2">FL</span> <span style="color: #00c4c4">*increm*</span>


<span style="color: #005fd2">EffectiveIncrementalSyncInterval</span>  <span style="color: #00c4c4">:</span> <span style="color: #009f00">1.00</span><span style="color: #00c4c4">:00:00</span>
<span style="color: #005fd2">ConfiguredIncrementalSyncInterval</span> <span style="color: #00c4c4">:</span> <span style="color: #009f00">1.00</span><span style="color: #00c4c4">:00:00</span>
</pre>
Since it syncs once a day, this aligns with the end-user's statement regarding reconfiguration but we needed proof.

When we went and looked at the Mailbox Database Events for the mailbox in question, we saw the 'MailboxMoveStarted' event fire:
<pre style="font-size: small;color: #d1d1d1;background: #000000">$eventz <span style="color: #904050">|</span> <span style="color: #005fd2">FT</span> <span style="color: #00c4c4">Counter</span><span style="color: #00dddd">,</span><span style="color: #00c4c4">ItemType</span><span style="color: #00dddd">,</span><span style="color: #00c4c4">EventName</span><span style="color: #00dddd">,</span><span style="color: #00c4c4">ObjectClass</span><span style="color: #00dddd">,</span><span style="color: #00c4c4">Mailbox</span><span style="color: #00dddd">,</span><span style="color: #00c4c4">CreateTime</span> -AutoSize

  <span style="color: #005fd2">Counter</span> <span style="color: #00c4c4">ItemType</span>   <span style="color: #00c4c4">EventName</span>          <span style="color: #00c4c4">ObjectClass</span> <span style="color: #00c4c4">Mailbox</span> <span style="color: #00c4c4">CreateTime</span>
  <span style="color: #00dddd">--</span><span style="color: #00dddd">--</span><span style="color: #00dddd">--</span><span style="color: #00dddd">-</span> <span style="color: #00dddd">--</span><span style="color: #00dddd">--</span><span style="color: #00dddd">--</span><span style="color: #00dddd">--</span>   <span style="color: #00dddd">--</span><span style="color: #00dddd">--</span><span style="color: #00dddd">--</span><span style="color: #00dddd">--</span><span style="color: #00dddd">-</span>          <span style="color: #00dddd">--</span><span style="color: #00dddd">--</span><span style="color: #00dddd">--</span><span style="color: #00dddd">--</span><span style="color: #00dddd">--</span><span style="color: #00dddd">-</span> <span style="color: #00dddd">--</span><span style="color: #00dddd">--</span><span style="color: #00dddd">--</span><span style="color: #00dddd">-</span> <span style="color: #00dddd">--</span><span style="color: #00dddd">--</span><span style="color: #00dddd">--</span><span style="color: #00dddd">--</span><span style="color: #00dddd">--</span>
<span style="color: #008c00">974015558</span> MAPI_STORE MailboxMoveStarted                     <span style="color: #008c00">1</span><span style="color: #00dddd">/</span><span style="color: #008c00">25</span><span style="color: #00dddd">/</span><span style="color: #008c00">2016</span> <span style="color: #008c00">21</span>:<span style="color: #008c00">32</span>:<span style="color: #008c00">01</span>
<span style="color: #008c00">974683553</span> MAPI_STORE MailboxMoveStarted                     <span style="color: #008c00">1</span><span style="color: #00dddd">/</span><span style="color: #008c00">26</span><span style="color: #00dddd">/</span><span style="color: #008c00">2016</span> <span style="color: #008c00">21</span>:<span style="color: #008c00">41</span>:<span style="color: #008c00">10</span>
<span style="color: #008c00">975414298</span> MAPI_STORE MailboxMoveStarted                     <span style="color: #008c00">1</span><span style="color: #00dddd">/</span><span style="color: #008c00">27</span><span style="color: #00dddd">/</span><span style="color: #008c00">2016</span> <span style="color: #008c00">21</span>:<span style="color: #008c00">44</span>:<span style="color: #008c00">00</span>
<span style="color: #008c00">976136834</span> MAPI_STORE MailboxMoveStarted                     <span style="color: #008c00">1</span><span style="color: #00dddd">/</span><span style="color: #008c00">28</span><span style="color: #00dddd">/</span><span style="color: #008c00">2016</span> <span style="color: #008c00">21</span>:<span style="color: #008c00">52</span>:<span style="color: #008c00">10</span>
<span style="color: #008c00">976842768</span> MAPI_STORE MailboxMoveStarted                     <span style="color: #008c00">1</span><span style="color: #00dddd">/</span><span style="color: #008c00">29</span><span style="color: #00dddd">/</span><span style="color: #008c00">2016</span> <span style="color: #008c00">22</span>:<span style="color: #008c00">02</span>:<span style="color: #008c00">30</span>
<span style="color: #008c00">977056359</span> MAPI_STORE MailboxMoveStarted                     <span style="color: #008c00">1</span><span style="color: #00dddd">/</span><span style="color: #008c00">30</span><span style="color: #00dddd">/</span><span style="color: #008c00">2016</span> <span style="color: #008c00">22</span>:<span style="color: #008c00">03</span>:<span style="color: #008c00">45</span>
<span style="color: #008c00">977195259</span> MAPI_STORE MailboxMoveStarted                     <span style="color: #008c00">1</span><span style="color: #00dddd">/</span><span style="color: #008c00">31</span><span style="color: #00dddd">/</span><span style="color: #008c00">2016</span> <span style="color: #008c00">22</span>:<span style="color: #008c00">15</span>:<span style="color: #008c00">01</span>
</pre>

What's important to note as a side-comment/take-away is that the 24-hour interval doesn't initiate from the same start time. This is because the counter for the 24-hour interval starts when the last sync stopped.

When we matched this against a trace of the Assistant, we saw the following:
<pre style="font-size: small;color: #d1d1d1;background: #000000"><span style="color: #02d045">"</span><span style="color: #00c4c4">2016/01/13-03:06:05.279</span><span style="color: #02d045">"</span><span style="color: #00dddd">,</span><span style="color: #02d045">"</span><span style="color: #00c4c4">9444</span><span style="color: #02d045">"</span><span style="color: #00dddd">,</span><span style="color: #02d045">"</span><span style="color: #00c4c4">2480</span><span style="color: #02d045">"</span><span style="color: #00dddd">,</span><span style="color: #02d045">"</span><span style="color: #00c4c4">Assistants</span><span style="color: #02d045">"</span><span style="color: #00dddd">,</span><span style="color: #02d045">"</span><span style="color: #00c4c4">EventDispatcher</span><span style="color: #02d045">"</span><span style="color: #00dddd">,</span><span style="color: #02d045">"</span><span style="color: #00c4c4">Dispatcher for &lt;userDisplayName&gt; (957ca0a9-f84f-425e-a263-5b468e90d574) and Calendar Notification Assistant: Event handled successfully: Counter: 0x3B331E14; MailboxID: 957ca0a9-f84f-425e-a263-5b468e90d574; Mask: MailboxMoveStarted; Flags: Source; ExtendedFlags: None;Object Class: ; Created Time: 1/13/2016 11:06:04 AM;Item Type: MAPI_STOREItem EntryId: Parent entryId: Old Item entryId: Old parent entryId: SID: S-1-5-21-276227223-3107228690-1043224028-159164Client Type: MigrationDocument ID: 0</span><span style="color: #02d045">"</span> 
<span style="color: #02d045">"</span><span style="color: #00c4c4">85868820</span><span style="color: #02d045">"</span>        020B591B          Debug <span style="color: #008c00">2016</span><span style="color: #00dddd">/</span><span style="color: #008c00">01</span><span style="color: #00dddd">/</span><span style="color: #008c00">13</span><span style="color: #00dddd">-</span><span style="color: #008c00">02</span>:<span style="color: #008c00">01</span>:<span style="color: #009f00">49.777</span> <span style="color: #008c00">9444</span>     <span style="color: #008c00">2480</span>            MailboxAssistants<span style="color: #00dddd">.</span><span style="color: #005fd2">Assistants</span><span style="color: #00dddd">.</span><span style="color: #005fd2">CalendarNotification</span> Assistant           rmd<span style="color: #00dddd">--</span><span style="color: #00dddd">--</span><span style="color: #00dddd">-</span> caller: StopAll<span style="color: #00dddd">,</span> subj: &lt;subject<span style="color: #904050">&gt;</span>, <span style="color: #00c4c4">usr:</span> <span style="color: #00c4c4">&lt;objectId&gt;c1</span>, <span style="color: #00c4c4">calItemId:</span> <span style="color: #00c4c4">RgAAAAAelTJECurWR6WYm/BfibkJBwC+myRoACNmSZVBu1bGAuPQAAAAA3FaAAB1+6aed8++Q6gquX/BNJoBAAAcyVmOAAAP</span>, <span style="color: #00c4c4">calItemOccId:</span> , <span style="color: #00c4c4">event_t:</span> <span style="color: #008c00">01</span><span style="color: #00c4c4">/13/2016</span> <span style="color: #008c00">16</span><span style="color: #00c4c4">:15:00</span>, <span style="color: #00c4c4">rmd_t:</span> <span style="color: #008c00">01</span><span style="color: #00c4c4">/13/2016</span> <span style="color: #008c00">19</span><span style="color: #00c4c4">:45:00</span>, <span style="color: #00c4c4">s_t:</span> <span style="color: #008c00">01</span><span style="color: #00c4c4">/13/2016</span> <span style="color: #008c00">20</span><span style="color: #00c4c4">:00:00</span>, <span style="color: #00c4c4">e_t:</span> <span style="color: #008c00">01</span><span style="color: #00c4c4">/13/2016</span> <span style="color: #008c00">21</span><span style="color: #00c4c4">:30:00</span>
<span style="color: #02d045">"</span><span style="color: #00c4c4">8326743</span><span style="color: #02d045">"</span>         006B5AB0          Debug <span style="color: #008c00">2016</span><span style="color: #00dddd">/</span><span style="color: #008c00">01</span><span style="color: #00dddd">/</span><span style="color: #008c00">13</span><span style="color: #00dddd">-</span><span style="color: #008c00">03</span>:<span style="color: #008c00">06</span>:<span style="color: #009f00">05.277</span> <span style="color: #008c00">9444</span>     <span style="color: #008c00">2480</span>            MailboxAssistants<span style="color: #00dddd">.</span><span style="color: #005fd2">Assistants</span><span style="color: #00dddd">.</span><span style="color: #005fd2">CalendarNotification</span> UserSettings      Processing Disabling event for mailbox &lt;objectId<span style="color: #904050">&gt;</span> <span style="color: #00c4c4">on</span> <span style="color: #00c4c4">database</span> <span style="color: #00c4c4">347a971c-e8f5-45de-8e01-870ed4dc6901</span>
</pre>
To elaborate on this bug and explain it further: Recall back in Exchange 2007 (E12) that mailbox moves caused the mailbox to be locked. When this occurred, it would've been necessary for any code that attempts to open the message store to stop processing the mailbox until the move is complete. Fast-forward a few years (nigh to a decade) and incremental sync move requests are a common, every day occurrence. When the incremental sync starts, there is no delineation between it and a regular move request, so a database event fires and this signals the assistant to stop processing the mailbox. When the text message (SMS) notification is reconfigured, it signals the Assistant to start processing on the mailbox. This explains the behavior seen by the end-users.

For those of you concerned about hitting this bug in the wild, we've only see it happen once and we're using that instance to drive a change in the Assistant logic in all versions of Exchange (assuming all have the same bug in the logic).]]></content:encoded>
    </item>
    <item>
      <title>PowerShell + C#: Accessing the Current Runspace And Adding a Snap-In</title>
      <link>https://docs.microsoft.com/archive/blogs/johnbai/powershell-c-accessing-the-current-runspace-and-adding-a-snapin</link>
      <pubDate>Tue, 05 Apr 2016 14:18:42 GMT</pubDate>
      <dc:creator><![CDATA[John Bailey [MSFT]]]></dc:creator>
      <guid
        isPermaLink="false">https://blogs.technet.microsoft.com/johnbai/?p=971</guid>
      <description><![CDATA[I've been coding an assembly for import into the Exchange Management Shell (EMS) in C# for some...]]></description>
      <content:encoded><![CDATA[I've been coding an assembly for import into the Exchange Management Shell (EMS) in C# for some time. One of the problems that I ran into was how to load the Support assembly, since it's not imported into the RunSpace by default. After a while of testing/trying/failing and repeat ad nauseam, I found the answer in the form of what I consider to be a cheat.

You see, when the module is loaded, I'm depending on the current runspace as it exists to execute commands. There's no proper way to access the runspace that you're currently executing to modify it's configuration by adding the snap-in. 

So, we arrive at the "cheat":
<pre style='font-size:xx-small;color:#d1d1d1;background:#000000'><span style='color:#9999a9'>// We use the current runspace to cast our calls into.</span>
<span style='color:#9999a9'>// This grants us access to the current runspace, instead of instantiating a new one.</span>
<span style='color:#9999a9'>// More information on the PowerShell.Create method can be found here: </span><span style='color:#6070ec'>https://msdn.microsoft.com/en-us/library/system.management.automation.powershell.create(v=vs.85).aspx</span>
<span style='color:#9999a9'>// More information on the RunspaceMode.CurrentRunspace enumeration value can be found here: </span><span style='color:#6070ec'>https://msdn.microsoft.com/en-us/library/system.management.automation.runspacemode(v=vs.85).aspx</span>
PowerShell initialPowerShell <span style='color:#d2cd86'>=</span> PowerShell<span style='color:#d2cd86'>.</span>Create<span style='color:#d2cd86'>(</span>RunspaceMode<span style='color:#d2cd86'>.</span>CurrentRunspace<span style='color:#d2cd86'>)</span><span style='color:#b060b0'>;</span>

<span style='color:#9999a9'>// More information on the PowerShell.AddScript method can be found here: </span><span style='color:#6070ec'>https://msdn.microsoft.com/en-us/library/dd182436(v=vs.85).aspx</span>
initialPowerShell<span style='color:#d2cd86'>.</span>Commands<span style='color:#d2cd86'>.</span>AddScript<span style='color:#d2cd86'>(</span><span style='color:#02d045'>"</span><span style='color:#00c4c4'>Add-PSSnapin Microsoft.Exchange.Management.Powershell.Support</span><span style='color:#02d045'>"</span><span style='color:#d2cd86'>)</span><span style='color:#b060b0'>;</span>

<span style='color:#9999a9'>// More information on the PowerShell.Invoke method can be found here: </span><span style='color:#6070ec'>https://msdn.microsoft.com/en-us/library/dd182449(v=vs.85).aspx</span>
initialPowerShell<span style='color:#d2cd86'>.</span>Invoke<span style='color:#d2cd86'>(</span><span style='color:#d2cd86'>)</span><span style='color:#b060b0'>;</span>
</pre>

If you're wondering about the code comments: One of the ways that people learn is by searching for examples or questions related to the problem they're trying to solve. This is something that I - admittedly - used to do. Once they find what they think <em>might</em> be the answer, they look at the methods/class in the documentation (at least, that's what I used to do). So, I figured why not shorten the effort down for those who want to learn? :)]]></content:encoded>
    </item>
    <item>
      <title>Exchange 2010: AD Recipient Cache and Locking Threads in EdgeTransport - Or How We Figured Out Something Wasn't Right With Mail Stuck in Submission Queue</title>
      <link>https://docs.microsoft.com/archive/blogs/johnbai/exchange-2010-ad-recipient-cache-and-locking-threads-in-edgetransport-or-how-we-figured-out-something-wasnt-right-with-mail-stuck-in-submission-queue</link>
      <pubDate>Mon, 15 Jun 2015 00:04:39 GMT</pubDate>
      <dc:creator><![CDATA[John Bailey [MSFT]]]></dc:creator>
      <guid
        isPermaLink="false">https://blogs.technet.microsoft.com/johnbai/2015/06/15/exchange-2010-ad-recipient-cache-and-locking-threads-in-edgetransport-or-how-we-figured-out-something-wasnt-right-with-mail-stuck-in-submission-queue/</guid>
      <description><![CDATA[A while ago we&nbsp;had an issue, wherein SCOM fired for message queue length for messages in...]]></description>
      <content:encoded><![CDATA[<p><span style="color:black;font-family:&#39;Arial&#39;,sans-serif;font-size:11pt;">A while ago we&nbsp;had an issue, wherein SCOM fired for message queue length for messages in Submission. When we went to take a look, the messages were stuck in Submission and weren&#39;t really going anywhere. Took a dump of EdgeTransport, paused Transport, and the queues eventually flushed.</span></p>
<p><span style="color:black;font-family:&#39;Arial&#39;,sans-serif;font-size:11pt;">Opened Windbg against the dump and here&#39;s what was going on: Every time a flood of email would come, Transport would see that the local recipient cache for a group was out of date. Threads would spin-up (typically, per message) to update the recipient cache. Since this is an AD call, a lock is used. The lock is owned by the thread until it&#39;s released, which means we need to wait for the LDAP call to complete before the next thread can enter the critical section. Repeat ad infinim. The issue that complicated this matter is that the refresh was for the same group of sixteen-thousand-plus users, each time.</span></p>
<p><span style="color:black;font-family:&#39;Arial&#39;,sans-serif;font-size:11pt;">In the dump, this is how I went down the rabbit hole. First, I checked for any locks that may be blocking in the process:</span></p>
<p style="margin:0in 0in 0pt;"><span><span style="color:#1f497d;font-family:&#39;Calibri&#39;,sans-serif;font-size:11pt;">&nbsp;</span></span></p>
<p style="margin:0in 0in 0pt 0.5in;"><span><span style="color:#212121;font-family:&#39;Courier New&#39;;font-size:10pt;">!locks</span></span></p>
<p style="margin:0in 0in 0pt 0.5in;"><span><span style="color:#212121;font-family:&#39;Courier New&#39;;font-size:10pt;">&nbsp;</span></span></p>
<p style="margin:0in 0in 0pt 0.5in;"><span><span style="color:#212121;font-family:&#39;Courier New&#39;;font-size:10pt;">CritSec Wldap32!SelectLock1+0 at 000007fefdd5ada0</span></span></p>
<p style="margin:0in 0in 0pt 0.5in;"><span><span style="color:#212121;font-family:&#39;Courier New&#39;;font-size:10pt;">WaiterWoken&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; No</span></span></p>
<p style="margin:0in 0in 0pt 0.5in;"><span><span style="color:#212121;font-family:&#39;Courier New&#39;;font-size:10pt;">LockCount&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 0</span></span></p>
<p style="margin:0in 0in 0pt 0.5in;"><span><span style="color:#212121;font-family:&#39;Courier New&#39;;font-size:10pt;">RecursionCount&nbsp;&nbsp;&nbsp;&nbsp; 1</span></span></p>
<p style="margin:0in 0in 0pt 0.5in;"><span><span style="background:yellow;color:#212121;font-family:&#39;Courier New&#39;;font-size:10pt;">OwningThread&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 2a18</span></span></p>
<p style="margin:0in 0in 0pt 0.5in;"><span><span style="color:#212121;font-family:&#39;Courier New&#39;;font-size:10pt;">EntryCount&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 0</span></span></p>
<p style="margin:0in 0in 0pt 0.5in;"><span><span style="color:#212121;font-family:&#39;Courier New&#39;;font-size:10pt;">ContentionCount&nbsp;&nbsp;&nbsp; 2</span></span></p>
<p style="margin:0in 0in 0pt 0.5in;"><span><span style="color:#212121;font-family:&#39;Courier New&#39;;font-size:10pt;">*** Locked</span></span></p>
<p style="margin:0in 0in 0pt;"><span><span style="color:#1f497d;font-family:&#39;Calibri&#39;,sans-serif;font-size:11pt;">&nbsp;</span></span></p>
<p style="margin:0in 0in 0pt;"><span><span style="color:black;font-family:&#39;Arial&#39;,sans-serif;font-size:11pt;">I then checked the another thread to see if it was aware that there was contention (it was):</span></span></p>
<p style="margin:0in 0in 0pt 0.5in;"><span><span style="color:#1f497d;font-family:&#39;Calibri&#39;,sans-serif;font-size:11pt;">&nbsp;</span></span></p>
<p style="margin:0in 0in 0pt 0.5in;"><span><span style="color:#212121;font-family:&#39;Courier New&#39;;font-size:10pt;">00 00000000`2b8fd4f8 000007fe`fd991430 ntdll!ZwWaitForMultipleObjects+0xa</span></span></p>
<p style="margin:0in 0in 0pt 0.5in;"><span><span style="color:#212121;font-family:&#39;Courier New&#39;;font-size:10pt;">01 00000000`2b8fd500 00000000`77731723 KERNELBASE!WaitForMultipleObjectsEx+0xe8</span></span></p>
<p style="margin:0in 0in 0pt 0.5in;"><span><span style="color:#212121;font-family:&#39;Courier New&#39;;font-size:10pt;">02 00000000`2b8fd600 000007fe`f830d0a5 kernel32!WaitForMultipleObjectsExImplementation+0xb3</span></span></p>
<p style="margin:0in 0in 0pt 0.5in;"><span><span style="color:#212121;font-family:&#39;Courier New&#39;;font-size:10pt;">03 00000000`2b8fd690 000007fe`f8311aa9 mscorwks!WaitForMultipleObjectsEx_SO_TOLERANT+0xc1</span></span></p>
<p style="margin:0in 0in 0pt 0.5in;"><span><span style="color:#212121;font-family:&#39;Courier New&#39;;font-size:10pt;">04 00000000`2b8fd730 000007fe`f8344e95 mscorwks!Thread::DoAppropriateAptStateWait+0x41</span></span></p>
<p style="margin:0in 0in 0pt 0.5in;"><span><span style="color:#212121;font-family:&#39;Courier New&#39;;font-size:10pt;">05 00000000`2b8fd790 000007fe`f8427d94 mscorwks!Thread::DoAppropriateWaitWorker+0x191</span></span></p>
<p style="margin:0in 0in 0pt 0.5in;"><span><span style="color:#212121;font-family:&#39;Courier New&#39;;font-size:10pt;">06 00000000`2b8fd890 000007fe`f83ee48a mscorwks!Thread::DoAppropriateWait+0x5c</span></span></p>
<p style="margin:0in 0in 0pt 0.5in;"><span><span style="color:#212121;font-family:&#39;Courier New&#39;;font-size:10pt;">07 00000000`2b8fd900 000007fe`f82f077d mscorwks!CLREvent::WaitEx+0xbe</span></span></p>
<p style="margin:0in 0in 0pt 0.5in;"><span><span style="background:yellow;color:#212121;font-family:&#39;Courier New&#39;;font-size:10pt;">08 00000000`2b8fd9b0 000007fe`f843e6ea mscorwks!AwareLock::EnterEpilog+0xc9</span></span></p>
<p style="margin:0in 0in 0pt 0.5in;"><span><span style="background:yellow;color:#212121;font-family:&#39;Courier New&#39;;font-size:10pt;">09 00000000`2b8fda80 000007fe`f83336db mscorwks!AwareLock::Enter+0x72</span></span></p>
<p style="margin:0in 0in 0pt 0.5in;"><span><span style="background:yellow;color:#212121;font-family:&#39;Courier New&#39;;font-size:10pt;">0a 00000000`2b8fdab0 000007fe`f88b308f mscorwks!AwareLock::Contention+0x1fb</span></span></p>
<p style="margin:0in 0in 0pt 0.5in;"><span><span style="background:yellow;color:#212121;font-family:&#39;Courier New&#39;;font-size:10pt;">0b 00000000`2b8fdb80 000007fe`f2ff2beb mscorwks!JITutil_MonContention+0xdf</span></span></p>
<p style="margin:0in 0in 0pt 0.5in;"><span><span style="color:#212121;font-family:&#39;Courier New&#39;;font-size:10pt;">0c 00000000`2b8fdd30 000007fe`f2ff318f <span><span style="background:aqua;">Microsoft_Exchange_Data_Directory_ni!Microsoft.Exchange.Data.Directory.IsMemberOfProvider.AutoRefreshCache`3</span></span>[[System.__Canon, mscorlib],[System.__Canon, mscorlib],[System.__Canon, mscorlib]].CreateAndCache(System.__Canon, System.__Canon, Boolean)+0x16cb</span></span></p>
<p style="margin:0in 0in 0pt 0.5in;"><span><span style="color:#212121;font-family:&#39;Courier New&#39;;font-size:10pt;">0d 00000000`2b8fddf0 000007fe`f324dd16 <span><span style="background:aqua;">Microsoft_Exchange_Data_Directory_ni!Microsoft.Exchange.Data.Directory.IsMemberOfProvider.AutoRefreshCache`3</span></span>[[System.__Canon, mscorlib],[System.__Canon, mscorlib],[System.__Canon, mscorlib]].GetValue(System.__Canon, System.__Canon)+0x192f</span></span></p>
<p style="margin:0in 0in 0pt 0.5in;"><span><span style="color:#212121;font-family:&#39;Courier New&#39;;font-size:10pt;">0e 00000000`2b8fdeb0 000007fe`f324e2a0 Microsoft_Exchange_Data_Directory_ni!Microsoft.Exchange.Data.Directory.IsMemberOfProvider.IsMemberOfResolver`1[[System.__Canon, mscorlib]].IsMemberOf(Microsoft.Exchange.Data.Directory.Recipient.ADRecipientSession, System.Guid, System.Guid)+0x25b6a6</span></span></p>
<p style="margin:0in 0in 0pt 0.5in;"><span><span style="color:#212121;font-family:&#39;Courier New&#39;;font-size:10pt;">0f 00000000`2b8fe090 000007fe`f0940c15 Microsoft_Exchange_Data_Directory_ni!Microsoft.Exchange.Data.Directory.IsMemberOfProvider.IsMemberOfResolver`1[[System.__Canon, mscorlib]].IsMemberOf(Microsoft.Exchange.Data.Directory.Recipient.ADRecipientSession, Microsoft.Exchange.Data.Directory.ADObjectId, System.__Canon)+0x25bfd0</span></span></p>
<p style="margin:0in 0in 0pt 0.5in;"><span><span style="color:#212121;font-family:&#39;Courier New&#39;;font-size:10pt;">10 00000000`2b8fe180 000007fe`e0fc7267 Microsoft_Exchange_Transport_ni!Microsoft.Exchange.Transport.RecipientAPI.AddressBookImpl.IsMemberOf(Microsoft.Exchange.Data.Transport.RoutingAddress, Microsoft.Exchange.Data.Transport.RoutingAddress)+0x135</span></span></p>
<p style="margin:0in 0in 0pt 0.5in;"><span><span style="color:#212121;font-family:&#39;Courier New&#39;;font-size:10pt;">11 00000000`2b8fe200 000007fe`f245c46a Microsoft_Exchange_MessagingPolicies_Rules_ni!Microsoft.Exchange.MessagingPolicies.Rules.MembershipChecker.Equals(System.String, System.String)+0x47</span></span></p>
<p style="margin:0in 0in 0pt 0.5in;"><span><span style="color:#212121;font-family:&#39;Courier New&#39;;font-size:10pt;">12 00000000`2b8fe250 000007fe`e0fd5584 Microsoft_Exchange_Net_ni!Microsoft.Exchange.MessagingPolicies.Rules.RuleUtils.CompareStringValues(System.Object, System.Object, Microsoft.Exchange.MessagingPolicies.Rules.IStringComparer)+0x7a</span></span></p>
<p style="margin:0in 0in 0pt 0.5in;"><span><span style="color:#212121;font-family:&#39;Courier New&#39;;font-size:10pt;">13 00000000`2b8fe2a0 000007fe`f2459efe Microsoft_Exchange_MessagingPolicies_Rules_ni!Microsoft.Exchange.MessagingPolicies.Rules.IsMemberOfPredicate.Evaluate(Microsoft.Exchange.MessagingPolicies.Rules.RulesEvaluationContext)+0x74</span></span></p>
<p style="margin:0in 0in 0pt 0.5in;"><span><span style="color:#212121;font-family:&#39;Courier New&#39;;font-size:10pt;">14 00000000`2b8fe2e0 000007fe`f2459efe Microsoft_Exchange_Net_ni!Microsoft.Exchange.MessagingPolicies.Rules.OrCondition.Evaluate(Microsoft.Exchange.MessagingPolicies.Rules.RulesEvaluationContext)+0x6e</span></span></p>
<p style="margin:0in 0in 0pt 0.5in;"><span><span style="color:#212121;font-family:&#39;Courier New&#39;;font-size:10pt;">15 00000000`2b8fe360 000007fe`f246a157 Microsoft_Exchange_Net_ni!Microsoft.Exchange.MessagingPolicies.Rules.OrCondition.Evaluate(Microsoft.Exchange.MessagingPolicies.Rules.RulesEvaluationContext)+0x6e</span></span></p>
<p style="margin:0in 0in 0pt 0.5in;"><span><span style="background:yellow;color:#212121;font-family:&#39;Courier New&#39;;font-size:10pt;">16 00000000`2b8fe3e0 000007fe`e0fd839f Microsoft_Exchange_Net_ni!Microsoft.Exchange.MessagingPolicies.Rules.RulesEvaluator.Run()+0x1b7</span></span></p>
<p style="margin:0in 0in 0pt;"><span><span style="color:#1f497d;font-family:&#39;Calibri&#39;,sans-serif;font-size:11pt;">&nbsp;</span></span></p>
<p style="margin:0in 0in 0pt;"><span><span style="color:black;font-family:&#39;Arial&#39;,sans-serif;font-size:11pt;">O.k., so if we&rsquo;re update the cache, how many times are we doing it? Oh, I see&hellip;:</span></span></p>
<p style="margin:0in 0in 0pt;"><span><span style="color:#1f497d;font-family:&#39;Calibri&#39;,sans-serif;font-size:11pt;">&nbsp;</span></span></p>
<p style="margin:0in 0in 0pt 0.5in;"><span><span style="color:#212121;font-family:&#39;Courier New&#39;;font-size:10pt;">0:086&gt; !findstack <span><span style="background:aqua;">Microsoft_Exchange_Data_Directory_ni!Microsoft.Exchange.Data.Directory.IsMemberOfProvider.AutoRefreshCache`3</span></span> 0</span></span></p>
<p style="margin:0in 0in 0pt 0.5in;"><span><span style="color:#212121;font-family:&#39;Courier New&#39;;font-size:10pt;">Thread 023, 2 frame(s) match</span></span></p>
<p style="margin:0in 0in 0pt 0.5in;"><span><span style="color:#212121;font-family:&#39;Courier New&#39;;font-size:10pt;">Thread 024, 2 frame(s) match</span></span></p>
<p style="margin:0in 0in 0pt 0.5in;"><span><span style="color:#212121;font-family:&#39;Courier New&#39;;font-size:10pt;">Thread 025, 2 frame(s) match</span></span></p>
<p style="margin:0in 0in 0pt 0.5in;"><span><span style="color:#212121;font-family:&#39;Courier New&#39;;font-size:10pt;">Thread 034, 2 frame(s) match</span></span></p>
<p style="margin:0in 0in 0pt 0.5in;"><span><span style="color:#212121;font-family:&#39;Courier New&#39;;font-size:10pt;">Thread 035, 2 frame(s) match</span></span></p>
<p style="margin:0in 0in 0pt 0.5in;"><span><span style="color:#212121;font-family:&#39;Courier New&#39;;font-size:10pt;">Thread 036, 2 frame(s) match</span></span></p>
<p style="margin:0in 0in 0pt 0.5in;"><span><span style="color:#212121;font-family:&#39;Courier New&#39;;font-size:10pt;">Thread 037, 2 frame(s) match</span></span></p>
<p style="margin:0in 0in 0pt 0.5in;"><span><span style="color:#212121;font-family:&#39;Courier New&#39;;font-size:10pt;">Thread 038, 2 frame(s) match</span></span></p>
<p style="margin:0in 0in 0pt 0.5in;"><span><span style="color:#212121;font-family:&#39;Courier New&#39;;font-size:10pt;">Thread 039, 2 frame(s) match</span></span></p>
<p style="margin:0in 0in 0pt 0.5in;"><span><span style="color:#212121;font-family:&#39;Courier New&#39;;font-size:10pt;">Thread 040, 2 frame(s) match</span></span></p>
<p style="margin:0in 0in 0pt 0.5in;"><span><span style="color:#212121;font-family:&#39;Courier New&#39;;font-size:10pt;">Thread 050, 2 frame(s) match</span></span></p>
<p style="margin:0in 0in 0pt 0.5in;"><span><span style="color:#212121;font-family:&#39;Courier New&#39;;font-size:10pt;">Thread 051, 2 frame(s) match</span></span></p>
<p style="margin:0in 0in 0pt 0.5in;"><span><span style="color:#212121;font-family:&#39;Courier New&#39;;font-size:10pt;">Thread 052, 2 frame(s) match</span></span></p>
<p style="margin:0in 0in 0pt 0.5in;"><span><span style="color:#212121;font-family:&#39;Courier New&#39;;font-size:10pt;">Thread 053, 2 frame(s) match</span></span></p>
<p style="margin:0in 0in 0pt 0.5in;"><span><span style="color:#212121;font-family:&#39;Courier New&#39;;font-size:10pt;">Thread 054, 2 frame(s) match</span></span></p>
<p style="margin:0in 0in 0pt 0.5in;"><span><span style="color:#212121;font-family:&#39;Courier New&#39;;font-size:10pt;">Thread 055, 2 frame(s) match</span></span></p>
<p style="margin:0in 0in 0pt 0.5in;"><span><span style="color:#212121;font-family:&#39;Courier New&#39;;font-size:10pt;">Thread 056, 2 frame(s) match</span></span></p>
<p style="margin:0in 0in 0pt 0.5in;"><span><span style="color:#212121;font-family:&#39;Courier New&#39;;font-size:10pt;">Thread 057, 2 frame(s) match</span></span></p>
<p style="margin:0in 0in 0pt 0.5in;"><span><span style="color:#212121;font-family:&#39;Courier New&#39;;font-size:10pt;">Thread 058, 2 frame(s) match</span></span></p>
<p style="margin:0in 0in 0pt 0.5in;"><span><span style="color:#212121;font-family:&#39;Courier New&#39;;font-size:10pt;">Thread 059, 2 frame(s) match</span></span></p>
<p style="margin:0in 0in 0pt 0.5in;"><span><span style="color:#212121;font-family:&#39;Courier New&#39;;font-size:10pt;">Thread 060, 2 frame(s) match</span></span></p>
<p style="margin:0in 0in 0pt 0.5in;"><span><span style="color:#212121;font-family:&#39;Courier New&#39;;font-size:10pt;">Thread 061, 2 frame(s) match</span></span></p>
<p style="margin:0in 0in 0pt 0.5in;"><span><span style="color:#212121;font-family:&#39;Courier New&#39;;font-size:10pt;">Thread 062, 2 frame(s) match</span></span></p>
<p style="margin:0in 0in 0pt 0.5in;"><span><span style="color:#212121;font-family:&#39;Courier New&#39;;font-size:10pt;">Thread 063, 2 frame(s) match</span></span></p>
<p style="margin:0in 0in 0pt 0.5in;"><span><span style="color:#212121;font-family:&#39;Courier New&#39;;font-size:10pt;">Thread 064, 2 frame(s) match</span></span></p>
<p style="margin:0in 0in 0pt 0.5in;"><span><span style="color:#212121;font-family:&#39;Courier New&#39;;font-size:10pt;">Thread 065, 2 frame(s) match</span></span></p>
<p style="margin:0in 0in 0pt 0.5in;"><span><span style="color:#212121;font-family:&#39;Courier New&#39;;font-size:10pt;">Thread 066, 2 frame(s) match</span></span></p>
<p style="margin:0in 0in 0pt 0.5in;"><span><span style="color:#212121;font-family:&#39;Courier New&#39;;font-size:10pt;">Thread 067, 2 frame(s) match</span></span></p>
<p style="margin:0in 0in 0pt 0.5in;"><span><span style="color:#212121;font-family:&#39;Courier New&#39;;font-size:10pt;">Thread 068, 2 frame(s) match</span></span></p>
<p style="margin:0in 0in 0pt 0.5in;"><span><span style="color:#212121;font-family:&#39;Courier New&#39;;font-size:10pt;">Thread 069, 2 frame(s) match</span></span></p>
<p style="margin:0in 0in 0pt 0.5in;"><span><span style="color:#212121;font-family:&#39;Courier New&#39;;font-size:10pt;">Thread 070, 2 frame(s) match</span></span></p>
<p style="margin:0in 0in 0pt 0.5in;"><span><span style="color:#212121;font-family:&#39;Courier New&#39;;font-size:10pt;">Thread 071, 2 frame(s) match</span></span></p>
<p style="margin:0in 0in 0pt 0.5in;"><span><span style="color:#212121;font-family:&#39;Courier New&#39;;font-size:10pt;">Thread 072, 2 frame(s) match</span></span></p>
<p style="margin:0in 0in 0pt 0.5in;"><span><span style="color:#212121;font-family:&#39;Courier New&#39;;font-size:10pt;">Thread 073, 2 frame(s) match</span></span></p>
<p style="margin:0in 0in 0pt 0.5in;"><span><span style="color:#212121;font-family:&#39;Courier New&#39;;font-size:10pt;">Thread 074, 2 frame(s) match</span></span></p>
<p style="margin:0in 0in 0pt 0.5in;"><span><span style="color:#212121;font-family:&#39;Courier New&#39;;font-size:10pt;">Thread 075, 2 frame(s) match</span></span></p>
<p style="margin:0in 0in 0pt 0.5in;"><span><span style="color:#212121;font-family:&#39;Courier New&#39;;font-size:10pt;">Thread 076, 2 frame(s) match</span></span></p>
<p style="margin:0in 0in 0pt 0.5in;"><span><span style="color:#212121;font-family:&#39;Courier New&#39;;font-size:10pt;">Thread 077, 2 frame(s) match</span></span></p>
<p style="margin:0in 0in 0pt 0.5in;"><span><span style="color:#212121;font-family:&#39;Courier New&#39;;font-size:10pt;">Thread 078, 2 frame(s) match</span></span></p>
<p style="margin:0in 0in 0pt 0.5in;"><span><span style="color:#212121;font-family:&#39;Courier New&#39;;font-size:10pt;">Thread 079, 2 frame(s) match</span></span></p>
<p style="margin:0in 0in 0pt 0.5in;"><span><span style="color:#212121;font-family:&#39;Courier New&#39;;font-size:10pt;">Thread 080, 2 frame(s) match</span></span></p>
<p style="margin:0in 0in 0pt 0.5in;"><span><span style="color:#212121;font-family:&#39;Courier New&#39;;font-size:10pt;">Thread 081, 2 frame(s) match</span></span></p>
<p style="margin:0in 0in 0pt 0.5in;"><span><span style="color:#212121;font-family:&#39;Courier New&#39;;font-size:10pt;">Thread 082, 2 frame(s) match</span></span></p>
<p style="margin:0in 0in 0pt 0.5in;"><span><span style="color:#212121;font-family:&#39;Courier New&#39;;font-size:10pt;">Thread 083, 2 frame(s) match</span></span></p>
<p style="margin:0in 0in 0pt 0.5in;"><span><span style="color:#212121;font-family:&#39;Courier New&#39;;font-size:10pt;">Thread 084, 2 frame(s) match</span></span></p>
<p style="margin:0in 0in 0pt 0.5in;"><span><span style="color:#212121;font-family:&#39;Courier New&#39;;font-size:10pt;">Thread 085, 2 frame(s) match</span></span></p>
<p style="margin:0in 0in 0pt 0.5in;"><span><span style="color:#212121;font-family:&#39;Courier New&#39;;font-size:10pt;">Thread 086, 2 frame(s) match</span></span></p>
<p style="margin:0in 0in 0pt;text-indent:0.5in;"><span><span style="color:#212121;font-family:&#39;Courier New&#39;;font-size:10pt;">Thread 087, 2 frame(s) match</span></span></p>
<p style="margin:0in 0in 0pt;"><span><span style="color:#1f497d;font-family:&#39;Calibri&#39;,sans-serif;font-size:11pt;">&nbsp;</span></span></p>
<p style="margin:0in 0in 0pt;"><span><span style="color:black;font-family:&#39;Arial&#39;,sans-serif;font-size:11pt;">The thread with the lock has an LDAP call being made:</span></span></p>
<p style="margin:0in 0in 0pt;"><span><span style="color:#1f497d;font-family:&#39;Calibri&#39;,sans-serif;font-size:11pt;">&nbsp;</span></span></p>
<p style="margin:0in 0in 0pt 0.5in;"><span><span style="color:#212121;font-family:&#39;Courier New&#39;;font-size:10pt;">00 00000000`5443cfc8 000007fe`fce91e35 ntdll!ZwWaitForSingleObject+0xa</span></span></p>
<p style="margin:0in 0in 0pt 0.5in;"><span><span style="color:#212121;font-family:&#39;Courier New&#39;;font-size:10pt;">01 00000000`5443cfd0 000007fe`fce91f96 mswsock!SockWaitForSingleObject+0xe145</span></span></p>
<p style="margin:0in 0in 0pt 0.5in;"><span><span style="color:#212121;font-family:&#39;Courier New&#39;;font-size:10pt;">02 00000000`5443d050 000007fe`ff1f4efc mswsock!WSPSelect+0xac26</span></span></p>
<p style="margin:0in 0in 0pt 0.5in;"><span><span style="background:yellow;color:#212121;font-family:&#39;Courier New&#39;;font-size:10pt;">03 00000000`5443d1f0 000007fe`ff1f4e7d ws2_32!DPROVIDER::WSPSelect+0x3c</span></span></p>
<p style="margin:0in 0in 0pt 0.5in;"><span><span style="background:yellow;color:#212121;font-family:&#39;Courier New&#39;;font-size:10pt;">04 00000000`5443d230 000007fe`fdd13a19 ws2_32!select+0x75a</span></span></p>
<p style="margin:0in 0in 0pt 0.5in;"><span><span style="background:yellow;color:#212121;font-family:&#39;Courier New&#39;;font-size:10pt;">05 00000000`5443d330 000007fe`fdd199b5 Wldap32!DrainWinsock+0x417</span></span></p>
<p style="margin:0in 0in 0pt 0.5in;"><span><span style="background:yellow;color:#212121;font-family:&#39;Courier New&#39;;font-size:10pt;">06 00000000`5443d3c0 000007fe`fdd136ec Wldap32!LdapWaitForResponseFromServer+0x646</span></span></p>
<p style="margin:0in 0in 0pt 0.5in;"><span><span style="color:#212121;font-family:&#39;Courier New&#39;;font-size:10pt;">07 00000000`5443d480 000007fe`fdd1d967 Wldap32!ldap_result_with_error+0x279</span></span></p>
<p style="margin:0in 0in 0pt 0.5in;"><span><span style="color:#212121;font-family:&#39;Courier New&#39;;font-size:10pt;">08 00000000`5443d520 000007fe`f84abec7 Wldap32!ldap_result+0x74</span></span></p>
<p style="margin:0in 0in 0pt 0.5in;"><span><span style="color:#212121;font-family:&#39;Courier New&#39;;font-size:10pt;">*** WARNING: Unable to verify checksum for System.DirectoryServices.Protocols.ni.dll</span></span></p>
<p style="margin:0in 0in 0pt 0.5in;"><span><span style="color:#212121;font-family:&#39;Courier New&#39;;font-size:10pt;">09 00000000`5443d580 000007fe`f1c453ff mscorwks!DoNDirectCall__PatchGetThreadCall+0x7b</span></span></p>
<p style="margin:0in 0in 0pt 0.5in;"><span><span style="color:#212121;font-family:&#39;Courier New&#39;;font-size:10pt;">0a 00000000`5443d630 000007fe`f1c5c61b System_DirectoryServices_Protocols_ni!DomainBoundILStubClass.IL_STUB(IntPtr, Int32, Int32, System.DirectoryServices.Protocols.LDAP_TIMEVAL, IntPtr ByRef)+0x8f</span></span></p>
<p style="margin:0in 0in 0pt 0.5in;"><span><span style="color:#212121;font-family:&#39;Courier New&#39;;font-size:10pt;">0b 00000000`5443d720 000007fe`f1c59f79 System_DirectoryServices_Protocols_ni!System.DirectoryServices.Protocols.LdapConnection.ConstructResponse(Int32, System.DirectoryServices.Protocols.LdapOperation, System.DirectoryServices.Protocols.ResultAll, System.TimeSpan, Boolean)+0x2cb</span></span></p>
<p style="margin:0in 0in 0pt;"><span><span style="color:#1f497d;font-family:&#39;Calibri&#39;,sans-serif;font-size:11pt;">&nbsp;</span></span></p>
<p style="margin:0in 0in 0pt;"><span><span style="color:black;font-family:&#39;Arial&#39;,sans-serif;font-size:11pt;">It looks like we&rsquo;re performing this query, at the time of the dump:</span></span></p>
<p style="margin:0in 0in 0pt;"><span><span style="color:#1f497d;font-family:&#39;Calibri&#39;,sans-serif;font-size:11pt;">&nbsp;</span></span></p>
<p style="margin:0in 0in 0pt 0.5in;"><span><span style="color:#212121;font-family:&#39;Courier New&#39;;font-size:10pt;">000000005443d538&nbsp; <span><span style="background:fuchsia;">00000000e0188bf8</span></span>&nbsp; System.String&nbsp; &quot;(&amp;(memberOf=&lt;GUID=<span><span style="background:gray;">20ff7cf3-3b7e-4767-8669-d2295d6fb0f3</span></span>&gt;)(!(msExchCU=*)))&quot;</span></span></p>
<p style="margin:0in 0in 0pt 0.5in;"><span><span style="color:#212121;font-family:&#39;Courier New&#39;;font-size:10pt;">&nbsp;</span></span></p>
<p style="margin:0in 0in 0pt 0.5in;"><span><span style="color:#212121;font-family:&#39;Courier New&#39;;font-size:10pt;">0:086&gt; !do <span><span style="background:fuchsia;">00000000e0188bf8</span></span></span></span></p>
<p style="margin:0in 0in 0pt 0.5in;"><span><span style="color:#212121;font-family:&#39;Courier New&#39;;font-size:10pt;">Name: System.String</span></span></p>
<p style="margin:0in 0in 0pt 0.5in;"><span><span style="color:#212121;font-family:&#39;Courier New&#39;;font-size:10pt;">MethodTable: 000007fef7747d90</span></span></p>
<p style="margin:0in 0in 0pt 0.5in;"><span><span style="color:#212121;font-family:&#39;Courier New&#39;;font-size:10pt;">EEClass: 000007fef734e560</span></span></p>
<p style="margin:0in 0in 0pt 0.5in;"><span><span style="color:#212121;font-family:&#39;Courier New&#39;;font-size:10pt;">Size: 170(0xaa) bytes</span></span></p>
<p style="margin:0in 0in 0pt 0.5in;"><span><span style="color:#212121;font-family:&#39;Courier New&#39;;font-size:10pt;">GC Generation: 2</span></span></p>
<p style="margin:0in 0in 0pt 0.5in;"><span><span style="color:#212121;font-family:&#39;Courier New&#39;;font-size:10pt;">(C:\Windows\assembly\GAC_64\mscorlib\2.0.0.0__b77a5c561934e089\mscorlib.dll)</span></span></p>
<p style="margin:0in 0in 0pt 0.5in;"><span><span style="color:#212121;font-family:&#39;Courier New&#39;;font-size:10pt;">String: (&amp;(memberOf=&lt;GUID=<span><span style="background:gray;">20ff7cf3-3b7e-4767-8669-d2295d6fb0f3</span></span>&gt;)(!(msExchCU=*)))</span></span></p>
<p style="margin:0in 0in 0pt 0.5in;"><span><span style="color:#212121;font-family:&#39;Courier New&#39;;font-size:10pt;">Fields:</span></span></p>
<p style="margin:0in 0in 0pt 0.5in;"><span><span style="color:#212121;font-family:&#39;Courier New&#39;;font-size:10pt;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; MT&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Field&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Offset&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Type VT&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Attr&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Value Name</span></span></p>
<p style="margin:0in 0in 0pt 0.5in;"><span><span style="color:#212121;font-family:&#39;Courier New&#39;;font-size:10pt;">000007fef774f000&nbsp; 4000096&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 8&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; System.Int32&nbsp; 1 instance&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 73 m_arrayLength</span></span></p>
<p style="margin:0in 0in 0pt 0.5in;"><span><span style="color:#212121;font-family:&#39;Courier New&#39;;font-size:10pt;">000007fef774f000&nbsp; 4000097&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; c&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; System.Int32&nbsp; 1 instance&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 72 m_stringLength</span></span></p>
<p style="margin:0in 0in 0pt 0.5in;"><span><span style="color:#212121;font-family:&#39;Courier New&#39;;font-size:10pt;">000007fef77497d8 &nbsp;4000098&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 10&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; System.Char&nbsp; 1 instance&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 28 m_firstChar</span></span></p>
<p style="margin:0in 0in 0pt 0.5in;"><span><span style="color:#212121;font-family:&#39;Courier New&#39;;font-size:10pt;">000007fef7747d90&nbsp; 4000099&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 20&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; System.String&nbsp; 0&nbsp;&nbsp; shared&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; static Empty</span></span></p>
<p style="margin:0in 0in 0pt 0.5in;"><span><span style="color:#212121;font-family:&#39;Courier New&#39;;font-size:10pt;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &gt;&gt; Domain:Value&nbsp; 00000000004e5e50:000000015fff0370 &lt;&lt;</span></span></p>
<p style="margin:0in 0in 0pt 0.5in;"><span><span style="color:#212121;font-family:&#39;Courier New&#39;;font-size:10pt;">000007fef7749688&nbsp; 400009a&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 28&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; System.Char[]&nbsp; 0&nbsp;&nbsp; shared&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; static WhitespaceChars</span></span></p>
<p style="margin:0in 0in 0pt 0.5in;"><span><span style="color:#212121;font-family:&#39;Courier New&#39;;font-size:10pt;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &gt;&gt; Domain:Value&nbsp; 00000000004e5e50:000000015fff0b90 &lt;&lt;</span></span></p>
<p style="margin-top:0in;margin-right:0in;margin-bottom:0pt;"><span><span style="color:#212121;font-family:&#39;Courier New&#39;;font-size:10pt;"><span><span style="color:black;font-family:&#39;Arial&#39;,sans-serif;font-size:11pt;">&nbsp;</span></span></span></span></p>
<p style="margin-top:0in;margin-right:0in;margin-bottom:0pt;"><span><span style="color:#212121;font-family:&#39;Courier New&#39;;font-size:10pt;"><span><span style="color:black;font-family:&#39;Arial&#39;,sans-serif;font-size:11pt;">O.k., how many calls against this object are we making?:</span></span></span></span></p>
<p style="margin:0in 0in 0pt 0.5in;"><span><span style="color:#212121;font-family:&#39;Courier New&#39;;font-size:10pt;">&nbsp;</span></span></p>
<p style="margin:0in 0in 0pt 0.5in;"><span><span style="color:#212121;font-family:&#39;Courier New&#39;;font-size:10pt;">0:086&gt; !refs <span><span style="background:fuchsia;">00000000e0188bf8</span></span></span></span></p>
<p style="margin:0in 0in 0pt 0.5in;"><span><span style="color:#212121;font-family:&#39;Courier New&#39;;font-size:10pt;">This command will work faster with an SOSEX heap index.&nbsp; To build an index, run !bhi.</span></span></p>
<p style="margin:0in 0in 0pt 0.5in;"><span><span style="color:#212121;font-family:&#39;Courier New&#39;;font-size:10pt;">Objects referenced by 00000000e0188bf8 (System.String):</span></span></p>
<p style="margin:0in 0in 0pt 0.5in;"><span><span style="color:#212121;font-family:&#39;Courier New&#39;;font-size:10pt;">NONE</span></span></p>
<p style="margin:0in 0in 0pt 0.5in;"><span><span style="color:#212121;font-family:&#39;Courier New&#39;;font-size:10pt;">&nbsp;</span></span></p>
<p style="margin:0in 0in 0pt 0.5in;"><span><span style="color:#212121;font-family:&#39;Courier New&#39;;font-size:10pt;">Objects referencing 00000000e0188bf8 (System.String):</span></span></p>
<p style="margin:0in 0in 0pt 0.5in;"><span><span style="color:#212121;font-family:&#39;Courier New&#39;;font-size:10pt;">follow 00000000c0393040&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 80&nbsp;&nbsp; System.Object[]</span></span></p>
<p style="margin:0in 0in 0pt 0.5in;"><span><span style="color:#212121;font-family:&#39;Courier New&#39;;font-size:10pt;">follow 00000000c0393108&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 96&nbsp;&nbsp; System.Object[]</span></span></p>
<p style="margin:0in 0in 0pt 0.5in;"><span><span style="color:#212121;font-family:&#39;Courier New&#39;;font-size:10pt;">follow 00000000c04a1928&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 80&nbsp;&nbsp; System.DirectoryServices.Protocols.SearchRequest</span></span></p>
<p style="margin:0in 0in 0pt 0.5in;"><span><span style="color:#212121;font-family:&#39;Courier New&#39;;font-size:10pt;">follow 00000000c04a2960&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 72&nbsp;&nbsp; System.Object[]</span></span></p>
<p style="margin:0in 0in 0pt 0.5in;"><span><span style="color:#212121;font-family:&#39;Courier New&#39;;font-size:10pt;">follow 00000000c0689800&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 80&nbsp;&nbsp; System.Object[]</span></span></p>
<p style="margin:0in 0in 0pt 0.5in;"><span><span style="color:#212121;font-family:&#39;Courier New&#39;;font-size:10pt;">follow 00000000c06898c8&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 96&nbsp;&nbsp; System.Object[]</span></span></p>
<p style="margin:0in 0in 0pt 0.5in;"><span><span style="color:#212121;font-family:&#39;Courier New&#39;;font-size:10pt;">follow 00000000c07c3e68&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 80&nbsp;&nbsp; System.DirectoryServices.Protocols.SearchRequest</span></span></p>
<p style="margin:0in 0in 0pt 0.5in;"><span><span style="color:#212121;font-family:&#39;Courier New&#39;;font-size:10pt;">follow 00000000c07c4de0&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 72&nbsp;&nbsp; System.Object[]</span></span></p>
<p style="margin:0in 0in 0pt 0.5in;"><span><span style="color:#212121;font-family:&#39;Courier New&#39;;font-size:10pt;">follow 00000000c08ba200&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 80&nbsp;&nbsp; System.Object[]</span></span></p>
<p style="margin:0in 0in 0pt 0.5in;"><span><span style="color:#212121;font-family:&#39;Courier New&#39;;font-size:10pt;">follow 00000000c08ba2c8&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 96&nbsp;&nbsp; System.Object[]</span></span></p>
<p style="margin:0in 0in 0pt 0.5in;"><span><span style="color:#212121;font-family:&#39;Courier New&#39;;font-size:10pt;">follow 00000000c0976870&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 80&nbsp;&nbsp; System.DirectoryServices.Protocols.SearchRequest</span></span></p>
<p style="margin:0in 0in 0pt 0.5in;"><span><span style="color:#212121;font-family:&#39;Courier New&#39;;font-size:10pt;">follow 00000000c09777e8&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 72&nbsp;&nbsp; System.Object[]</span></span></p>
<p style="margin:0in 0in 0pt 0.5in;"><span><span style="color:#212121;font-family:&#39;Courier New&#39;;font-size:10pt;">follow 00000000c0fbaf58&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 80&nbsp;&nbsp; System.Object[]</span></span></p>
<p style="margin:0in 0in 0pt 0.5in;"><span><span style="color:#212121;font-family:&#39;Courier New&#39;;font-size:10pt;">follow 00000000c0fbb020&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 96&nbsp;&nbsp; System.Object[]</span></span></p>
<p style="margin:0in 0in 0pt 0.5in;"><span><span style="color:#212121;font-family:&#39;Courier New&#39;;font-size:10pt;">follow 00000000c103fa40&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;80&nbsp;&nbsp; System.DirectoryServices.Protocols.SearchRequest</span></span></p>
<p style="margin:0in 0in 0pt 0.5in;"><span><span style="color:#212121;font-family:&#39;Courier New&#39;;font-size:10pt;">follow 00000000c1046fd0&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 72&nbsp;&nbsp; System.Object[]</span></span></p>
<p style="margin:0in 0in 0pt 0.5in;"><span><span style="color:#212121;font-family:&#39;Courier New&#39;;font-size:10pt;">follow 00000000c113a868&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 80&nbsp;&nbsp; System.Object[]</span></span></p>
<p style="margin:0in 0in 0pt 0.5in;"><span><span style="color:#212121;font-family:&#39;Courier New&#39;;font-size:10pt;">follow 00000000c113a930&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 96&nbsp;&nbsp; System.Object[]</span></span></p>
<p style="margin:0in 0in 0pt 0.5in;"><span><span style="color:#212121;font-family:&#39;Courier New&#39;;font-size:10pt;">follow 00000000c11e75a0&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 80&nbsp;&nbsp; System.DirectoryServices.Protocols.SearchRequest</span></span></p>
<p style="margin:0in 0in 0pt 0.5in;"><span><span style="color:#212121;font-family:&#39;Courier New&#39;;font-size:10pt;">follow 00000000c11e8518&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 72&nbsp;&nbsp; System.Object[]</span></span></p>
<p style="margin:0in 0in 0pt 0.5in;"><span><span style="color:#212121;font-family:&#39;Courier New&#39;;font-size:10pt;">follow 00000000c13b1068&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 80&nbsp;&nbsp; System.Object[]</span></span></p>
<p style="margin:0in 0in 0pt 0.5in;"><span><span style="color:#212121;font-family:&#39;Courier New&#39;;font-size:10pt;">follow 00000000c13b1130&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 96&nbsp;&nbsp; System.Object[]</span></span></p>
<p style="margin:0in 0in 0pt 0.5in;"><span><span style="color:#212121;font-family:&#39;Courier New&#39;;font-size:10pt;">follow 00000000c1547260&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 80&nbsp;&nbsp; System.DirectoryServices.Protocols.SearchRequest</span></span></p>
<p style="margin:0in 0in 0pt 0.5in;"><span><span style="color:#212121;font-family:&#39;Courier New&#39;;font-size:10pt;">follow 00000000c15481d8&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 72&nbsp;&nbsp; System.Object[]</span></span></p>
<p style="margin:0in 0in 0pt 0.5in;"><span><span style="color:#212121;font-family:&#39;Courier New&#39;;font-size:10pt;">follow 00000000c1669338&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 80&nbsp;&nbsp; System.Object[]</span></span></p>
<p style="margin:0in 0in 0pt 0.5in;"><span><span style="color:#212121;font-family:&#39;Courier New&#39;;font-size:10pt;">follow 00000000c1669400&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 96&nbsp;&nbsp; System.Object[]</span></span></p>
<p style="margin:0in 0in 0pt 0.5in;"><span><span style="color:#212121;font-family:&#39;Courier New&#39;;font-size:10pt;">follow 00000000c175b778&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 80&nbsp;&nbsp; System.DirectoryServices.Protocols.SearchRequest</span></span></p>
<p style="margin:0in 0in 0pt 0.5in;"><span><span style="color:#212121;font-family:&#39;Courier New&#39;;font-size:10pt;">follow 00000000c175c6f0&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 72&nbsp;&nbsp; System.Object[]</span></span></p>
<p style="margin:0in 0in 0pt 0.5in;"><span><span style="color:#212121;font-family:&#39;Courier New&#39;;font-size:10pt;">follow 00000000c1904c80&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 80&nbsp;&nbsp; System.Object[]</span></span></p>
<p style="margin:0in 0in 0pt 0.5in;"><span><span style="color:#212121;font-family:&#39;Courier New&#39;;font-size:10pt;">follow 00000000c1904d48&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 96&nbsp;&nbsp; System.Object[]</span></span></p>
<p style="margin:0in 0in 0pt 0.5in;"><span><span style="color:#212121;font-family:&#39;Courier New&#39;;font-size:10pt;">follow 00000000c1acba70&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 80&nbsp;&nbsp; System.DirectoryServices.Protocols.SearchRequest</span></span></p>
<p style="margin:0in 0in 0pt 0.5in;"><span><span style="color:#212121;font-family:&#39;Courier New&#39;;font-size:10pt;">follow 00000000c1acc9e8&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 72&nbsp;&nbsp; System.Object[]</span></span></p>
<p style="margin:0in 0in 0pt 0.5in;"><span><span style="color:#212121;font-family:&#39;Courier New&#39;;font-size:10pt;">follow 00000000c1d03f08&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 80&nbsp;&nbsp; System.Object[]</span></span></p>
<p style="margin:0in 0in 0pt 0.5in;"><span><span style="color:#212121;font-family:&#39;Courier New&#39;;font-size:10pt;">follow 00000000c1d03fd0&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 96&nbsp;&nbsp; System.Object[]</span></span></p>
<p style="margin:0in 0in 0pt 0.5in;"><span><span style="color:#212121;font-family:&#39;Courier New&#39;;font-size:10pt;">follow 00000000c1f8f398&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 80&nbsp;&nbsp; System.DirectoryServices.Protocols.SearchRequest</span></span></p>
<p style="margin:0in 0in 0pt 0.5in;"><span><span style="color:#212121;font-family:&#39;Courier New&#39;;font-size:10pt;">follow 00000000c1f90310&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 72&nbsp;&nbsp; System.Object[]</span></span></p>
<p style="margin:0in 0in 0pt 0.5in;"><span><span style="color:#212121;font-family:&#39;Courier New&#39;;font-size:10pt;">follow 00000000c21bd2f0&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 80&nbsp;&nbsp; System.Object[]</span></span></p>
<p style="margin:0in 0in 0pt 0.5in;"><span><span style="color:#212121;font-family:&#39;Courier New&#39;;font-size:10pt;">follow 00000000c21bd3b8&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 96&nbsp;&nbsp; System.Object[]</span></span></p>
<p style="margin:0in 0in 0pt 0.5in;"><span><span style="color:#212121;font-family:&#39;Courier New&#39;;font-size:10pt;">follow 00000000c243d8a0&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 80&nbsp;&nbsp; System.DirectoryServices.Protocols.SearchRequest</span></span></p>
<p style="margin:0in 0in 0pt 0.5in;"><span><span style="color:#212121;font-family:&#39;Courier New&#39;;font-size:10pt;">follow 00000000c243e818&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;72&nbsp;&nbsp; System.Object[]</span></span></p>
<p style="margin:0in 0in 0pt 0.5in;"><span><span style="color:#212121;font-family:&#39;Courier New&#39;;font-size:10pt;">follow 00000000e0188510&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 176&nbsp;&nbsp; Microsoft.Exchange.Data.Directory.ADPagedReader`1[[Microsoft.Exchange.Data.Directory.ADRawEntry, Microsoft.Exchange.Data.Directory]]</span></span></p>
<p style="margin:0in 0in 0pt 0.5in;"><span><span style="color:#212121;font-family:&#39;Courier New&#39;;font-size:10pt;">follow 00000000f096aea8&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 80&nbsp;&nbsp; System.DirectoryServices.Protocols.SearchRequest</span></span></p>
<p style="margin:0in 0in 0pt 0.5in;"><span><span style="color:#212121;font-family:&#39;Courier New&#39;;font-size:10pt;">follow 00000001106ce9f8&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 80&nbsp;&nbsp; System.DirectoryServices.Protocols.SearchRequest</span></span></p>
<p style="margin:0in 0in 0pt 0.5in;"><span><span style="color:#212121;font-family:&#39;Courier New&#39;;font-size:10pt;">&nbsp;</span></span></p>
<p style="margin:0in 0in 0pt 0.5in;"><span><span style="color:#212121;font-family:&#39;Courier New&#39;;font-size:10pt;">CLR Thread 0x49</span></span></p>
<p style="margin:0in 0in 0pt 0.5in;"><span><span style="color:#212121;font-family:&#39;Courier New&#39;;font-size:10pt;">stack:000000005443d538</span></span></p>
<p style="margin:0in 0in 0pt 0.5in;"><span><span style="color:#212121;font-family:&#39;Courier New&#39;;font-size:10pt;">stack:000000005443d5d0</span></span></p>
<p style="margin:0in 0in 0pt 0.5in;"><span><span style="color:#212121;font-family:&#39;Courier New&#39;;font-size:10pt;">stack:000000005443d970</span></span></p>
<p style="margin:0in 0in 0pt;"><span><span style="color:#1f497d;font-family:&#39;Calibri&#39;,sans-serif;font-size:11pt;">&nbsp;</span><span style="font-family:Times New Roman;font-size:medium;">&nbsp;</span></span></p>
<p style="margin:0in 0in 0pt;"><span style="color:black;font-family:&#39;Arial&#39;,sans-serif;font-size:11pt;">O.k., how many threads do we have waiting on this?:</span></p>
<p style="margin:0in 0in 0pt;"><span><span style="color:#1f497d;font-family:&#39;Calibri&#39;,sans-serif;font-size:11pt;">&nbsp;</span></span></p>
<p style="margin:0in 0in 0pt 0.5in;"><span><span style="color:#212121;font-family:&#39;Courier New&#39;;font-size:10pt;">0:086&gt; !syncblk</span></span></p>
<p style="margin:0in 0in 0pt 0.5in;"><span><span style="color:#212121;font-family:&#39;Courier New&#39;;font-size:10pt;">Index&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; SyncBlock MonitorHeld Recursion Owning Thread Info&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; SyncBlock Owner</span></span></p>
<p style="margin:0in 0in 0pt 0.5in;"><span><span style="color:#212121;font-family:&#39;Courier New&#39;;font-size:10pt;">&nbsp; 148 000000004ef62350&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;95&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 1 000000004ef6a070&nbsp; 2a18&nbsp; 86&nbsp;&nbsp; 0000000080074a08 System.Object</span></span></p>
<p style="margin:0in 0in 0pt 0.5in;"><span><span style="color:#212121;font-family:&#39;Courier New&#39;;font-size:10pt;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <b><span><span style="background:red;">Waiting threads:</span></span></b><span><span style="background:red;"> 23 24 25 34 35 36 37 38 39 40 50 51 52 53 54 55 56 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 87</span></span></span></span></p>
<p style="margin:0in 0in 0pt 0.5in;"><span><span style="color:#212121;font-family:&#39;Courier New&#39;;font-size:10pt;">-----------------------------</span></span></p>
<p style="margin:0in 0in 0pt 0.5in;"><span><span style="background:red;color:#212121;font-family:&#39;Courier New&#39;;font-size:10pt;">Total&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 1548</span></span></p>
<p style="margin:0in 0in 0pt 0.5in;"><span><span style="color:#212121;font-family:&#39;Courier New&#39;;font-size:10pt;">CCW&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 0</span></span></p>
<p style="margin:0in 0in 0pt 0.5in;"><span><span style="color:#212121;font-family:&#39;Courier New&#39;;font-size:10pt;">RCW&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 0</span></span></p>
<p style="margin:0in 0in 0pt 0.5in;"><span><span style="color:#212121;font-family:&#39;Courier New&#39;;font-size:10pt;">ComClassFactory 0</span></span></p>
<p style="margin:0in 0in 0pt 0.5in;"><span><span style="color:#212121;font-family:&#39;Courier New&#39;;font-size:10pt;">Free&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 0</span></span></p>
<p style="margin:0in 0in 0pt;"><span style="color:black;font-family:&#39;Arial&#39;,sans-serif;font-size:9pt;">&nbsp;</span></p>
<p style="margin:0in 0in 0pt;"><span style="color:black;font-family:&#39;Arial&#39;,sans-serif;font-size:11pt;">In the words of <a href="http://homestarrunner.com/sbemail.html" target="_blank">Strongbad</a>: That is not a very small number. That is a very BIG number!</span></p>
<p style="margin:0in 0in 0pt;"><span style="color:black;font-family:&#39;Arial&#39;,sans-serif;font-size:11pt;">&nbsp;</span></p>
<p style="margin:0in 0in 0pt;"><span style="color:black;font-family:&#39;Arial&#39;,sans-serif;font-size:11pt;">For those of you wondering what this means in common, everyday production use of Exchange: </span></p>
<p style="margin:0in 0in 0pt;"><span style="color:black;font-family:&#39;Arial&#39;,sans-serif;font-size:11pt;">&nbsp;</span></p>
<p style="margin:0in 0in 0pt;"><span style="color:black;font-family:&#39;Arial&#39;,sans-serif;font-size:11pt;">Mail would come in, destined for &#39;x&#39; recipient. Transport would see a rule that has the condition, IsMemberOf. Then, Transport would see that the local recipient cache for the group it needs to verify that the recipient is a member of is out-of-date. It would call a thread to update it. Since threads aren&#39;t context-aware, this would occur for many of the recipients currently in the Submission Queue. The thread making the LDAP call would own the lock, as it entered the critical section. The other threads had to wait for the lock to be released to make their AD call. Since only one thread in the process&#39; bounds can own a lock, at a time, this means the threads could only complete in a one-by-one scenario. This is also why the mail couldn&#39;t be categorized because the lock prevented the thread from validating IsMemberOf without a current cache.<br /></span></p>
<p style="margin:0in 0in 0pt;"><span style="color:black;font-family:&#39;Arial&#39;,sans-serif;font-size:11pt;">&nbsp;</span></p>
<p style="margin:0in 0in 0pt;"><span style="color:black;font-family:&#39;Arial&#39;,sans-serif;font-size:11pt;">For those of you concerned if you&#39;ll run into this issue: This condition only reproduces in a single instance and that instance has&nbsp;only recurred twice, so far, during the timespan of a year. Rest assured, that even though the perceivable affected footprint of this issue is small, it <em>is</em> being investigated by the Transport developers.<br /></span></p>]]></content:encoded>
    </item>
  </channel>
</rss>