<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="http://blogs.msdn.com/utility/FeedStylesheets/rss.xsl" media="screen"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:wfw="http://wellformedweb.org/CommentAPI/"><channel><title>Dgoldman's WebLog</title><link>http://blogs.msdn.com/dgoldman/default.aspx</link><description>The daily adventures of an Escalation Engineer</description><dc:language>en-US</dc:language><generator>CommunityServer 2.1 SP1 (Build: 61025.2)</generator><item><title>IP_V6 is a must if you are trying to install Exchange 2010</title><link>http://blogs.msdn.com/dgoldman/archive/2009/11/03/ip-v6-is-a-must-if-you-are-trying-to-install-exchange-2010.aspx</link><pubDate>Tue, 03 Nov 2009 21:25:56 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:9916987</guid><dc:creator>dgoldman</dc:creator><slash:comments>0</slash:comments><comments>http://blogs.msdn.com/dgoldman/comments/9916987.aspx</comments><wfw:commentRss>http://blogs.msdn.com/dgoldman/commentrss.aspx?PostID=9916987</wfw:commentRss><wfw:comment>http://blogs.msdn.com/dgoldman/rsscomments.aspx?PostID=9916987</wfw:comment><description>&lt;p&gt;&lt;font size="3" face="ver"&gt;I am getting ready to write the whitepaper for Exchange 2010 address list segregation and I ran in to a problem where my setup was failing with no errors. I decided to open up the application log and MSEXCHANGEADTOPOLOGYSERVICE.EXE was nice enough to throw the following error for me:&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;font color="#ff0000" size="3" face="ver"&gt;Event Type: Error     &lt;br /&gt;Event Source: MSExchange ADAccess      &lt;br /&gt;Event Category: Topology       &lt;br /&gt;Event ID: 2114      &lt;br /&gt;User: N/A      &lt;br /&gt;Description:      &lt;br /&gt;Process MSEXCHANGEADTOPOLOGYSERVICE.EXE (PID=1936). Topology discovery failed, error 0x80040a02 (DSC_E_NO_SUITABLE_CDC). Look up the Lightweight Directory Access       &lt;br /&gt;Protocol (LDAP) error code specified in the event description. To do this, use Microsoft Knowledge Base article 218185, &amp;quot;Microsoft LDAP Error Codes.&amp;quot; Use the information in that article to learn more about the cause and resolution to this error. Use the Ping or PathPing command-line tools to test network connectivity to local domain controllers.&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;font color="#000000" size="3" face="ver"&gt;Like everyone else I see on the internet I also went to the following KB article, and to my surprise the article was outdated and of little use. I will see what I can do to get this fixed for everyone.&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;font color="#000000" size="3" face="ver"&gt;From here I went to check my network card settings to make sure that my DNS servers were set properly and I found that my IPV6 settings were unchecked. This is a huge problem. The Exchange 2010 services need to have IPV6 enabled for them to start. Once I enabled the IPV6 the transport service started and then I was able to reinstall all of Exchange 2010.&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;font color="#000000" size="3" face="ver"&gt;NOTE: If you need to disable IP_V6 for any reason the correct way to do this would be to do the following:&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;font size="3" face="ver"&gt;1. Uncheck IPV6 in the network card properties on both the DC and the Exchange server.&amp;#160; &lt;br /&gt;2. You must apply a registry key and reboot each machine to completely remove IPv6: &lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;font size="3" face="ver"&gt;Key: HKLM\SYSTEM\CurrentControlSet\Services\Tcpip6\Parameters     &lt;br /&gt;Value Name: DisabledComponents      &lt;br /&gt;Value Type: DWORD      &lt;br /&gt;Value: FF &lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;font size="3" face="ver"&gt;3. Once this key is set reboot both the your domain controller(s) and the Exchange server.     &lt;br /&gt;4. run an Ipconfig /all      &lt;br /&gt;5. On each machine and ensure you see no IPv6 addressing in the output.       &lt;br /&gt;6. Once this is complete, elevate diagnostic logging for ADAccess and NSPI, use the following cmdlets:&lt;/font&gt;&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;&lt;font size="3" face="ver"&gt;get-eventloglevel –id “MSExchange ADAccess\*&amp;quot; | set-eventloglevel –level:medium&lt;/font&gt;&lt;/li&gt;    &lt;li&gt;&lt;font size="3" face="ver"&gt;Get-eventloglevel –id “MSExchangeSA\*&amp;quot; | set-eventloglevel –level:medium&lt;/font&gt;&lt;/li&gt;    &lt;li&gt;&lt;font size="3" face="ver"&gt;Get-eventloglevel –id “MSExchangeSA\NSPI Proxy&amp;quot; –Level:high&lt;/font&gt;&lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;&lt;font size="3" face="ver"&gt;7. Recycle the ADAccess and System Attendant services, let the machine run for 5-10 minutes, and send me the resulting application log. &lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;font color="#000000" size="3" face="ver"&gt;Dave&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;font color="#000000" size="2" face="Arial"&gt;&amp;#160;&lt;/font&gt;&lt;/p&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9916987" width="1" height="1"&gt;</description></item><item><title>A new version of FindSearchFolder.exe has been posted to the internet and is available for download</title><link>http://blogs.msdn.com/dgoldman/archive/2009/10/28/a-new-version-of-the-exchange-server-find-search-folder-tool-is-available-for-download.aspx</link><pubDate>Wed, 28 Oct 2009 19:50:33 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:9914285</guid><dc:creator>dgoldman</dc:creator><slash:comments>0</slash:comments><comments>http://blogs.msdn.com/dgoldman/comments/9914285.aspx</comments><wfw:commentRss>http://blogs.msdn.com/dgoldman/commentrss.aspx?PostID=9914285</wfw:commentRss><wfw:comment>http://blogs.msdn.com/dgoldman/rsscomments.aspx?PostID=9914285</wfw:comment><description>&lt;p&gt;Back on Tuesday, July 01, 2008 I wrote the following blog on &lt;a href="http://blogs.msdn.com/dgoldman/archive/2008/07/01/microsoft-exchange-and-search-folders.aspx"&gt;Microsoft Exchange and Search Folders&lt;/a&gt;. For this blog I also wrote a tool that would parse the isinteg.pri file to help identify exchange mailboxes that have high item counts or a high number of search folders, which lead to massive exchange server performance issues. I have re-written this tool in managed code using Visual Studio 2010 and it has a ton more functionality.&lt;/p&gt;  &lt;p&gt;I have left the old version of the tool on the internet, and have also added a new version that will run on Windows 2008, Vista and Windows 7 machines. The new filename is&amp;#160; &lt;a href="https://code.msdn.microsoft.com/"&gt;FindSearchFolder09.7z&lt;/a&gt; and it can be found here: &lt;strong&gt;&lt;a href="http://code.msdn.microsoft.com/Release/ProjectReleases.aspx?ProjectName=FindSearchFolders&amp;amp;ReleaseId=1456"&gt;http://code.msdn.microsoft.com/Release/ProjectReleases.aspx?ProjectName=FindSearchFolders&amp;amp;ReleaseId=1456&lt;/a&gt;. &lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;To run this version of the tool all you need to do is put the isinteg.pri file in the same directory as the tool and run it.&lt;/p&gt;  &lt;p&gt;This is what the tools UI looks like. As you can see from the screen shot below, once a scan has run the tool will report back the different stages that it is in and how many mailboxes were found in the log.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogs.msdn.com/blogfiles/dgoldman/WindowsLiveWriter/AnewversionoftheExchangeServerFindSearch_CFB4/image_10.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://blogs.msdn.com/blogfiles/dgoldman/WindowsLiveWriter/AnewversionoftheExchangeServerFindSearch_CFB4/image_thumb_4.png" width="420" height="186" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;Once the tool runs it will create the following directories:&lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogs.msdn.com/blogfiles/dgoldman/WindowsLiveWriter/AnewversionoftheExchangeServerFindSearch_CFB4/image_4.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://blogs.msdn.com/blogfiles/dgoldman/WindowsLiveWriter/AnewversionoftheExchangeServerFindSearch_CFB4/image_thumb_1.png" width="415" height="206" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;All log files can be located in the Logs directory. As you can see from the following screen shot each time you run the tool it will create a new output file based on a time stamp. This version will no longer merge the results.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogs.msdn.com/blogfiles/dgoldman/WindowsLiveWriter/AnewversionoftheExchangeServerFindSearch_CFB4/image_8.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://blogs.msdn.com/blogfiles/dgoldman/WindowsLiveWriter/AnewversionoftheExchangeServerFindSearch_CFB4/image_thumb_3.png" width="423" height="254" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;The output of the tool has changed as well. The new output looks like this:&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;10-28-2009&amp;#160; -&amp;#160; Find Search Folders Output - 10-28-2009-14.53.35.txt created. Program Logging - Enabled.   &lt;br /&gt;***************************************************************************************    &lt;br /&gt;Dave Goldman - Exchange Escalation Services    &lt;br /&gt;NOTE: There is no support for this tool and will be used as is!    &lt;br /&gt;Purpose: Scan an isinteg.pri file and find the highest search folder offenders    &lt;br /&gt;10-28-2009&amp;#160; -&amp;#160; Trace time: 10-28-2009-14.53.35    &lt;br /&gt;***************************************************************************************    &lt;br /&gt;10-28-2009&amp;#160; -&amp;#160; Program Initialization - Complete    &lt;br /&gt;10-28-2009&amp;#160; -&amp;#160; Create Program Directories - Start    &lt;br /&gt;10-28-2009&amp;#160; -&amp;#160; Directory already exists: C:\Users\dgoldman.NORTHAMERICA\AppData\Roaming\FindSearchFolder    &lt;br /&gt;10-28-2009&amp;#160; -&amp;#160; Directory already exists: C:\Users\dgoldman.NORTHAMERICA\AppData\Roaming\FindSearchFolder\Logs\    &lt;br /&gt;10-28-2009&amp;#160; -&amp;#160; Directory already exists: C:\Users\dgoldman.NORTHAMERICA\AppData\Roaming\FindSearchFolder\Backup\    &lt;br /&gt;10-28-2009&amp;#160; -&amp;#160; Create Program Directories - Complete    &lt;br /&gt;10-28-2009&amp;#160; -&amp;#160; Creating default mail handler - Complete    &lt;br /&gt;10-28-2009&amp;#160; -&amp;#160; Initializing Isinteg parser&amp;#160; - Complete    &lt;br /&gt;10-28-2009&amp;#160; -&amp;#160; Getting current application run path: D:\Tools\FindSearchFolders\Release    &lt;br /&gt;10-28-2009&amp;#160; -&amp;#160; Starting Isinteg parse - Start    &lt;br /&gt;10-28-2009&amp;#160; -&amp;#160; Search size set to: 75    &lt;br /&gt;10-28-2009&amp;#160; -&amp;#160; Isinteg is from: Server name: INCLCW02A.corp.statestr.com    &lt;br /&gt;10-28-2009&amp;#160; -&amp;#160; Isinteg was run against database: Database name: First Storage Group\Mailbox Store5 (INEMAL16)    &lt;br /&gt;10-28-2009&amp;#160; -&amp;#160; Processing Mailbox Table    &lt;br /&gt;10-28-2009&amp;#160; -&amp;#160; Display Name = Not Found - MBX Table dump only&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;/p&gt;  &lt;p&gt;10-28-2009&amp;#160; -&amp;#160; Display Name = Goldman, Dave   &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; Parent FID=0001-000001AB62E5    &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; Root FID=0001-000001AB62E4    &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; Restriction=    &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; Name=Contacts    &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; Folder FID=0001-000001AB1F4E&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; Folder Type=1    &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; Search Folder Count = 357&amp;#160; &lt;strong&gt;&lt;font color="#ff0000"&gt;&amp;lt;- Is over 75 search folders and this is a BIG problem!&lt;/font&gt;&lt;/strong&gt;    &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; Backlink Folder Count = 357 &lt;/p&gt;  &lt;p&gt;10-28-2009&amp;#160; -&amp;#160; Processing Mailbox Table   &lt;br /&gt;10-28-2009&amp;#160; -&amp;#160; ==========================================================    &lt;br /&gt;10-28-2009&amp;#160; -&amp;#160; Mailbox Table    &lt;br /&gt;10-28-2009&amp;#160; -&amp;#160; ==========================================================    &lt;br /&gt;10-28-2009&amp;#160; -&amp;#160; Mailbox - Goldman, Dave - RootFID=0015-000012D75D62    &lt;br /&gt;10-28-2009&amp;#160; -&amp;#160; ==========================================================    &lt;br /&gt;10-28-2009&amp;#160; -&amp;#160; Total number of mailboxes with over 75 search folders: 1    &lt;br /&gt;10-28-2009&amp;#160; -&amp;#160; Highest number of search folders found in a single mailbox: 357    &lt;br /&gt;10-28-2009&amp;#160; -&amp;#160; Parent Folder: Parent FID=0001-000001AB62E5    &lt;br /&gt;10-28-2009&amp;#160; -&amp;#160; Highest offender is: Root 0001-000001AB62E4    &lt;br /&gt;10-28-2009&amp;#160; -&amp;#160; Total folders that do not contain search folders: 0    &lt;br /&gt;10-28-2009&amp;#160; -&amp;#160; Total mailboxes found on this information store: 1554    &lt;br /&gt;10-28-2009&amp;#160; -&amp;#160; ==========================================================    &lt;br /&gt;10-28-2009&amp;#160; -&amp;#160; ==========================================================    &lt;br /&gt;10-28-2009&amp;#160; -&amp;#160; These are the possible folder types    &lt;br /&gt;10-28-2009&amp;#160; -&amp;#160; ==========================================================    &lt;br /&gt;10-28-2009&amp;#160; -&amp;#160; Folder_Root = Folder Type = 0    &lt;br /&gt;10-28-2009&amp;#160; -&amp;#160; Normal_Folder = Folder Type = 1    &lt;br /&gt;10-28-2009&amp;#160; -&amp;#160; Search_Folder = Folder Type = 2    &lt;br /&gt;10-28-2009&amp;#160; -&amp;#160; MDB_Attachment_Folder = Folder Type = 4    &lt;br /&gt;10-28-2009&amp;#160; -&amp;#160; Repl_Folder = Folder Type = 5    &lt;br /&gt;10-28-2009&amp;#160; -&amp;#160; Categorization_Folder = Folder Type = 7    &lt;br /&gt;10-28-2009&amp;#160; -&amp;#160; ==========================================================    &lt;br /&gt;10-28-2009&amp;#160; -&amp;#160; Stat totals    &lt;br /&gt;10-28-2009&amp;#160; -&amp;#160; ==========================================================    &lt;br /&gt;10-28-2009&amp;#160; -&amp;#160; Total type Root Folders found: 1554    &lt;br /&gt;10-28-2009&amp;#160; -&amp;#160; Total type Normal folders found: 55580    &lt;br /&gt;10-28-2009&amp;#160; -&amp;#160; Total type Search Folders found: 1    &lt;br /&gt;10-28-2009&amp;#160; -&amp;#160; Total type MDB Attachment Folders found: 0    &lt;br /&gt;10-28-2009&amp;#160; -&amp;#160; Total type Repl Folder found: 0    &lt;br /&gt;10-28-2009&amp;#160; -&amp;#160; Total type Categorization (Views) Folders found: 4885    &lt;br /&gt;10-28-2009&amp;#160; -&amp;#160; ========================================================== &lt;/p&gt;  &lt;p&gt;10-28-2009&amp;#160; -&amp;#160; NOTE: Folders with a type of 7 are cached views in the information store. For more information please see: &lt;a href="http://technet.microsoft.com/en-us/library/bb124802(EXCHG.65).aspx"&gt;http://technet.microsoft.com/en-us/library/bb124802(EXCHG.65).aspx&lt;/a&gt; To expire cached views from the information store, please see: &lt;a href="http://technet.microsoft.com/en-us/library/bb124802(EXCHG.65).aspx"&gt;http://technet.microsoft.com/en-us/library/bb124802(EXCHG.65).aspx&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;10-28-2009&amp;#160; -&amp;#160; Who has the highest search folder count in an isinteg dump   &lt;br /&gt;10-28-2009&amp;#160; -&amp;#160; ==========================================================    &lt;br /&gt;10-28-2009&amp;#160; -&amp;#160; 1. Take the highest offenders RootFID and search the isinteg.pri file for this    &lt;br /&gt;10-28-2009&amp;#160; -&amp;#160; 2. Look in the ESM and match these items counts and you should have your offending mailbox.    &lt;br /&gt;10-28-2009&amp;#160; -&amp;#160; Isinteg parse - completed&lt;/p&gt;  &lt;p&gt;Dave&lt;/p&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9914285" width="1" height="1"&gt;</description></item><item><title>How can we try to control the network consumption by using OAB Throttling?</title><link>http://blogs.msdn.com/dgoldman/archive/2009/10/21/how-can-we-try-to-control-the-network-consumption-by-using-oab-throttling.aspx</link><pubDate>Wed, 21 Oct 2009 15:47:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:9910668</guid><dc:creator>dgoldman</dc:creator><slash:comments>0</slash:comments><comments>http://blogs.msdn.com/dgoldman/comments/9910668.aspx</comments><wfw:commentRss>http://blogs.msdn.com/dgoldman/commentrss.aspx?PostID=9910668</wfw:commentRss><wfw:comment>http://blogs.msdn.com/dgoldman/rsscomments.aspx?PostID=9910668</wfw:comment><description>&lt;P&gt;&lt;FONT size=2&gt;The answer to this is throttling the bandwidth from the server. By default, every client request for a full offline Address Book download is served immediately, and the public store does not limit the number of concurrent full offline Address Book downloads that can occur.&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT size=2&gt;Example 1: If a public store that supports 10,000 users receives 3,000 requests in one hour and the offline Address Book size is 100 megabytes (MB), the server must deliver 300 gigabytes (GB) of data. This traffic could potentially overload a 100-megabits-per-second (Mbps) local area network (LAN) for longer than ten hours. This traffic could potentially overload a gigabit-per-second LAN for longer than one hour.&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT size=2&gt;&lt;STRONG&gt;&lt;U&gt;How do we calculate the largest OAB message size? &lt;BR&gt;&lt;/U&gt;&lt;/STRONG&gt;1.To find out the biggest&amp;nbsp; message size you can run OABInteg /s:exchsrvname /t:oabfldcheck /v:2 /l against the public folder information store that holds your oab files (not a replica). This will dump out the message and attachment information. The messages that are in the information store contain the attachments and they are in compressed state. &lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT size=2&gt;Here is an example of the Oabfldcheck summary:&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT size=2&gt;Scan Completed &lt;BR&gt;+------------------+ &lt;BR&gt;Message Class Normal found: 2 &lt;BR&gt;Message Class Differential found: 175 &lt;BR&gt;Message Class Unknown found: 0 &lt;BR&gt;Message Attachments found: 503 &lt;BR&gt;Messages found but unable to read the properties: 0 &lt;BR&gt;System folders found: 3 &lt;BR&gt;Highest sequence number found: 231 &lt;BR&gt;Lowest sequence number found: 16 &lt;BR&gt;Biggest attachment found: 16700 Bytes &lt;BR&gt;Smallest attachment found: 102 Bytes &lt;BR&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;&lt;STRONG&gt;&lt;FONT color=#ff0000&gt;Biggest message found: 60234440 Bytes&amp;nbsp; &lt;BR&gt;&lt;/FONT&gt;&lt;/STRONG&gt;Smallest message found: 106 Bytes&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT size=2&gt;You can then take the size of the largest message (here it is 60MB) x total users downloading the OAB x request per hour = number of data to be delivered by the server.&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT size=2&gt;To download OABInteg please see Microsoft KB Article ID: Q907792 - &lt;/FONT&gt;&lt;A href="http://support.microsoft.com/kb/907792/en-us" mce_href="http://support.microsoft.com/kb/907792/en-us"&gt;&lt;FONT size=2&gt;Description of the Offline Address Book Integrity (OABInteg) tool&lt;/FONT&gt;&lt;/A&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT size=2&gt;&lt;STRONG&gt;&lt;U&gt;How to enable OAB Throttling&lt;/U&gt;&lt;/STRONG&gt; &lt;BR&gt;Use one of the following methods to determine the OAB Bandwidth Threshold data value to use: &lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT size=2&gt;&lt;STRONG&gt;&lt;U&gt;Method 1 – Less Accurate &lt;BR&gt;&lt;/U&gt;&lt;/STRONG&gt;1. Set the value preemptively. *Based on your knowledge of the network topology* and how full offline Address Book downloads from multiple servers can add up to overload the LAN, set the thresholds on the individual servers to the largest values that are consistent with not overloading the LAN.&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT color=#0000ff size=2&gt;Bandwitdh Example: Type 5000 to configure the server to use 5000 kilobytes per second (KBps) as the bandwidth threshold for offline Address Book download throttling. 5000 KBps is approximately 40,960 kilobits per second (Kbps), or 40.96 megabits per second (Mbps).&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT size=2&gt;&lt;STRONG&gt;&lt;U&gt;Method 2 – Most Accurate&lt;/U&gt;&lt;/STRONG&gt; &lt;BR&gt;1. Set up performance monitor and watch the extended MSExchangeIS Performance Monitor counter &lt;STRONG&gt;OAB: Full downloads bytes/sec&lt;/STRONG&gt; during a company-wide download that overloads the LAN. This can be a short period of time. &lt;BR&gt;2. Make note of the bandwidth used by offline Address Book downloads on each server. &lt;BR&gt;3. Set the threshold values to a percentage of those values. For example, set the threshold values to 60% of those values.&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;&lt;FONT size=2&gt;To turn on this feature on for a public store server that is used for offline Address Book distribution, follow these steps.&lt;/FONT&gt;&lt;/STRONG&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT size=2&gt;&lt;STRONG&gt;Warning:&lt;/STRONG&gt; If you use Registry Editor incorrectly, you may cause serious problems that may require you to reinstall your operating system. Microsoft cannot guarantee that you can solve problems that result from using Registry Editor incorrectly.&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT size=2&gt;&lt;U&gt;&lt;FONT color=#ff0000&gt;&lt;STRONG&gt;***Use Registry Editor at your own risk***&lt;/STRONG&gt;&lt;/FONT&gt;&lt;/U&gt; &lt;BR&gt;1. Click Start, click Run, type regedit in the Open box, and then click OK.&amp;nbsp; &lt;BR&gt;2. Locate and then click the following registry subkey: &lt;BR&gt;HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\MSExchangeIS\ParametersSystem\&amp;nbsp; &lt;BR&gt;3. On the Edit menu, point to New, and then click DWORD Value.&amp;nbsp; &lt;BR&gt;4. Type OAB Bandwidth Threshold (KBps) for the name of the DWORD, and then press ENTER. &lt;BR&gt;5. Right-click OAB Bandwidth Threshold (KBps), and then click Modify.&amp;nbsp; &lt;BR&gt;6. In the Base area, click Decimal. &lt;BR&gt;7. In the Value data box, type the value that you want to use, and then click OK. &lt;BR&gt;8. Click OK, and then quit Registry Editor.&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;&lt;U&gt;&lt;FONT size=2&gt;&lt;/FONT&gt;&lt;/U&gt;&lt;/STRONG&gt;&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;&lt;U&gt;&lt;FONT color=#ff0000 size=4&gt;Things you need to Understand about OAB Throttling&lt;/FONT&gt;&lt;/U&gt;&lt;/STRONG&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT size=2&gt;1. To return to the default behavior, delete the registry value. &lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT size=2&gt;2. &lt;STRONG&gt;This feature does not decrease the overall number of downloaded bytes by the Outlook clients.&lt;/STRONG&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT size=2&gt;3. When you limit the bandwidth that is used by full offline Address Book downloads, this feature may extend the time elapsed until all clients receive their updated full offline Address Books. Therefore, &lt;STRONG&gt;you should only use this feature if you have very large offline Address Books and you must protect your LANs from overloading&lt;/STRONG&gt;. Additionally, you should set the threshold value as high as possible.&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT size=2&gt;4. After you apply this registry setting, when an Outlook client tries to download a full offline Address Book, the public store determines the average full offline Address Book bytes that were downloaded over the previous ten seconds. One of the following two behaviors will occur: &lt;/FONT&gt;&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;
&lt;P&gt;&lt;FONT size=2&gt;If the value is less than the OAB Bandwidth Threshold, the client can continue with the full offline Address Book download at full speed. &lt;/FONT&gt;&lt;/P&gt;&lt;/LI&gt;
&lt;LI&gt;
&lt;P&gt;&lt;FONT size=2&gt;If the value is more than the OAB Bandwidth Threshold, the client cannot continue with the full offline Address Book download, the extended MSExchangeIS Performance Monitor counter OAB: Full download attempts blocked is incremented by one, and the Outlook client receives the an error message.&lt;/FONT&gt;&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;
&lt;P&gt;&lt;FONT size=2&gt;5. &lt;FONT color=#ff0000&gt;Clients that are using Microsoft Office Outlook 2003 SP1 or earlier receive the following error message: 'Microsoft Exchange Server' reported error (0x8004010B) : 'Unknown Error 0x8004010B' -&amp;gt; The Outlook client will try to download the full offline Address Book again, one time every hour, until it succeeds.&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;&lt;U&gt;&lt;FONT color=#ff0000 size=4&gt;Things not to do when using OAB Throttling&lt;/FONT&gt;&lt;/U&gt;&lt;/STRONG&gt;&lt;/P&gt;
&lt;OL&gt;
&lt;LI&gt;&lt;FONT size=3&gt;You will need to monitor this every 2 to 3 hours to recalculate the numbers. This is due to the clients succeeding in downloading the OAB.&lt;/FONT&gt;&lt;/LI&gt;
&lt;LI&gt;&lt;FONT size=3&gt;Do not try to change the exchange servers network cards to some different lan speed settings. This will only cause more problems.&lt;/FONT&gt;&lt;/LI&gt;
&lt;LI&gt;&lt;FONT size=3&gt;Do not restart the exchange server as this will just rebuild the OAB and start the process over again.&lt;/FONT&gt;&lt;/LI&gt;
&lt;LI&gt;&lt;FONT size=3&gt;Do not move the OAB to a different server as this will just rebuild the OAB and start the process over again.&lt;/FONT&gt;&lt;/LI&gt;
&lt;LI&gt;&lt;FONT size=3&gt;Do not try to stop the process. The damange has already happened and you need to ride it out!&lt;/FONT&gt;&lt;/LI&gt;&lt;/OL&gt;
&lt;P&gt;&lt;FONT size=2&gt;Dave&lt;/FONT&gt;&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9910668" width="1" height="1"&gt;</description></item><item><title>Event ID 9373 is logged in the Application log when you update the offline address book in Exchange Server 2007</title><link>http://blogs.msdn.com/dgoldman/archive/2009/08/28/event-id-9373-is-logged-in-the-application-log-when-you-update-the-offline-address-book-in-exchange-server-2007.aspx</link><pubDate>Fri, 28 Aug 2009 22:52:46 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:9888776</guid><dc:creator>dgoldman</dc:creator><slash:comments>0</slash:comments><comments>http://blogs.msdn.com/dgoldman/comments/9888776.aspx</comments><wfw:commentRss>http://blogs.msdn.com/dgoldman/commentrss.aspx?PostID=9888776</wfw:commentRss><wfw:comment>http://blogs.msdn.com/dgoldman/rsscomments.aspx?PostID=9888776</wfw:comment><description>&lt;p&gt;&lt;a&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;This was an article that I wrote about two years ago. I have high lighted a section in red which I think is very cool. You can rebuild your web distribution off of your public folder OAB without creating a new OAB. &lt;/p&gt;  &lt;p&gt;When you update the offline address book by using the &lt;b&gt;Update-OfflineAddressBook &lt;/b&gt;command or by using a scheduled task, the following event (Event ID 9373) is logged in the Application log on a computer that is running Microsoft Exchange Server 2007: &lt;/p&gt;  &lt;p&gt;Event Type: Error    &lt;br /&gt;Event Source: MSExchangeSA     &lt;br /&gt;Event Category: OAL Generator     &lt;br /&gt;Event ID: 9373    &lt;br /&gt;Description: OALGen detected that the file '\\&amp;lt;SERVER name&amp;gt;\ExchangeOAB\&amp;lt;folder name&amp;gt;\a58e388b-7b23-4944-b042-58a7d0c6590f-data-1.lzx' is corrupted or missing. This indicates data tampering or disk problems. Restore files in this folder from the recent backup or clean up folder content and force a full OAB generation. - Default Offline Address Book     &lt;br /&gt;For more information, see Help and Support Center at http://go.microsoft.com/fwlink/events.asp. &lt;/p&gt;  &lt;p&gt;&lt;a&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;&lt;u&gt;Cause -&lt;/u&gt;&lt;/strong&gt;This issue occurs when one or more OAB Version 4 offline address book files are corrupted or missing. In this case, the Microsoft Outlook clients cannot download the updated files until the issue is resolved. &lt;/p&gt;  &lt;p&gt;&lt;a&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;&lt;u&gt;RESOLUTION&lt;/u&gt;&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;To resolve this issue, use one of the following methods. &lt;/p&gt;  &lt;h5&gt;Method 1: Restore the contents of the OABGen folder &lt;/h5&gt; If daily backups are available, restore the contents of the OABGen folder to the following folder:   &lt;p&gt;&lt;var&gt;ExchangeInstallDir &lt;/var&gt;\ExchangeOAB\ &lt;var&gt;OAB GUID &lt;/var&gt;&lt;/p&gt;  &lt;p&gt;&lt;b&gt;Note &lt;/b&gt;&lt;var&gt;ExchangeInstallDir &lt;/var&gt;is a placeholder for the name of the Exchange Server 2007 installation directory. &lt;var&gt;OAB GUID &lt;/var&gt;is a placeholder for the name of the folder. &lt;/p&gt;  &lt;h5&gt;Method 2: Rebuild the offline address book files by using Exchange Management Console or the Exchange Management Shell &lt;/h5&gt; &lt;font color="#ff0000"&gt;&lt;font color="#0000ff"&gt;If the corrupted offline address book item is enabled for public folders distribution, and if the data was published in public folders before the offline address book item was corrupted, delete the contents of the OABGen folder from the &lt;var&gt;ExchangeInstallDir &lt;/var&gt;\ExchangeOAB\ &lt;var&gt;OAB GUID &lt;/var&gt;folder.&lt;/font&gt; Then, rebuild the offline address book files by using one of the following method highlighted in red below:&lt;/font&gt;   &lt;p&gt;• Use Exchange Management Console to rebuild the offline address book files. To do this, follow these steps: &lt;/p&gt;  &lt;p&gt;1. Open Exchange Management Console.    &lt;br /&gt;2. Expand Organization Configuration, and then expand Mailbox.     &lt;br /&gt;3. On the details panel, click Offline Address Book, and then select the offline address book item that you want to update.     &lt;br /&gt;4. On the Action panel, click Update, and then click Yes. &lt;/p&gt;  &lt;p&gt;&lt;font color="#ff0000"&gt;•Use the &lt;b&gt;Update-OfflineAddressBook &lt;/b&gt;command to rebuild the offline address book files.       &lt;br /&gt;To do this, run the following command in the Exchange Management Shell.&lt;/font&gt; &lt;/p&gt;  &lt;pre&gt;&lt;font color="#ff0000"&gt;Update-OfflineAddressBook &amp;lt;OAB GUID&amp;gt; &lt;/font&gt;&lt;/pre&gt;
&lt;font color="#ff0000"&gt;&lt;b&gt;Note &lt;/b&gt;You can run the &lt;b&gt;Update-OfflineAddressBook &lt;/b&gt;command on a computer that has the Mailbox, Client Access, or Hub Transport server role installed. To do this, you must log on by using an account that is a member of the Exchange Organization Administrators group. The account must also be a member of the local Administrators group on that computer.&lt;/font&gt; 

&lt;h5&gt;&amp;#160;&lt;/h5&gt;

&lt;h5&gt;Method 3: Rebuild the offline address book files by using a command &lt;/h5&gt;
If neither daily backups nor public folders distribution is available, delete the contents of the OABGen folder from the &lt;var&gt;ExchangeInstallDir &lt;/var&gt;\ExchangeOAB\ &lt;var&gt;OAB GUID &lt;/var&gt;folder. Then, rebuild the offline address book files by using one of the following commands. 

&lt;pre&gt;Update-OfflineAddressBook -Identity MyOAB &lt;/pre&gt;
&lt;b&gt;Note &lt;/b&gt;In this example, the &lt;b&gt;Update-OfflineAddressBook &lt;/b&gt;command is used to update the offline address book file that is named MyOAB. 

&lt;pre&gt;Update-OfflineAddressBook &amp;lt;OAB GUID&amp;gt; &lt;/pre&gt;

&lt;p&gt;&lt;b&gt;Note &lt;/b&gt;When you use this command, the offline address book will be rebuilt. This will cause all clients to process a full offline address book download. For OAB Version 2 and OAB Version 3a, a full offline address book download can cause massive network traffic between client access servers and clients. &lt;/p&gt;

&lt;p&gt;Dave&lt;/p&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9888776" width="1" height="1"&gt;</description></item><item><title>The Case of the Mysterious Exchange Server Hang</title><link>http://blogs.msdn.com/dgoldman/archive/2009/08/04/the-case-of-the-mysterious-exchange-server-hang.aspx</link><pubDate>Tue, 04 Aug 2009 18:59:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:9857208</guid><dc:creator>dgoldman</dc:creator><slash:comments>2</slash:comments><comments>http://blogs.msdn.com/dgoldman/comments/9857208.aspx</comments><wfw:commentRss>http://blogs.msdn.com/dgoldman/commentrss.aspx?PostID=9857208</wfw:commentRss><wfw:comment>http://blogs.msdn.com/dgoldman/rsscomments.aspx?PostID=9857208</wfw:comment><description>&lt;P&gt;I have been working an interesting case for a large enterprise customer with a few other people from my group. We were having a problem where outlook clients were unable to connect to the exchange server, however the exchange server was operating like normal. After looking at the ESE internal structures I could see that the information store was not backed up on any I/O requests. As I started to debug a number of store dumps, I saw two interesting things that stood out. Below is a RPC fault, which is very rare in a store dump.&lt;/P&gt;
&lt;P&gt;0:261&amp;gt; kbnL &lt;BR&gt;# ChildEBP RetAddr&amp;nbsp; Args to Child&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;BR&gt;00 61d9fc18 7c827d29 77e61d1e 000089dc 00000000 ntdll!KiFastSystemCallRet &lt;BR&gt;01 61d9fc1c 77e61d1e 000089dc 00000000 00000000 ntdll!NtWaitForSingleObject+0xc &lt;BR&gt;02 61d9fc8c 77cdbedf 000089dc ffffffff 00000000 kernel32!WaitForSingleObjectEx+0xac &lt;BR&gt;03 61d9fca8 77cdbf39 61d9fd20 000089dc 00000000 rpcrt4!UTIL_WaitForSyncHTTP2IO+0x18 &lt;BR&gt;04 61d9fcd0 77cccb39 67d1f18c 61d9fd20 000089dc rpcrt4!UTIL_GetOverlappedHTTP2ResultEx+0x20 &lt;BR&gt;05 61d9fcf8 77ccf2e8 67d1f18c 61d9fd1c 67d1f18c rpcrt4!WaitForSyncSend+0x26 &lt;BR&gt;06 61d9fd5c 77cd05ac 00000020 61d9fdd0 00000001 rpcrt4!HTTP2VirtualConnection::SyncSend+0xdd &lt;BR&gt;07 61d9fd7c 77ccc1f6 00000020 61d9fdd0 00000001 rpcrt4!HTTP2ServerVirtualConnection::SyncSend+0x2a &lt;BR&gt;08 61d9fd98 77c689e8 67d1f18c 00000020 61d9fdd0 rpcrt4!HTTP_SyncSend+0x2a &lt;BR&gt;09 61d9fdc0 77ca9db9 61d9fdd0 00000020 03030005 rpcrt4!OSF_SCONNECTION::TransSend+0x74 &lt;BR&gt;0a 61d9fe08 77caa3cf 00000005 00000000 00000e1d rpcrt4!OSF_SCONNECTION::SendFault+0xb5 &lt;BR&gt;&lt;FONT color=#ff0000&gt;0b 61d9fe30 77c93e4e 00000005 00000000 67c57af8 rpcrt4!OSF_SCALL::CleanupCallAndSendFault+0x46&lt;/FONT&gt; &lt;BR&gt;0c 61d9fe60 77c68b5e 67c57af8 030001f0 0000000a rpcrt4!OSF_SCALL::ProcessReceivedPDU+0x4a6 &lt;BR&gt;0d 61d9fe80 77c6e8db 00000000 000001f0 00000000 rpcrt4!OSF_SCALL::BeginRpcCall+0x194 &lt;BR&gt;0e 61d9fee0 77c6e7b4 00000000 67c57af8 000001f0 rpcrt4!OSF_SCONNECTION::ProcessReceiveComplete+0x435 &lt;BR&gt;0f 61d9fef4 77cae695 00091918 0000001c 00000000 rpcrt4!ProcessConnectionServerReceivedEvent+0x21 &lt;BR&gt;10 61d9ff18 77c7b799 00091918 0000001c 00000000 rpcrt4!ProcessComplexTReceive+0x54 &lt;BR&gt;11 61d9ff84 77c7b9b5 61d9ffac 77c8872d 00091918 rpcrt4!LOADABLE_TRANSPORT::ProcessIOEvents+0x1b8 &lt;BR&gt;12 61d9ff8c 77c8872d 00091918 00000000 00000000 rpcrt4!ProcessIOEventsWrapper+0xd &lt;BR&gt;13 61d9ffac 77c7b110 0008f5f8 61d9ffec 77e6482f rpcrt4!BaseCachedThreadRoutine+0x9d &lt;BR&gt;14 61d9ffb8 77e6482f 6a084fa0 00000000 00000000 rpcrt4!ThreadStartRoutine+0x1b &lt;BR&gt;15 61d9ffec 00000000 77c7b0f5 6a084fa0 00000000 kernel32!BaseThreadStart+0x34&lt;/P&gt;
&lt;P&gt;and a ton of threads calling in to “&lt;FONT color=#0000ff&gt;secur32!CallSPM&lt;/FONT&gt;”.&lt;/P&gt;
&lt;P&gt;0:329&amp;gt; kbn &lt;BR&gt;# ChildEBP RetAddr&amp;nbsp; Args to Child&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;BR&gt;00 6ccafbe4 7c827899 76f52135 000006f4 6ccafc24 ntdll!KiFastSystemCallRet &lt;BR&gt;01 6ccafbe8 76f52135 000006f4 6ccafc24 6ccafc24 ntdll!NtRequestWaitReplyPort+0xc &lt;BR&gt;&lt;FONT color=#0000ff&gt;02 6ccafc04 76f55173 0009ad70 6ccafc24 6ccafc24 secur32!CallSPM+0x23&lt;/FONT&gt; &lt;BR&gt;03 6ccafd30 76f54eb5 00000000 0009ad70 6ccafdac secur32!SecpAcceptSecurityContext+0x23c &lt;BR&gt;04 6ccafdc0 76f54d63 00000000 6ccafe00 6ccafef0 secur32!LsaAcceptSecurityContext+0x15d &lt;BR&gt;05 6ccafe10 77c8b90e 0010a090 67b31e68 6ccafef0 secur32!AcceptSecurityContext+0xa8 &lt;BR&gt;06 6ccafe58 77c8b8b8 00000010 6ccafef0 00000000 rpcrt4!SECURITY_CONTEXT::AcceptThirdLeg+0x42 &lt;BR&gt;07 6ccafea0 77c8b1c5 00000010 6ccafef0 00000000 rpcrt4!OSF_SCONNECTION::AcceptThirdLeg+0x61 &lt;BR&gt;08 6ccaff04 77c6e7b4 00000000 69ca4c68 000000ce rpcrt4!OSF_SCONNECTION::ProcessReceiveComplete+0x594 &lt;BR&gt;09 6ccaff18 77c7b799 00091918 0000000c 00000000 rpcrt4!ProcessConnectionServerReceivedEvent+0x21 &lt;BR&gt;0a 6ccaff84 77c7b9b5 6ccaffac 77c8872d 00091918 rpcrt4!LOADABLE_TRANSPORT::ProcessIOEvents+0x1b8 &lt;BR&gt;0b 6ccaff8c 77c8872d 00091918 00000000 00000000 rpcrt4!ProcessIOEventsWrapper+0xd &lt;BR&gt;0c 6ccaffac 77c7b110 0008f5f8 6ccaffec 77e6482f rpcrt4!BaseCachedThreadRoutine+0x9d &lt;BR&gt;0d 6ccaffb8 77e6482f 5ac85d28 00000000 00000000 rpcrt4!ThreadStartRoutine+0x1b &lt;BR&gt;0e 6ccaffec 00000000 77c7b0f5 5ac85d28 00000000 kernel32!BaseThreadStart+0x34&lt;/P&gt;
&lt;P&gt;Based on the “&lt;FONT color=#0000ff&gt;secur32!CallSPM&lt;/FONT&gt;” call stack, this tells me that we are processing authentication requests. These requests need to go to the domain controller for processing, and could potentially be proxied to another domain controller for processing. Being there could be a latency here I contacted my good friend Tate Calhoun up in the Platforms group so he could take&amp;nbsp;a look at the LSASS dumps for confirmation. Tate is a Platforms EE debugging god, so I know I was in good hands here :)&amp;nbsp;From the LSASS dumps&amp;nbsp;Tate was able to tell me that we have 199 call stacks found containing : "&lt;FONT color=#ff0000&gt;netlogon!NLPUSERVALIDATEHIGHER&lt;/FONT&gt;"&lt;/P&gt;
&lt;P&gt;0:061&amp;gt; kbn fff &lt;BR&gt;#&amp;nbsp;&amp;nbsp; ChildEBP RetAddr&amp;nbsp; Args to Child&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;BR&gt;00&amp;nbsp; 02e3ec98 7c827d29 77e61d1e 000005b4 00000000 ntdll!KiFastSystemCallRet &lt;BR&gt;01&amp;nbsp; 02e3ec9c 77e61d1e 000005b4 00000000 02e3ece0 ntdll!NtWaitForSingleObject+0xc &lt;BR&gt;02&amp;nbsp; 02e3ed0c 77e61c8d 000005b4 0000afc8 00000000 kernel32!WaitForSingleObjectEx+0xac &lt;BR&gt;03&amp;nbsp; 02e3ed20 74266947 000005b4 0000afc8 000e0270 kernel32!WaitForSingleObject+0x12 &lt;BR&gt;04&amp;nbsp; 02e3ed3c 74266e4c 000a9f70 0000afc8 000e0270 netlogon!NlAllocateClientApi+0x53 &lt;BR&gt;&lt;FONT color=#ff0000&gt;05&amp;nbsp; 02e3edbc 74266cf8 000a9f70 00000000 00000006 netlogon!NlpUserValidateHigher+0x5d&lt;/FONT&gt; &lt;BR&gt;06&amp;nbsp; 02e3ee1c 74267407 000e0270 00000001 00000000 netlogon!NlpUserValidate+0x309 &lt;BR&gt;07&amp;nbsp; 02e3eea4 7426728d 00000000 00000000 00000000 netlogon!NlpLogonSamLogon+0x3f5 &lt;BR&gt;08&amp;nbsp; 02e3eee0 76c9ce2f 00000000 00000000 00000000 netlogon!NetILogonSamLogon+0x32 &lt;BR&gt;09&amp;nbsp; 02e3f720 76c9a815 ffffffff 00000003 03b61f40 msv1_0!LsaApLogonUserEx2+0x1106 &lt;BR&gt;0a&amp;nbsp; 02e3fa80 76c95302 00607a20 01b47508 00200a03 msv1_0!SsprHandleAuthenticateMessage+0xcca &lt;BR&gt;0b&amp;nbsp; 02e3fc98 4ab85ebb 00607a20 00b48f80 02e3fe40 msv1_0!SpAcceptLsaModeContext+0x1f8 &lt;BR&gt;0c&amp;nbsp; 02e3fd0c 4ab860a8 01b474c0 01b474c8 02e3fe40 lsasrv!WLsaAcceptContext+0x139 &lt;BR&gt;0d&amp;nbsp; 02e3fe84 4ab7ae1b 01b47498 00000000 005ed200 lsasrv!LpcAcceptContext+0x13b &lt;BR&gt;0e&amp;nbsp; 02e3fe9c 4ab7ad1e 01b47498 4ac22738 05924808 lsasrv!DispatchAPI+0x46 &lt;BR&gt;0f&amp;nbsp; 02e3ff54 4ab7a769 01b47498 02e3ff9c 77e5ba69 lsasrv!LpcHandler+0x1fe &lt;BR&gt;10&amp;nbsp; 02e3ff78 4ab8f465 0062c510 00000000 00000000 lsasrv!SpmPoolThreadBase+0xb9 &lt;BR&gt;11&amp;nbsp; 02e3ffb8 77e6482f 006bee48 00000000 00000000 lsasrv!LsapThreadBase+0x91 &lt;BR&gt;12&amp;nbsp; 02e3ffec 00000000 4ab8f40e 006bee48 00000000 kernel32!BaseThreadStart+0x34 &lt;/P&gt;
&lt;P&gt;So, we are looking at authentication requests going to the LSASS process. LSASS has two threads that process authentication requests for the operating system. Here is one of the two allowed to proceed…. &lt;/P&gt;
&lt;P&gt;0:093&amp;gt; kbn fff &lt;BR&gt;#&amp;nbsp;&amp;nbsp; ChildEBP RetAddr&amp;nbsp; Args to Child&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;BR&gt;00&amp;nbsp; 0363e618 7c827d29 77e61d1e 00001541 00000001 ntdll!KiFastSystemCallRet &lt;BR&gt;01&amp;nbsp; 0363e61c 77e61d1e 00001541 00000001 0363e660 ntdll!NtWaitForSingleObject+0xc &lt;BR&gt;02&amp;nbsp; 0363e68c 77c6a85f 00001541 00057e40 00000001 kernel32!WaitForSingleObjectEx+0xac &lt;BR&gt;03&amp;nbsp; 0363e6a8 77c69bf7 0167b15c 00000001 00057e40 rpcrt4!UTIL_WaitForSyncIO+0x20 &lt;BR&gt;04&amp;nbsp; 0363e6cc 77c59546 0167b124 0167b15c 0363e6fc rpcrt4!UTIL_GetOverlappedResultEx+0x1d &lt;BR&gt;05&amp;nbsp; 0363e700 77c6af6a 00000001 0363e84c 0363e848 rpcrt4!WS_SyncRecv+0xbe &lt;BR&gt;06&amp;nbsp; 0363e728 77c69667 00000000 00ab8f70 000001a0 rpcrt4!OSF_CCONNECTION::TransSendReceive+0xb8 &lt;BR&gt;07&amp;nbsp; 0363e7b0 77c695d4 10000000 01688228 00000001 rpcrt4!OSF_CCONNECTION::SendFragment+0x2ae &lt;BR&gt;08&amp;nbsp; 0363e808 77c6977a 00000000 00000160 0363e84c rpcrt4!OSF_CCALL::SendNextFragment+0x1e2 &lt;BR&gt;09&amp;nbsp; 0363e850 77c699f2 0363e8d8 0363e894 00000001 rpcrt4!OSF_CCALL::FastSendReceive+0x148 &lt;BR&gt;0a&amp;nbsp; 0363e86c 77c69975 0363e8d8 0363e894 0363e8d8 rpcrt4!OSF_CCALL::SendReceiveHelper+0x5b &lt;BR&gt;0b&amp;nbsp; 0363e89c 77c7fcf0 00ab8f88 0363e8bc 77c80673 rpcrt4!OSF_CCALL::SendReceive+0x41 &lt;BR&gt;0c&amp;nbsp; 0363e8a8 77c80673 0363e8d8 71c43dd0 0363ecc4 rpcrt4!I_RpcSendReceive+0x24 &lt;BR&gt;0d&amp;nbsp; 0363e8bc 77ce315a 0363e904 00ab90e8 00000000 rpcrt4!NdrSendReceive+0x2b &lt;BR&gt;0e&amp;nbsp; 0363eca4 71c4e665 71c43dd0 71c4b2e4 0363ecc4 rpcrt4!NdrClientCall2+0x22e &lt;BR&gt;0f&amp;nbsp; 0363ecbc 71c4e620 01b2ee68 03985a38 000e0300 netapi32!NetrLogonSamLogonEx+0x1c &lt;BR&gt;10&amp;nbsp; 0363ed1c 74266fdc 01b2ee68 03985a38 000e0300 netapi32!I_NetLogonSamLogonEx+0x41 &lt;BR&gt;11&amp;nbsp; 0363edbc 74266cf8 000a9f70 00000000 00000006 netlogon!NlpUserValidateHigher+0x2d5 &lt;BR&gt;12&amp;nbsp; 0363ee1c 74267407 000e0270 00000001 00000000 netlogon!NlpUserValidate+0x309 &lt;BR&gt;13&amp;nbsp; 0363eea4 7426728d 00000000 00000000 00000000 netlogon!NlpLogonSamLogon+0x3f5 &lt;BR&gt;14&amp;nbsp; 0363eee0 76c9ce2f 00000000 00000000 00000000 netlogon!NetILogonSamLogon+0x32 &lt;BR&gt;15&amp;nbsp; 0363f720 76c9a815 ffffffff 00000003 00b55030 msv1_0!LsaApLogonUserEx2+0x1106 &lt;BR&gt;16&amp;nbsp; 0363fa80 76c95302 00607708 01b05188 00200a03 msv1_0!SsprHandleAuthenticateMessage+0xcca &lt;BR&gt;17&amp;nbsp; 0363fc98 4ab85ebb 00607708 017920d0 0363fe40 msv1_0!SpAcceptLsaModeContext+0x1f8 &lt;BR&gt;18&amp;nbsp; 0363fd0c 4ab860a8 01b05140 01b05148 0363fe40 lsasrv!WLsaAcceptContext+0x139 &lt;BR&gt;19&amp;nbsp; 0363fe84 4ab7ae1b 01b05118 00000000 005ed050 lsasrv!LpcAcceptContext+0x13b &lt;BR&gt;1a&amp;nbsp; 0363fe9c 4ab7ad1e 01b05118 4ac22738 01b420b8 lsasrv!DispatchAPI+0x46 &lt;BR&gt;1b&amp;nbsp; 0363ff54 4ab7a769 01b05118 0363ff9c 77e5ba69 lsasrv!LpcHandler+0x1fe &lt;BR&gt;1c&amp;nbsp; 0363ff78 4ab8f465 0062c510 00000000 00000000 lsasrv!SpmPoolThreadBase+0xb9 &lt;BR&gt;1d&amp;nbsp; 0363ffb8 77e6482f 006bf2c8 00000000 00000000 lsasrv!LsapThreadBase+0x91 &lt;BR&gt;1e&amp;nbsp; 0363ffec 00000000 4ab8f40e 006bf2c8 00000000 kernel32!BaseThreadStart+0x34&lt;/P&gt;
&lt;P&gt;Now the question remains, why are we having a backlog. Mike wrote a detailed blog describing these findings and how to fix. Please see Mike Lagase’s blog: &lt;A title=http://blogs.technet.com/mikelag/archive/2009/08/04/the-case-of-the-mysterious-exchange-server-hang.aspx href="http://blogs.technet.com/mikelag/archive/2009/08/04/the-case-of-the-mysterious-exchange-server-hang.aspx" mce_href="http://blogs.technet.com/mikelag/archive/2009/08/04/the-case-of-the-mysterious-exchange-server-hang.aspx"&gt;http://blogs.technet.com/mikelag/archive/2009/08/04/the-case-of-the-mysterious-exchange-server-hang.aspx&lt;/A&gt;&lt;/P&gt;
&lt;P&gt;Dave&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9857208" width="1" height="1"&gt;</description></item><item><title>When downloading the OAB from an Exchange 2007 server running on Windows Server 2008 it can take forever, or you can be prompted repeatedly for credentials</title><link>http://blogs.msdn.com/dgoldman/archive/2009/07/14/downloading-the-oab-takes-for-every-or-you-are-repeated-over-and-over-for-credentials-when-running-exchange-2007-on-windows-server-2008.aspx</link><pubDate>Tue, 14 Jul 2009 23:38:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:9833497</guid><dc:creator>dgoldman</dc:creator><slash:comments>0</slash:comments><comments>http://blogs.msdn.com/dgoldman/comments/9833497.aspx</comments><wfw:commentRss>http://blogs.msdn.com/dgoldman/commentrss.aspx?PostID=9833497</wfw:commentRss><wfw:comment>http://blogs.msdn.com/dgoldman/rsscomments.aspx?PostID=9833497</wfw:comment><description>&lt;P&gt;&lt;FONT size=2 face=Arial&gt;We released an update for Rollup 8 for Exchange Server 2007 Service Pack 1 (&lt;/FONT&gt;&lt;A href="http://support.microsoft.com/kb/968012" mce_href="http://support.microsoft.com/kb/968012"&gt;&lt;FONT size=2 face=Arial&gt;KB 968012&lt;/FONT&gt;&lt;/A&gt;&lt;FONT size=2 face=Arial&gt;) back on May 26th, 2009. When Exchange 2007 is running on a Windows Server 2008, the Exchange 2007 clients may be repeatedly prompted for their credentials during Outlook Anywhere session, or an OAB download will be perceived to hang forever.&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT size=2 face=Arial&gt;This issue occurs when NTLM Authentication is selected as the authentication method in the Exchange Proxy Settings dialog box for the Outlook profile on the client computer. This issue does not occur if Basic Authentication is selected as the authentication method in the Exchange Proxy Settings dialog box. &lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT size=2&gt;&lt;FONT face=Arial&gt;&lt;STRONG&gt;By default, Kernel Mode Authentication is enabled in Internet Information Services (IIS) 7.0 on the Client Access server&lt;/STRONG&gt;. To resolve this issue, disable Kernel Mode Authentication for Client Access servers that are running Windows Server 2008.&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;&lt;U&gt;&lt;FONT size=2 face=Arial&gt;The Fix&lt;/FONT&gt;&lt;/U&gt;&lt;/STRONG&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT size=2 face=Arial&gt;To disable Kernel Mode Authentication for Client Access servers that are running Windows Server 2008 &lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;A&gt;&lt;FONT size=2 face=Arial&gt;&lt;/FONT&gt;&lt;/A&gt;&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;
&lt;P&gt;&lt;FONT size=2 face=Arial&gt;At a command prompt, type the following command, and then press ENTER:&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT size=2 face=Arial&gt;&lt;/FONT&gt;&lt;A href="http://technet.microsoft.com/" mce_href="http://technet.microsoft.com/"&gt;&lt;/A&gt;
&lt;P mce_keep="true"&gt;&lt;FONT size=2 face=Arial&gt;%systemroot%\system32\inetsrv\AppCmd.exe set config /section:system.webServer/security/authentication/windowsAuthentication /useKernelMode:false&lt;/FONT&gt;&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;
&lt;P&gt;&lt;FONT size=2 face=Arial&gt;Running the following command will verify that the changes have taken place:&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT size=2 face=Arial&gt;C:\Windows\System32\inetsrv&amp;gt;&lt;FONT color=#0000ff&gt;appcmd.exe list config /section:WindowsAuthentication &lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT size=2 face=Arial&gt;&amp;lt;system.webServer&amp;gt; &lt;BR&gt;&amp;nbsp;&amp;nbsp; &amp;lt;security&amp;gt; &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;authentication&amp;gt; &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;windowsAuthentication enabled="false" &lt;FONT color=#ff0000&gt;useKernelMode="false"&lt;/FONT&gt;&amp;gt; &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;providers&amp;gt; &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;add value="Negotiate" /&amp;gt; &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;add value="NTLM" /&amp;gt; &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/providers&amp;gt; &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/windowsAuthentication&amp;gt; &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/authentication&amp;gt; &lt;BR&gt;&amp;nbsp;&amp;nbsp; &amp;lt;/security&amp;gt; &lt;BR&gt;&amp;lt;/system.webServer&amp;gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT size=2 face=Arial&gt;NOTE: Installing an Exchange Rollup or IU should never change a web.config file on a server. Running this command is a manual step that must be preformed, and is outlined in the following TechNet documentation:&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;A title=http://technet.microsoft.com/en-us/library/bb123889.aspx href="http://technet.microsoft.com/en-us/library/bb123889.aspx" mce_href="http://technet.microsoft.com/en-us/library/bb123889.aspx"&gt;&lt;FONT size=2 face=Arial&gt;&lt;U&gt;http://technet.microsoft.com/en-us/library/bb123889.aspx&lt;/U&gt;&lt;/FONT&gt;&lt;/A&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT size=2 face=Arial&gt;Dave&lt;/FONT&gt;&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9833497" width="1" height="1"&gt;</description></item><item><title>Global Address list shows the legacyExchangeDN instead of the email address</title><link>http://blogs.msdn.com/dgoldman/archive/2009/07/01/gal-showing-legacy-dn-instead-of-email-address.aspx</link><pubDate>Wed, 01 Jul 2009 21:27:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:9811627</guid><dc:creator>dgoldman</dc:creator><slash:comments>0</slash:comments><comments>http://blogs.msdn.com/dgoldman/comments/9811627.aspx</comments><wfw:commentRss>http://blogs.msdn.com/dgoldman/commentrss.aspx?PostID=9811627</wfw:commentRss><wfw:comment>http://blogs.msdn.com/dgoldman/rsscomments.aspx?PostID=9811627</wfw:comment><description>&lt;P&gt;There are certain situations where the Global Address list display will show the legacyExchangeDN instead of the SMTP email address. The one condition where this is true is when you are viewing the Global Address List through Outlook 2003. The default behavior for Outlook 2003 is to use the EX address type for the Email Address column.&lt;/P&gt;
&lt;P&gt;&lt;A href="http://blogs.msdn.com/blogfiles/dgoldman/WindowsLiveWriter/GALshowingLegacyDNInsteadofEmailAddress_9A5A/image_2.png" mce_href="http://blogs.msdn.com/blogfiles/dgoldman/WindowsLiveWriter/GALshowingLegacyDNInsteadofEmailAddress_9A5A/image_2.png"&gt;&lt;IMG style="BORDER-BOTTOM: 0px; BORDER-LEFT: 0px; MARGIN: 5px 5px 5px 0px; DISPLAY: inline; BORDER-TOP: 0px; BORDER-RIGHT: 0px" title=image border=0 alt=image src="http://blogs.msdn.com/blogfiles/dgoldman/WindowsLiveWriter/GALshowingLegacyDNInsteadofEmailAddress_9A5A/image_thumb.png" width=755 height=349 mce_src="http://blogs.msdn.com/blogfiles/dgoldman/WindowsLiveWriter/GALshowingLegacyDNInsteadofEmailAddress_9A5A/image_thumb.png"&gt;&lt;/A&gt; &lt;/P&gt;
&lt;P mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;The default behavior for Outlook 2007 is to use the SMTP email address. &lt;/P&gt;
&lt;P&gt;&lt;A href="http://blogs.msdn.com/blogfiles/dgoldman/WindowsLiveWriter/GALshowingLegacyDNInsteadofEmailAddress_9A5A/image_4.png" mce_href="http://blogs.msdn.com/blogfiles/dgoldman/WindowsLiveWriter/GALshowingLegacyDNInsteadofEmailAddress_9A5A/image_4.png"&gt;&lt;IMG style="BORDER-BOTTOM: 0px; BORDER-LEFT: 0px; DISPLAY: inline; BORDER-TOP: 0px; BORDER-RIGHT: 0px" title=image border=0 alt=image src="http://blogs.msdn.com/blogfiles/dgoldman/WindowsLiveWriter/GALshowingLegacyDNInsteadofEmailAddress_9A5A/image_thumb_1.png" width=753 height=337 mce_src="http://blogs.msdn.com/blogfiles/dgoldman/WindowsLiveWriter/GALshowingLegacyDNInsteadofEmailAddress_9A5A/image_thumb_1.png"&gt;&lt;/A&gt; &lt;/P&gt;
&lt;P&gt;The best thing you can do is look at the users attribute in the active directory if you are not sure, because the mail attribute should contain a SMTP proxy address. If it contains a legacyExchangeDN, then this is incorrect. Here is where you can run in to problems. The OAB Generation process will turf an object when the mail attribute and primary proxy address for a user does not match. Running OABInteg can help you figure this out. You can run OABInteg /s:srvName /t:proxytest /v:2 /l. At the end of the output you will see something that looks like this: &lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;&lt;U&gt;Scan Finished&lt;/U&gt;&lt;/STRONG&gt; &lt;BR&gt;Total number of entries processed in the address book: 241004 &lt;BR&gt;Total number of entries skipped: 0 &lt;BR&gt;Total number of contacts: 12868 &lt;BR&gt;Total number of mailboxes: 95214 &lt;BR&gt;Total number of distribution lists: 131193 &lt;BR&gt;Total number of groups: 0 &lt;BR&gt;Total number of folders: 282 &lt;BR&gt;Total number of Address Book Container objects found: 0 &lt;BR&gt;Total number of temp legacyExchangeDN's found: 0 &lt;BR&gt;Total number of objects that are missing some main attributes: 0 &lt;BR&gt;&lt;STRONG&gt;&lt;FONT color=#ff0000&gt;Total number of objects that mail and proxy attribute don't match: 1&lt;/FONT&gt;&lt;/STRONG&gt; &lt;BR&gt;Total number of objects that do not have a domain value: 0 &lt;BR&gt;Total number of objects that do not have a valid unicode domain value: 0 &lt;BR&gt;Total number of objects that do not have a valid SMTP Domain because first character is not greater than '/': 0 &lt;BR&gt;Total number of objects that do not start with /o= or /O=: 1 &lt;BR&gt;Total user objects that are missing the Primary Proxy address attribute: 0 &lt;BR&gt;Total user objects with proxy addresses equal to or over 64 characters: 0 &lt;BR&gt;Total objects with the '@' character in the legacyExchangeDN: 0 &lt;BR&gt;Total objects with bad Active Directory Backlinks: 0 &lt;BR&gt;Total objects that have a legacyExchangeDN of ADCDisableMail: 0 &lt;BR&gt;Total objects that have a legacyExchangeDN of ADCDisableMailByADC: 0&lt;/P&gt;
&lt;P&gt;I highlighted in bold red what is the important information.&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;Here is a good object:&lt;/STRONG&gt;&lt;/P&gt;
&lt;P&gt;Processing Address Book Entry #1 of 50. &lt;BR&gt;Display Name = Dave Goldman &lt;BR&gt;Object is a mailbox object &lt;BR&gt;LegacyExchangeDN starts with '/o=' or '/O='. Value = /o=microsoft/ou=northamerica/cn=Recipients/cn=dgoldman &lt;BR&gt;Primary Proxy Address found. Value = &lt;A href="mailto:dgoldman@microsoft.com" mce_href="mailto:dgoldman@microsoft.com"&gt;dgoldman@microsoft.com&lt;/A&gt; &lt;BR&gt;Primary Proxy Address has a vaild unicode domain. Value = @microsoft.com &lt;BR&gt;SMTP Domain is valid and contains '@'. &lt;BR&gt;X500 Address is: X500:/o=microsoft/ou=northamerica/cn=Recipients/cn=dgoldman &lt;BR&gt;&lt;STRONG&gt;Proxy Address SMTP:dgoldman@microsoft.com is 8 characters. (First 8 characters) &lt;BR&gt;Primary Proxy Address found. Value = SMTP:dgoldman@microsoft.com. &lt;BR&gt;Primary Proxy Address and mail attribute match.&lt;/STRONG&gt; &lt;BR&gt;Primary Proxy Address = &lt;A href="mailto:dgoldman@microsoft.com" mce_href="mailto:dgoldman@microsoft.com"&gt;dgoldman@microsoft.com&lt;/A&gt;, mail attribute = &lt;A href="mailto:dgoldman@microsoft.com" mce_href="mailto:dgoldman@microsoft.com"&gt;dgoldman@microsoft.com&lt;/A&gt;. &lt;BR&gt;Primary Proxy Address has a valid domain. Value = @microsoft.com&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;Here is a bad object:&lt;/STRONG&gt;&lt;/P&gt;
&lt;P&gt;Processing Address Book Entry #1 of 50. &lt;BR&gt;Display Name = Dave Goldman &lt;BR&gt;Object is a mailbox object &lt;BR&gt;LegacyExchangeDN starts with '/o=' or '/O='. Value = /o=microsoft/ou=northamerica/cn=Recipients/cn=dgoldman &lt;BR&gt;Primary Proxy Address found. Value = dgoldman@microsoft.com &lt;BR&gt;Primary Proxy Address has a vaild unicode domain. Value = @microsoft.com &lt;BR&gt;SMTP Domain is valid and contains '@'. &lt;BR&gt;X500 Address is: X500:/o=microsoft/ou=northamerica/cn=Recipients/cn=dgoldman &lt;BR&gt;Proxy Address SMTP:dgoldman@microsoft.com is 8 characters. (First 8 characters) &lt;BR&gt;Primary Proxy Address found. Value = SMTP:dgoldman@microsoft.com. &lt;BR&gt;ERROR - Primary Proxy Address and mail attribute do not match. &lt;BR&gt;Primary Proxy Address = dgoldman@microsoft.com, &lt;STRONG&gt;&lt;FONT color=#ff0000&gt;mail attribute = dave.goldman@microsoft.com.&lt;/FONT&gt;&lt;/STRONG&gt; &lt;BR&gt;Primary Proxy Address has a valid domain. Value = @microsoft.com&lt;/P&gt;
&lt;P&gt;For more information on the proxytest command: &lt;A title=http://blogs.msdn.com/dgoldman/archive/2007/03/08/how-to-use-oabinteg-s-oabfldcheck-and-proxytest-to-find-oab-issues.aspx href="http://blogs.msdn.com/dgoldman/archive/2007/03/08/how-to-use-oabinteg-s-oabfldcheck-and-proxytest-to-find-oab-issues.aspx" mce_href="http://blogs.msdn.com/dgoldman/archive/2007/03/08/how-to-use-oabinteg-s-oabfldcheck-and-proxytest-to-find-oab-issues.aspx"&gt;http://blogs.msdn.com/dgoldman/archive/2007/03/08/how-to-use-oabinteg-s-oabfldcheck-and-proxytest-to-find-oab-issues.aspx&lt;/A&gt;&lt;/P&gt;
&lt;P&gt;So to recap, if you are seeing the legacyExchangeDN in the Global Address List display, you should verify it the mail attribute is correct. If not, you will want to get this fixed. This can be done via logon script, using tools like ADModify, etc.&lt;/P&gt;
&lt;P&gt;Dave&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9811627" width="1" height="1"&gt;</description></item><item><title>Unable to delete the OAB system folders in Exchange 2007?</title><link>http://blogs.msdn.com/dgoldman/archive/2009/05/20/unable-to-delete-the-oab-system-folders-in-exchange-2007.aspx</link><pubDate>Thu, 21 May 2009 01:54:23 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:9633004</guid><dc:creator>dgoldman</dc:creator><slash:comments>1</slash:comments><comments>http://blogs.msdn.com/dgoldman/comments/9633004.aspx</comments><wfw:commentRss>http://blogs.msdn.com/dgoldman/commentrss.aspx?PostID=9633004</wfw:commentRss><wfw:comment>http://blogs.msdn.com/dgoldman/rsscomments.aspx?PostID=9633004</wfw:comment><description>&lt;p&gt;Often we will get question that have to deal with deleting system folders in Exchange 2007. When deleting an OAB public folder from Exchange Management console, you receive the following error: 0x80070005. This error means &amp;quot;Access Denied.&amp;quot; You will still receive this error even if you use an account that has Exchange Organization administrator permissions.&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;Logging will also show the following:&lt;/p&gt;  &lt;p&gt;Action 'Remove' could not be performed on object - ‘/o=Organization/cn=addrlists/cn=oabs/cn=OAB'.   &lt;br /&gt;    &lt;br /&gt;Error: The folder '\NON_IPM_SUBTREE\OFFLINE ADDRESS BOOK\ /o=Organization/cn=addrlists/cn=oabs/cn=OAB' or some of its subfolder(s) encountered errors and could not be deleted. MapiExceptionPartialCompletion: Unable to delete folder. (hr=0x40680, ec=0)&lt;/p&gt;  &lt;p&gt;Diagnostic context:   &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; Lid: 18969&amp;#160;&amp;#160; EcDoRpcExt2 called [length=54]    &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; Lid: 27161&amp;#160;&amp;#160; EcDoRpcExt2 returned [ec=0x0][length=85][latency=0]    &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; Lid: 23226&amp;#160;&amp;#160; --- ROP Parse Start ---    &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; Lid: 27962&amp;#160;&amp;#160; ROP: ropDeleteFolder [29]    &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; Lid: 17082&amp;#160;&amp;#160; ROP Error: 0x80070005    &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; Lid: 19297&amp;#160; &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; Lid: 21921&amp;#160;&amp;#160; StoreEc: 0x80070005    &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; Lid: 27962&amp;#160;&amp;#160; ROP: ropNone [0]    &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; Lid: 26881&amp;#160; &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; Lid: 21817&amp;#160;&amp;#160; ROP Failure: 0x80070005    &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; Lid: 24721&amp;#160; &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; Lid: 20625&amp;#160;&amp;#160; StoreEc: 0x80070005&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;&lt;u&gt;Cause&lt;/u&gt;&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;This is by design. You cannot manually create or manually delete an OAB root folder. These system folders are handled by the information store. When you create an OAB object in the directory via powershell or the Exchange Management Console, the owning information store will create the OAB root folder when site folder maintenance is run. When you delete an OAB object from the active directory, the information store will mark the OAB folder as unused during site folder maintenance. If it goes unused for 7 days, it is deleted by the store during site folder maintenance.&lt;/p&gt;  &lt;p&gt;Dave&lt;/p&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9633004" width="1" height="1"&gt;</description></item><item><title>Full OAB downloads caused by mis-configured anti virus software settings</title><link>http://blogs.msdn.com/dgoldman/archive/2009/04/08/full-oab-downloads-caused-by-mis-configured-anti-virus-software-settings.aspx</link><pubDate>Wed, 08 Apr 2009 20:16:38 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:9538587</guid><dc:creator>dgoldman</dc:creator><slash:comments>0</slash:comments><comments>http://blogs.msdn.com/dgoldman/comments/9538587.aspx</comments><wfw:commentRss>http://blogs.msdn.com/dgoldman/commentrss.aspx?PostID=9538587</wfw:commentRss><wfw:comment>http://blogs.msdn.com/dgoldman/rsscomments.aspx?PostID=9538587</wfw:comment><description>&lt;p&gt;Over the last few months I have seen a rash of calls come in where clients were being forced to download a full.&amp;#160; Full OAB downloads can cause very high network usage and cause more havoc than anything.&lt;/p&gt;  &lt;p&gt;Typically in these situations it is pretty easy to tell what is going on from the event errors that are logged. The two following events are as follows:&lt;/p&gt;  &lt;p&gt;Event ID&amp;#160;&amp;#160;&amp;#160;&amp;#160; : 9116   &lt;br /&gt;Raw Event ID : 9116    &lt;br /&gt;Record Nr.&amp;#160;&amp;#160; : 860555    &lt;br /&gt;Category&amp;#160;&amp;#160;&amp;#160;&amp;#160; : OAL Generator    &lt;br /&gt;Source&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; : MSExchangeSA    &lt;br /&gt;Type&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; : Warning    &lt;br /&gt;Generated&amp;#160;&amp;#160;&amp;#160; : 4/7/2009 5:19:17 PM    &lt;br /&gt;Written&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; : 4/7/2009 5:19:17 PM    &lt;br /&gt;Machine&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; : OABServer    &lt;br /&gt;Message&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; : OALGen encountered an error while generating the binpatch.oab file for differential downloads of address list '\Global Address List'.&amp;#160; Clients will not be able to incrementally update to the new version of the offline address list, they will perform a full download instead.&amp;#160; This is normal if this is the first time this offline address list has been generated.&amp;#160; Check other logged events to see if this is a serious error.    &lt;br /&gt;- Default Offline Address List &lt;/p&gt;  &lt;p&gt;&lt;font color="#ff0000"&gt;NOTE&lt;/font&gt;: This is the first indication that you have a problem! You should never see a 9116 event any other time then when you generate your OAB for the first time.&lt;/p&gt;  &lt;p&gt;Event ID&amp;#160;&amp;#160;&amp;#160;&amp;#160; : 9109   &lt;br /&gt;Raw Event ID : 9109    &lt;br /&gt;Record Nr.&amp;#160;&amp;#160; : 860554    &lt;br /&gt;Category&amp;#160;&amp;#160;&amp;#160;&amp;#160; : OAL Generator    &lt;br /&gt;Source&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; : MSExchangeSA    &lt;br /&gt;Type&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; : Warning    &lt;br /&gt;Generated&amp;#160;&amp;#160;&amp;#160; : 4/7/2009 5:19:17 PM    &lt;br /&gt;Written&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; : 4/7/2009 5:19:17 PM    &lt;br /&gt;Machine&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; : OABServer    &lt;br /&gt;Message&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; : OALGen encountered an error ffffffff (internal ID 50303f6) while generating address list '\Global Address List'.&amp;#160; Check other logged events to see if this is a serious error.    &lt;br /&gt;- Default Offline Address List &lt;/p&gt;  &lt;p&gt;The key here is to check your anti-virus software to make sure that none of the OAB files have been quarantined. Being that the details.oab file is the biggest OAB file, it has the potential to get looked at more by anti-virus software than the other OAB files due to it’s size and usage. More evidence that the anti virus software had foul play here is to look at the data.oab file. In doing so you will see that it might contain one attachment called Deleted attachment.txt. &lt;/p&gt;  &lt;p&gt;When this happens the client can not apply the difference file which results in the 9116 which most of the time is a normal event if you just built your OAB for the first time.&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;&lt;u&gt;The Fix&lt;/u&gt;&lt;/strong&gt;&lt;/p&gt;  &lt;ol&gt;   &lt;li&gt;Make sure your anti virus software has the proper exclusions set to not monitor the exchange OAB directories on your exchange server.&lt;/li&gt;    &lt;li&gt;Make sure on the client you are excluding the *.oab files.&lt;/li&gt; &lt;/ol&gt;  &lt;p&gt;Dave&lt;/p&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9538587" width="1" height="1"&gt;</description></item><item><title>Forward to Internet recipients without internal mail-enabled contacts no longer works on Exchange 2007 – Part 2</title><link>http://blogs.msdn.com/dgoldman/archive/2009/03/25/how-to-forward-to-internet-recipients-without-creating-an-internal-mail-enabled-contact-part-2.aspx</link><pubDate>Wed, 25 Mar 2009 17:58:25 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:9507597</guid><dc:creator>dgoldman</dc:creator><slash:comments>2</slash:comments><comments>http://blogs.msdn.com/dgoldman/comments/9507597.aspx</comments><wfw:commentRss>http://blogs.msdn.com/dgoldman/commentrss.aspx?PostID=9507597</wfw:commentRss><wfw:comment>http://blogs.msdn.com/dgoldman/rsscomments.aspx?PostID=9507597</wfw:comment><description>&lt;p&gt;I was recently asked by a HMC customer to see if this solution [&lt;a title="http://blogs.msdn.com/dgoldman/archive/2008/04/09/how-to-forward-to-internet-recipients-without-creating-an-internal-mail-enabled-contact.aspx" href="http://blogs.msdn.com/dgoldman/archive/2008/04/09/how-to-forward-to-internet-recipients-without-creating-an-internal-mail-enabled-contact.aspx"&gt;http://blogs.msdn.com/dgoldman/archive/2008/04/09/how-to-forward-to-internet-recipients-without-creating-an-internal-mail-enabled-contact.aspx&lt;/a&gt;] would work for Exchange 2007 as it did work on Exchange 2003. The answer to this is *no*, this will not work. Being that the Exchange 2007 transport is a rewrite from 2003 we do not process the forwardingAddress of a user object, and this is by design.&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;I decided to set up a repro for this using the following steps:&lt;/p&gt;  &lt;p&gt;1. Installed 3 Exchange 2007 servers. (1 Client Access Server, 1 Mailbox Server and 1 Hub Server.    &lt;br /&gt;2. In the Exchange System Manager I clicked on the Organization Configuration | Remote Domains Tab | Format of original message sent as attachment to journal report tab | click &amp;quot;Allow automatic forward&amp;quot;     &lt;br /&gt;3. Created a new mailbox called mailForward.     &lt;br /&gt;4. Using ADSI Edit connect to Schema, then navigate to Schema attribute ms-Exch-Forwarding-Address properties and set isMemberOfPartialAttributeSet to True 5. Now using ADSiEdit and navigate to the user account in the domain naming context and set forwardingAddress attribute on mailbox user’s properties. I changed the external recipient address to which you want the mail forwarded (for example &lt;a href="mailto:dgoldman@hotmail.com"&gt;dgoldman@hotmail.com&lt;/a&gt;)&lt;/p&gt;  &lt;p&gt;Did my test on RTM and it was a no go. I then installed the latest services packs and hot fixes to confirm there were no changes between RTM and the latest Rollup. &lt;/p&gt;  &lt;p&gt;Sending the message to the user will produce the following results if you look at the dump out the queues using Get-MessageTrackingLog&lt;/p&gt;  &lt;p&gt;… I cut the rest out for readability&lt;/p&gt;  &lt;p&gt;RECEIVE&amp;#160; STORE... &lt;a href="mailto:mailForward@tpworld.l"&gt;mailForward@tpworld.l&lt;/a&gt;... {mailForward@domain.com... test     &lt;br /&gt;DELIVER&amp;#160; STORE... &lt;a href="mailto:mailForward@tpworld.l"&gt;mailForward&lt;/a&gt;@tpworld.l... {mailForward@domain.com... test &lt;/p&gt;  &lt;p&gt;As you can see the information store received and delivered the message which is correct, however you do not see an email being set to &lt;a href="mailto:dgoldman@hotmail.com."&gt;dgoldman@hotmail.com.&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Checking the queues with the Exchange Management Console shows the following: &lt;/p&gt;  &lt;p&gt;[PS] C:\Documents and Settings\exadmin&amp;gt;Get-Queue | fl &lt;/p&gt;  &lt;p&gt;Identity&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; : E2K7-HUB\Submission    &lt;br /&gt;DeliveryType&amp;#160;&amp;#160;&amp;#160;&amp;#160; : Undefined     &lt;br /&gt;NextHopDomain&amp;#160;&amp;#160;&amp;#160; : Submission     &lt;br /&gt;NextHopConnector : 00000000-0000-0000-0000-000000000000     &lt;br /&gt;Status&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; : Ready     &lt;br /&gt;MessageCount&amp;#160;&amp;#160;&amp;#160;&amp;#160; : 0     &lt;br /&gt;LastError&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; :     &lt;br /&gt;LastRetryTime&amp;#160;&amp;#160;&amp;#160; :     &lt;br /&gt;NextRetryTime&amp;#160;&amp;#160;&amp;#160; :     &lt;br /&gt;IsValid&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; : True     &lt;br /&gt;ObjectState&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; : Unchanged &lt;/p&gt;  &lt;p&gt;If the message was bifurcated you would expect to see an Unreachable queue for the message that was destined for hotmail. &lt;/p&gt;  &lt;p&gt;I created a separate message to a false user: badmail@hotmail.com and sent this from the mailbox and you then see the following: &lt;/p&gt;  &lt;p&gt;Identity&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; : E2K7-HUB\Submission    &lt;br /&gt;DeliveryType&amp;#160;&amp;#160;&amp;#160;&amp;#160; : Undefined     &lt;br /&gt;NextHopDomain&amp;#160;&amp;#160;&amp;#160; : Submission     &lt;br /&gt;NextHopConnector : 00000000-0000-0000-0000-000000000000     &lt;br /&gt;Status&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; : Ready     &lt;br /&gt;MessageCount&amp;#160;&amp;#160;&amp;#160;&amp;#160; : 0     &lt;br /&gt;LastError&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; :     &lt;br /&gt;LastRetryTime&amp;#160;&amp;#160;&amp;#160; :     &lt;br /&gt;NextRetryTime&amp;#160;&amp;#160;&amp;#160; :     &lt;br /&gt;IsValid&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; : True     &lt;br /&gt;ObjectState&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; : Unchanged &lt;/p&gt;  &lt;p&gt;Identity&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; : E2K7-HUB\Unreachable    &lt;br /&gt;DeliveryType&amp;#160;&amp;#160;&amp;#160;&amp;#160; : Unreachable     &lt;br /&gt;NextHopDomain&amp;#160;&amp;#160;&amp;#160; : Unreachable Domain     &lt;br /&gt;NextHopConnector : 00000000-0000-0000-0000-000000000000     &lt;br /&gt;Status&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; : Ready     &lt;br /&gt;MessageCount&amp;#160;&amp;#160;&amp;#160;&amp;#160; : 1     &lt;br /&gt;LastError&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; :     &lt;br /&gt;LastRetryTime&amp;#160;&amp;#160;&amp;#160; :     &lt;br /&gt;NextRetryTime&amp;#160;&amp;#160;&amp;#160; :     &lt;br /&gt;IsValid&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; : True     &lt;br /&gt;ObjectState&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; : Unchanged &lt;/p&gt;  &lt;p&gt;As a follow up I checked with the transport team and they in fact agree that this will no longer work and is by design.&lt;/p&gt;  &lt;p&gt;Dave&lt;/p&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9507597" width="1" height="1"&gt;</description></item><item><title>A new build of OABInteg has been posted to the web</title><link>http://blogs.msdn.com/dgoldman/archive/2009/02/23/a-new-build-of-oabinteg-has-been-posted-to-the-web.aspx</link><pubDate>Mon, 23 Feb 2009 23:58:46 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:9441764</guid><dc:creator>dgoldman</dc:creator><slash:comments>2</slash:comments><comments>http://blogs.msdn.com/dgoldman/comments/9441764.aspx</comments><wfw:commentRss>http://blogs.msdn.com/dgoldman/commentrss.aspx?PostID=9441764</wfw:commentRss><wfw:comment>http://blogs.msdn.com/dgoldman/rsscomments.aspx?PostID=9441764</wfw:comment><description>&lt;p&gt;I complied a new build of OABInteg that has a fix for a problem when someone runs the tool with an LDAP test and the customer has DN’s that exceed 64 characters. The following error returned is: ERROR_DS_REFERRAL.&lt;/p&gt;  &lt;p&gt;Command line arguments: OABInteg /s:dc01 /t:oaltest /v:2 /l&lt;/p&gt;  &lt;p&gt;Program started at: 12:40:26 PM&lt;/p&gt;  &lt;p&gt;Running OABInteg on: OABServer1\Administrator&lt;/p&gt;  &lt;p&gt;Trying to connect to: GC://dc01.company.com object found: Hosting&lt;/p&gt;  &lt;p&gt;Checking to see if OABInteg is running on an Exchange Server&lt;/p&gt;  &lt;p&gt;Checking version of Exchange Server&lt;/p&gt;  &lt;p&gt;Exchange 2003 Version: 6.5.6944.00&lt;/p&gt;  &lt;p&gt;Exchange 2003 Service Pack Version: 6.5.7638.2.&lt;/p&gt;  &lt;p&gt;&lt;font color="#ff0000"&gt;Failure: ADsOpenObject&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;font color="#ff0000"&gt;ADSI Error: hr = 0x8007202b - LDAP_REFERRAL - ERROR_DS_REFERRAL: Cannot resolve referral.&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;font color="#ff0000"&gt;Function: OfflineAddressListTest&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;font color="#ff0000"&gt;Line number: 646&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;font color="#ff0000"&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;font color="#000000"&gt;The new build has been posted to &lt;a title="http://code.msdn.microsoft.com/oabinteg/Release/ProjectReleases.aspx?ReleaseId=726" href="http://code.msdn.microsoft.com/oabinteg/Release/ProjectReleases.aspx?ReleaseId=726"&gt;http://code.msdn.microsoft.com/oabinteg/Release/ProjectReleases.aspx?ReleaseId=726&lt;/a&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;font color="#000000"&gt;Dave&lt;/font&gt;&lt;/p&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9441764" width="1" height="1"&gt;</description></item><item><title>The OAB Generation process fails to generate an OAB with error MAPI_E_FAILONEPROVIDER</title><link>http://blogs.msdn.com/dgoldman/archive/2009/02/04/the-oab-generation-process-fails-to-generate-an-oab-with-error-mapi-e-failoneprovider.aspx</link><pubDate>Wed, 04 Feb 2009 19:07:25 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:9396022</guid><dc:creator>dgoldman</dc:creator><slash:comments>2</slash:comments><comments>http://blogs.msdn.com/dgoldman/comments/9396022.aspx</comments><wfw:commentRss>http://blogs.msdn.com/dgoldman/commentrss.aspx?PostID=9396022</wfw:commentRss><wfw:comment>http://blogs.msdn.com/dgoldman/rsscomments.aspx?PostID=9396022</wfw:comment><description>&lt;p&gt;I just finished troubleshooting an error where we were generating multiple OAB's on a server &lt;b&gt;with 6&lt;/b&gt; OAB's and &lt;b&gt;one of them&lt;/b&gt; would always fail &lt;b&gt;with error Event 9175 (MSExchangeSA)&lt;/b&gt;. I want to provide a small tidbit on how the system attendant obtains it's connection objects. &lt;p&gt;Here is a little information on the connection logic. &lt;ol&gt; &lt;li&gt;When the system attendant starts up it will attempt to make a connection to the information store so it can get a session object. &lt;/li&gt; &lt;li&gt;This session object is for the public folder store that this system attendant is associated with. This session object will be used for connecting to the public folder store when we need to access it for OAB, Free/Busy, etc.&lt;/li&gt; &lt;li&gt;Each time we need to connect to the information store we use the same session object and we will log the information about how many times we connect and how long they take to connect.&lt;/li&gt;&lt;/ol&gt; &lt;p&gt;Now I needed to figure out why only the last one would fail. Through creating debug builds of store and system attendant so I could output maximum logging that was relevant to the problem I was able to obtain some information. Looking at the traces I could see that we would always return error&lt;b&gt;&lt;s&gt;:&lt;/s&gt;&lt;/b&gt; 0x478. &lt;p&gt;Dumping out this error I can see that we get ecWrongServer. &lt;p&gt;C:\err 0x478&lt;br&gt;# for hex 0x478 / decimal 1144&lt;br&gt;&amp;nbsp; ecWrongServer&amp;nbsp;&amp;nbsp; ec.h&lt;br&gt;# 1 matches found for "0x478" &lt;p&gt;Now the question is why are we returning ecWrongServer. The information store has logic built in to it where we get redirected to another information store we will detect this change and try to connect where we are connecting too. This can happen for multiple reasons, for one too many connections in a short time. The system attendant will connect to the information store via the RPC interface and call the following function emsmdb!CNCT::EcForceRpc&lt;b&gt;()&lt;/b&gt;. Through debugging I was able to see that we always got a return value of [0x47f = ECSERVERPAUSE]. &lt;p&gt;Through code review I was able to see that when a client connects to a server it isn't configured for we will get an error code of ecWrongServer. This error code tells us that this is the wrong server and we will do a query to&amp;nbsp; determine the correct server. Once we have this information we give the client the correct server to connect too so we can attempt to connect again. In certain situations this could lead to a looping connection condition and cause RPC problems. To correct this behavior we added some logic we that keeps track of how many ecWrongServer errors have been sent to a particular client. &lt;p&gt;In addition to this if a client tries to make RPC calls more than 5 times under 10 seconds we will automatically return the error code of ecServerPaused error. This error will bubble back up the stack and be mapped back to the following error code: MAPI_E_FAILONEPROVIDER(0x8004011d). In this case these observations show that there is nothing wrong with the OAB itself and has to do with too many connection attempts. &lt;p&gt;One solution to this problem is to stagger your OAB's so they are built at different times so we do not hit this logic, which is&amp;nbsp; a safety mechanism to protect the store from RPC DOS type attacks (ligitement or not). &lt;p&gt;Dave&lt;/p&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9396022" width="1" height="1"&gt;</description></item><item><title>How to set the msExchQueryBaseDN attribute for users via powershell</title><link>http://blogs.msdn.com/dgoldman/archive/2009/01/08/how-to-set-the-msexchquerybasedn-via-powershell.aspx</link><pubDate>Thu, 08 Jan 2009 20:15:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:9299066</guid><dc:creator>dgoldman</dc:creator><slash:comments>2</slash:comments><comments>http://blogs.msdn.com/dgoldman/comments/9299066.aspx</comments><wfw:commentRss>http://blogs.msdn.com/dgoldman/commentrss.aspx?PostID=9299066</wfw:commentRss><wfw:comment>http://blogs.msdn.com/dgoldman/rsscomments.aspx?PostID=9299066</wfw:comment><description>&lt;P&gt;I was working in the lab today trying to debug a reproduction of an OWA hosting issue and I had the need to set the msExchQueryBaseDN for 10,000 users. Typically you can use Poweshell with the get-user | set-user commands to access mailbox properties for stamping purposes, however the msExchQueryBaseDN attribute is a user based attribute. Here are two ways you can do it:&lt;/P&gt;
&lt;P&gt;&lt;U&gt;&lt;STRONG&gt;How to set an attribute for one user via powershell &lt;BR&gt;&lt;/STRONG&gt;&lt;/U&gt;$user = ([ADSI]"LDAP://OU=MyOU,DC=Company,DC=com").psbase;&lt;BR&gt;$user.Properties["msExchQueryBaseDN"].Value = "CN=User,OU=MyOU,DC=Company,DC=com";&lt;BR&gt;$user.CommitChanges(); &lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;&lt;U&gt;How to set an attributes for a group of users in an OU via Powershell&lt;/U&gt;&lt;/STRONG&gt;&lt;BR&gt;get-mailbox userName* -resultsize unlimited | Foreach { $dn = "LDAP://" + $_.distinguishedname;$obj = [ADSI]$dn;$obj.msExchQueryBaseDN = "OU=YourOU,DC=company,DC=com";$obj.setinfo()} 
&lt;P&gt;This little bad boy stamped 10,000 users in less than 2 minutes. 
&lt;P&gt;Dave&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9299066" width="1" height="1"&gt;</description></item><item><title>OAB, Exchange Replication Service and the fix for OAB Generation failing on CCR and SCC clusters</title><link>http://blogs.msdn.com/dgoldman/archive/2008/12/23/oab-exchange-replication-service-and-the-fix-for-oab-generation-failing-on-ccr-and-scc-clusters.aspx</link><pubDate>Tue, 23 Dec 2008 22:06:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:9250648</guid><dc:creator>dgoldman</dc:creator><slash:comments>0</slash:comments><comments>http://blogs.msdn.com/dgoldman/comments/9250648.aspx</comments><wfw:commentRss>http://blogs.msdn.com/dgoldman/commentrss.aspx?PostID=9250648</wfw:commentRss><wfw:comment>http://blogs.msdn.com/dgoldman/rsscomments.aspx?PostID=9250648</wfw:comment><description>&lt;P&gt;Back on Thursday, December 11, 2008 i published a blog that contained information on the fix for OAB Generation failing on CCR and SCC clusters. This went in to detail as to what the problem was for both cluster types. Tim McMichael who is our Exchange Cluster guru has written a very indepth detailed blog on how the Exchange Replication Service (Exchange 2007 SP1) and Windows 2008 Clusters works. If you have time please take a look at his blog:&amp;nbsp;&lt;A href="http://blogs.technet.com/timmcmic/archive/2008/12/23/exchange-replication-service-exchange-2007-sp1-and-windows-2008-clusters.aspx"&gt;http://blogs.technet.com/timmcmic/archive/2008/12/23/exchange-replication-service-exchange-2007-sp1-and-windows-2008-clusters.aspx&lt;/A&gt;&lt;/P&gt;
&lt;P&gt;Dave&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9250648" width="1" height="1"&gt;</description></item><item><title>Exchange 2007 OAB Generation fails with the following errors: 9369, 9328 and 9328</title><link>http://blogs.msdn.com/dgoldman/archive/2008/12/17/exchange-2007-oab-generation-fails-with-the-following-errors-9369-9328-and.aspx</link><pubDate>Thu, 18 Dec 2008 00:18:38 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:9231717</guid><dc:creator>dgoldman</dc:creator><slash:comments>4</slash:comments><comments>http://blogs.msdn.com/dgoldman/comments/9231717.aspx</comments><wfw:commentRss>http://blogs.msdn.com/dgoldman/commentrss.aspx?PostID=9231717</wfw:commentRss><wfw:comment>http://blogs.msdn.com/dgoldman/rsscomments.aspx?PostID=9231717</wfw:comment><description>&lt;p&gt;I recently fixed an issue where the Default Offline Address List was on Exchange 2003, deleted and then recreated in Exchange 2007. In Exchange 2003 all Address lists create links in the active directory and in the public folder information stores under the System Folders | OFFLINE ADDRESS BOOK | /o=Organization/cn=addrlists/cn=oabs/cn=Default Offline Address List. &lt;/p&gt;  &lt;p&gt;When you delete an address list what you are doing is removing all references from that address list and the following things will happen:&lt;/p&gt;  &lt;ol&gt;   &lt;li&gt;The address list association on the private mailbox stores will be removed. This is the msExchUseOAB attribute that is stamped on the mailbox object. If this becomes blank clients will fail to download the OAB and receive the following error: 0X8004010F. &lt;/li&gt;    &lt;li&gt;If you have a public folder store references to that OAB in the PF store might or might not get cleaned up based on how you have your mixed organization configured.&lt;/li&gt;    &lt;li&gt;When you try to generate your newly created OAB, the OAB generation will fail with the following errors:&lt;/li&gt; &lt;/ol&gt;  &lt;p&gt;Event Type:&amp;#160;&amp;#160;&amp;#160; Error   &lt;br /&gt;Event Source:&amp;#160;&amp;#160;&amp;#160; MSExchangeSA    &lt;br /&gt;Event Category:&amp;#160;&amp;#160;&amp;#160; OAL Generator     &lt;br /&gt;Event ID:&amp;#160;&amp;#160;&amp;#160; 9369    &lt;br /&gt;Date:&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; 12/17/2008    &lt;br /&gt;Time:&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; 12:03:00 PM    &lt;br /&gt;User:&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; N/A    &lt;br /&gt;Computer:&amp;#160;&amp;#160;&amp;#160; OABGen    &lt;br /&gt;Description:    &lt;br /&gt;OALGen encountered an error while publishing the OAB files to the distribution point 'Default Offline Address List'. Check other logged events to see more information about the problem. - Default Offline Address List &lt;/p&gt;  &lt;p&gt;For more information, see Help and Support Center at &lt;a href="http://go.microsoft.com/fwlink/events.asp"&gt;http://go.microsoft.com/fwlink/events.asp&lt;/a&gt;. &lt;/p&gt;  &lt;p&gt;Event Type:&amp;#160;&amp;#160;&amp;#160; Error   &lt;br /&gt;Event Source:&amp;#160;&amp;#160;&amp;#160; MSExchangeSA    &lt;br /&gt;Event Category:&amp;#160;&amp;#160;&amp;#160; OAL Generator     &lt;br /&gt;Event ID:&amp;#160;&amp;#160;&amp;#160; 9328    &lt;br /&gt;Date:&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; 12/17/2008    &lt;br /&gt;Time:&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; 12:03:00 PM    &lt;br /&gt;User:&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; N/A    &lt;br /&gt;Computer:&amp;#160;&amp;#160;&amp;#160; OABGen    &lt;br /&gt;Description:    &lt;br /&gt;OALGen encountered file error ffffffff (internal ID 505026d) while generating the offline address list for address list '\Global Address List'.&amp;#160; Make sure there is enough disk space available. - Default Offline Address List &lt;/p&gt;  &lt;p&gt;For more information, see Help and Support Center at &lt;a href="http://go.microsoft.com/fwlink/events.asp"&gt;http://go.microsoft.com/fwlink/events.asp&lt;/a&gt;. &lt;/p&gt;  &lt;p&gt;Event Type:&amp;#160;&amp;#160;&amp;#160; Error   &lt;br /&gt;Event Source:&amp;#160;&amp;#160;&amp;#160; MSExchangeSA    &lt;br /&gt;Event Category:&amp;#160;&amp;#160;&amp;#160; OAL Generator     &lt;br /&gt;Event ID:&amp;#160;&amp;#160;&amp;#160; 9328    &lt;br /&gt;Date:&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; 12/17/2008    &lt;br /&gt;Time:&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; 12:03:00 PM    &lt;br /&gt;User:&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; N/A    &lt;br /&gt;Computer:&amp;#160;&amp;#160;&amp;#160; OABGen    &lt;br /&gt;Description:    &lt;br /&gt;OALGen encountered file error ffffffff (internal ID 5050236) while generating the offline address list for address list '\Global Address List'.&amp;#160; Make sure there is enough disk space available. - Default Offline Address List &lt;/p&gt;  &lt;p&gt;For more information, see Help and Support Center at http://go.microsoft.com/fwlink/events.asp.&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;&lt;u&gt;The Problem&lt;/u&gt;&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;When you recreate that address list we are re-establishing the links to the objects that were previously deleted. When you try to rebuild the address list you can actually see in the application log that we make a connection to the public folder store even know the newly created address list has only be configured for Web Distribution:&lt;/p&gt;  &lt;p&gt;Event Type:&amp;#160;&amp;#160;&amp;#160; Information   &lt;br /&gt;Event Source:&amp;#160;&amp;#160;&amp;#160; MSExchangeSA    &lt;br /&gt;Event Category:&amp;#160;&amp;#160;&amp;#160; OAL Generator     &lt;br /&gt;Event ID:&amp;#160;&amp;#160;&amp;#160; 9134    &lt;br /&gt;Date:&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; 12/17/2008    &lt;br /&gt;Time:&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; 12:26:38 PM    &lt;br /&gt;User:&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; N/A    &lt;br /&gt;Computer:&amp;#160;&amp;#160;&amp;#160; OABGen    &lt;br /&gt;Description:    &lt;br /&gt;OALGen successfully created or opened the sub folder 'OAB Version 4' under the offline address list folder '/o=Organization/cn=addrlists/cn=oabs/cn=Default Offline Address List'.     &lt;br /&gt;- Default Offline Address List &lt;/p&gt;  &lt;p&gt;From here we will try to create our distribution point, however we will fail because the old OAB was never configured this way.&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;&lt;u&gt;How to fix&lt;/u&gt;&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;1. Create your new Offline Address List (the one that is failing).&lt;/p&gt;  &lt;p&gt;2. Only configure it for 'Public Folder Distribution'.&lt;/p&gt;  &lt;p&gt;3. Rebuild your Offline Address List - you should see this complete with a 9107 event.&lt;/p&gt;  &lt;p&gt;4. Go back and reconfigure your OAB for 'Web Distribution'.&lt;/p&gt;  &lt;p&gt;5. Rebuild your Offline Address List - you should see this complete with a 9107 event.&lt;/p&gt;  &lt;p&gt;6. Check your (CAS) Client Access Server for the 'General' 1008 event to make sure that the OAB files were copied over.&lt;/p&gt;  &lt;p&gt;and that is it!&lt;/p&gt;  &lt;p&gt;Dave&lt;/p&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9231717" width="1" height="1"&gt;</description></item></channel></rss>