<?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>Esoteric</title><link>http://blogs.msdn.com/b/arvindsh/</link><description>All esoteric things about SQL Server and Microsoft Developer Tools</description><dc:language>en</dc:language><generator>Telligent Community 5.6.583.19431 (Build: 5.6.583.19431)</generator><item><title>MDX Studio Quick Tips</title><link>http://blogs.msdn.com/b/arvindsh/archive/2011/11/24/mdx-studio-quick-tips.aspx</link><pubDate>Thu, 24 Nov 2011 11:26:18 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:10241264</guid><dc:creator>Arvindsh</dc:creator><slash:comments>0</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://blogs.msdn.com/b/arvindsh/rsscomments.aspx?WeblogPostID=10241264</wfw:commentRss><comments>http://blogs.msdn.com/b/arvindsh/archive/2011/11/24/mdx-studio-quick-tips.aspx#comments</comments><description>&lt;p&gt;Recently I had to use MDX Studio for some MDX query tuning. 2 quick tips:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;Latest download link for MDX Studio can be obtained from the support forum at &lt;a title="http://ssas-info.com/forum/3-mdx-studio/" href="http://ssas-info.com/forum/3-mdx-studio/"&gt;http://ssas-info.com/forum/3-mdx-studio/&lt;/a&gt;&lt;/li&gt;    &lt;li&gt;The earlier versions of MDX Studio are referenced from Mosha’s website at &lt;a title="http://www.mosha.com/msolap/mdxstudio.htm" href="http://www.mosha.com/msolap/mdxstudio.htm"&gt;http://www.mosha.com/msolap/mdxstudio.htm&lt;/a&gt;&lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;Also very quickly, if you are finding that the Perfmon section in MDX Studio shows 0 for most values such as ‘Cells calculated’ then try running the MDXStudio.exe with the ‘Run as Administrator’ option.&lt;/p&gt;  &lt;p&gt;Also take a look at Ashwani Roy’s SQL Bits session ‘Supercharge MDX performance using MDX Studio’ which is available from &lt;a title="https://www.sqlbits.com/Sessions/Event6/supercharge_mdx_performance_using_mdx_studio" href="https://www.sqlbits.com/Sessions/Event6/supercharge_mdx_performance_using_mdx_studio"&gt;https://www.sqlbits.com/Sessions/Event6/supercharge_mdx_performance_using_mdx_studio&lt;/a&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10241264" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/b/arvindsh/archive/tags/Analysis+Services/">Analysis Services</category></item><item><title>TEMENOS T24 Core Banking Optimized on Microsoft SQL Server Database Platform</title><link>http://blogs.msdn.com/b/arvindsh/archive/2011/11/02/temenos-t24-core-banking-optimized-on-microsoft-sql-server-database-platform.aspx</link><pubDate>Wed, 02 Nov 2011 16:25:27 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:10232539</guid><dc:creator>Arvindsh</dc:creator><slash:comments>0</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://blogs.msdn.com/b/arvindsh/rsscomments.aspx?WeblogPostID=10232539</wfw:commentRss><comments>http://blogs.msdn.com/b/arvindsh/archive/2011/11/02/temenos-t24-core-banking-optimized-on-microsoft-sql-server-database-platform.aspx#comments</comments><description>&lt;p&gt;I found these links today in response to a customer question around 'real world' benchmarks for financial applications running on SQL Server. These benchmarks describe the TEMENOS T24 Core Banking system, which is probably as 'real world' as it gets.&lt;/p&gt;
&lt;p&gt;&lt;a href="http://blogs.technet.com/cfs-file.ashx/__key/CommunityServer-Blogs-Components-WeblogFiles/00-00-00-85-48-Files/4617.Benchmark-Results-for-Temenos-T24--with-SQL-Server-2008-R2-on-Intel_2D00_based-NEC-Servers.pdf"&gt;http://blogs.technet.com/cfs-file.ashx/__key/CommunityServer-Blogs-Components-WeblogFiles/00-00-00-85-48-Files/4617.Benchmark-Results-for-Temenos-T24--with-SQL-Server-2008-R2-on-Intel_2D00_based-NEC-Servers.pdf&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;a href="http://download.microsoft.com/download/B/2/3/B23E0B02-AA00-4921-8A76-B4384B6197DD/sql-temenos-t24.pdf"&gt;http://download.microsoft.com/download/B/2/3/B23E0B02-AA00-4921-8A76-B4384B6197DD/sql-temenos-t24.pdf&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10232539" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/b/arvindsh/archive/tags/SQL+Performance/">SQL Performance</category></item><item><title>Parallel Data Warehouse resources</title><link>http://blogs.msdn.com/b/arvindsh/archive/2011/04/28/parallel-data-warehouse-resources.aspx</link><pubDate>Thu, 28 Apr 2011 06:23:33 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:10158957</guid><dc:creator>Arvindsh</dc:creator><slash:comments>2</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://blogs.msdn.com/b/arvindsh/rsscomments.aspx?WeblogPostID=10158957</wfw:commentRss><comments>http://blogs.msdn.com/b/arvindsh/archive/2011/04/28/parallel-data-warehouse-resources.aspx#comments</comments><description>&lt;p&gt;I’ve recently started learning about SQL Server Parallel Data Warehouse (PDW) appliance. In the course of learning, I came across some links and resources in connection with this appliance, which I will share in this blog post. I will keep it updated as much as possible.&lt;/p&gt;  &lt;p&gt;Learning resources:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;Start your learning by looking at the collateral from &lt;a title="http://www.microsoft.com/sqlserver/en/us/solutions-technologies/data-warehousing/pdw.aspx" href="http://www.microsoft.com/sqlserver/en/us/solutions-technologies/data-warehousing/pdw.aspx"&gt;http://www.microsoft.com/sqlserver/en/us/solutions-technologies/data-warehousing/pdw.aspx&lt;/a&gt;&lt;/li&gt;    &lt;li&gt;Free e-Learning clinic ‘Clinic 10333: Introduction to Microsoft SQL Server 2008 R2 Parallel Data Warehouse’: &lt;a title="https://www.microsoftelearning.com/eLearning/courseDetail.aspx?courseId=187496&amp;amp;tab=overview" href="https://www.microsoftelearning.com/eLearning/courseDetail.aspx?courseId=187496&amp;amp;tab=overview"&gt;https://www.microsoftelearning.com/eLearning/courseDetail.aspx?courseId=187496&amp;amp;tab=overview&lt;/a&gt;&lt;/li&gt;    &lt;li&gt;SQL PDW blog from our Microsoft PFEs working on PDW: &lt;a title="http://www.sqlpdw.com/" href="http://www.sqlpdw.com/"&gt;http://www.sqlpdw.com/&lt;/a&gt;&lt;/li&gt;    &lt;li&gt;Matt Peebles’ excellent deep-dive talk about PDW at TechEd: &lt;a title="http://www.msteched.com/2010/NorthAmerica/BIE309" href="http://www.msteched.com/2010/NorthAmerica/BIE309"&gt;http://www.msteched.com/2010/NorthAmerica/BIE309&lt;/a&gt;&lt;/li&gt;    &lt;li&gt;Jeff Spiller on PDW and FastTrack best practices: &lt;a title="http://www.msteched.com/2010/NorthAmerica/BIE306" href="http://www.msteched.com/2010/NorthAmerica/BIE306"&gt;http://www.msteched.com/2010/NorthAmerica/BIE306&lt;/a&gt;&lt;/li&gt;    &lt;li&gt;Microsoft IT sharing their experience about a 90TB PDW implementation: &lt;a title="http://technet.microsoft.com/en-us/library/gg447063.aspx" href="http://technet.microsoft.com/en-us/library/gg447063.aspx"&gt;http://technet.microsoft.com/en-us/library/gg447063.aspx&lt;/a&gt; and &lt;a title="http://technet.microsoft.com/en-us/edge/deploying-sql-server-2008-r2-parallel-data-warehouse-at-microsoft.aspx" href="http://technet.microsoft.com/en-us/edge/deploying-sql-server-2008-r2-parallel-data-warehouse-at-microsoft.aspx"&gt;http://technet.microsoft.com/en-us/edge/deploying-sql-server-2008-r2-parallel-data-warehouse-at-microsoft.aspx&lt;/a&gt;&lt;/li&gt;    &lt;li&gt;Fairly detailed spec on what constitutes HP’s PDW implementation: &lt;a title="http://h18004.www1.hp.com/products/quickspecs/13830_na/13830_na.pdf" href="http://h18004.www1.hp.com/products/quickspecs/13830_na/13830_na.pdf"&gt;http://h18004.www1.hp.com/products/quickspecs/13830_na/13830_na.pdf&lt;/a&gt; and &lt;a title="http://h18004.www1.hp.com/products/quickspecs/13830_na/13830_na.html" href="http://h18004.www1.hp.com/products/quickspecs/13830_na/13830_na.html"&gt;http://h18004.www1.hp.com/products/quickspecs/13830_na/13830_na.html&lt;/a&gt;&lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;Community blog posts:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;My friend Shailendra has blogged about the positioning of PDW and FastTrack: &lt;a title="http://www.abhyast.com/abhyastcom/post/SQL-Server-Fast-Track-vs-Parallel-Data-Warehouse-(PDW).aspx" href="http://www.abhyast.com/abhyastcom/post/SQL-Server-Fast-Track-vs-Parallel-Data-Warehouse-(PDW).aspx"&gt;http://www.abhyast.com/abhyastcom/post/SQL-Server-Fast-Track-vs-Parallel-Data-Warehouse-(PDW).aspx&lt;/a&gt;&lt;/li&gt;    &lt;li&gt;Adam Jorgensen’s post: &lt;a title="http://adamjorgensen.wordpress.com/2010/07/29/in-depth-parallel-data-warehousing-pdw/" href="http://adamjorgensen.wordpress.com/2010/07/29/in-depth-parallel-data-warehousing-pdw/"&gt;http://adamjorgensen.wordpress.com/2010/07/29/in-depth-parallel-data-warehousing-pdw/&lt;/a&gt;&lt;/li&gt;    &lt;li&gt;Richard Waymire’s blog is useful: &lt;a title="http://www.richardwaymire.com/wordpress/" href="http://www.richardwaymire.com/wordpress/"&gt;http://www.richardwaymire.com/wordpress/&lt;/a&gt;&lt;/li&gt;    &lt;li&gt;Joe Chang has a fairly detailed post: &lt;a title="http://sqlblog.com/blogs/joe_chang/archive/2011/03/10/parallel-data-warehouse.aspx" href="http://sqlblog.com/blogs/joe_chang/archive/2011/03/10/parallel-data-warehouse.aspx"&gt;http://sqlblog.com/blogs/joe_chang/archive/2011/03/10/parallel-data-warehouse.aspx&lt;/a&gt;&lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;I will continue to gather links and post them here as I come across them. In the meantime, I hope the above help you!&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10158957" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/b/arvindsh/archive/tags/PDW/">PDW</category></item><item><title>SQLDiag Configuration Tool released</title><link>http://blogs.msdn.com/b/arvindsh/archive/2011/04/28/sqldiag-configuration-tool-released.aspx</link><pubDate>Thu, 28 Apr 2011 04:27:36 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:10158936</guid><dc:creator>Arvindsh</dc:creator><slash:comments>0</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://blogs.msdn.com/b/arvindsh/rsscomments.aspx?WeblogPostID=10158936</wfw:commentRss><comments>http://blogs.msdn.com/b/arvindsh/archive/2011/04/28/sqldiag-configuration-tool-released.aspx#comments</comments><description>&lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;My colleague and friend, boB Taylor (the spelling is not a typo – please visit &lt;a href="http://www.opsvault.com/meet-our-contributors"&gt;http://www.opsvault.com/meet-our-contributors&lt;/a&gt; and see why) has recently released a GUI tool which allows you to configure the XML files required for SQLDiag to capture specific types of events, counters etc.) &lt;/p&gt;  &lt;p&gt;Download it from &lt;a href="http://sdct.codeplex.com"&gt;http://sdct.codeplex.com&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Please review, test, blog about it and provide feedback as you see fit.&lt;/p&gt;  &lt;p&gt;bOB blogs at OpsVault. His posts can be easily retrieved from &lt;a href="http://www.opsvault.com/author/bobtay/"&gt;http://www.opsvault.com/author/bobtay/&lt;/a&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10158936" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/b/arvindsh/archive/tags/SQL+Performance/">SQL Performance</category></item><item><title>OPTION(RECOMPILE) redux (a.k.a. Parameter Embedding Optimization not working)</title><link>http://blogs.msdn.com/b/arvindsh/archive/2011/02/15/option-recompile-redux-a-k-a-parameter-embedding-optimization-not-working.aspx</link><pubDate>Tue, 15 Feb 2011 09:21:06 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:10129453</guid><dc:creator>Arvindsh</dc:creator><slash:comments>0</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://blogs.msdn.com/b/arvindsh/rsscomments.aspx?WeblogPostID=10129453</wfw:commentRss><comments>http://blogs.msdn.com/b/arvindsh/archive/2011/02/15/option-recompile-redux-a-k-a-parameter-embedding-optimization-not-working.aspx#comments</comments><description>&lt;p&gt;A long time ago, I had &lt;a href="http://blogs.msdn.com/b/arvindsh/archive/2008/12/19/t-sql-anti-pattern-of-the-day-all-in-one-queries.aspx"&gt;blogged about the perils&lt;/a&gt; of ‘wildcard’ query patterns. As a response to one of the comments in that post, I learnt about a new optimization introduced in SQL 2008 wherein the OPTION (RECOMPILE) hint would help in these kind of cases. Ever since then, I had used this in some customers; but recently, I found that on SQL 2008 R2 and even in SQL 2008 SP1, the behavior was not working correctly.&lt;/p&gt;  &lt;p&gt;Recently, I found the reason for this issue from some other sites, and I also found the official name for this enhancement: Parameter Embedding Optimization. It turns out that, based on some bug reports, this optimization was disabled starting in SQL 2008 CU4 (and also disabled in SQL 2008 R2 RTM). The fixes for the issue are in SQL 2008 SP1 CU5 and SQL 2008 R2 CU5 respectively.&lt;/p&gt;  &lt;p&gt;Here are the links which cover the details, and I hope they help you!&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;&lt;a href="http://blogs.msdn.com/b/grahamk/archive/2009/11/18/changed-behaviour-of-option-recompile-syntax-in-sql-server-2008-sp1-cumulative-update-5.aspx"&gt;http://blogs.msdn.com/b/grahamk/archive/2009/11/18/changed-behaviour-of-option-recompile-syntax-in-sql-server-2008-sp1-cumulative-update-5.aspx&lt;/a&gt;&lt;/li&gt;    &lt;li&gt;&lt;a href="http://support.microsoft.com/kb/976603/"&gt;http://support.microsoft.com/kb/976603/&lt;/a&gt; (FIX: Different results may be returned when you concurrently run the same query with the RECOMPILE option in SQL Server 2008)&lt;/li&gt;    &lt;li&gt;&lt;a href="http://www.sommarskog.se/dyn-search-2005.html"&gt;http://www.sommarskog.se/dyn-search-2005.html&lt;/a&gt;&lt;/li&gt; &lt;/ul&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10129453" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/b/arvindsh/archive/tags/SQL+Performance/">SQL Performance</category></item><item><title>window.open without address bar</title><link>http://blogs.msdn.com/b/arvindsh/archive/2011/02/09/window-open-without-address-bar.aspx</link><pubDate>Wed, 09 Feb 2011 06:36:23 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:10126613</guid><dc:creator>Arvindsh</dc:creator><slash:comments>1</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://blogs.msdn.com/b/arvindsh/rsscomments.aspx?WeblogPostID=10126613</wfw:commentRss><comments>http://blogs.msdn.com/b/arvindsh/archive/2011/02/09/window-open-without-address-bar.aspx#comments</comments><description>&lt;p&gt;Recently we were struggling with trying to figure out how to suppress the address bar for a popup window opened using JavaScript’s window.open method. Normally, there is an option there which allows you to specify ‘location=no’ and the address bar is expected to be hidden. However, no matter what we tried, this did not work for us.&lt;/p&gt;  &lt;p&gt;Later on I chanced upon an Internet Explorer setting which actually controls the final display. There is a security setting ‘Allow websites to open windows without address or status bar’:&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/CommunityServer-Blogs-Components-WeblogFiles/00-00-00-64-64-metablogapi/2555.image_5F00_72738B03.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; margin: ; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://blogs.msdn.com/cfs-file.ashx/__key/CommunityServer-Blogs-Components-WeblogFiles/00-00-00-64-64-metablogapi/8400.image_5F00_thumb_5F00_2B7A4239.png" width="244" height="220" /&gt;&lt;/a&gt;&lt;/p&gt;    &lt;p&gt;This setting needs to be set to ‘Enable’ for the respective zone (such as Trusted sites etc.) for the address bar display to be suppressed.&lt;/p&gt;  &lt;p&gt;Hope this hint helps!&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10126613" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/b/arvindsh/archive/tags/Miscellaneous/">Miscellaneous</category></item><item><title>LinkedIn Group for Premier Field Engineering India</title><link>http://blogs.msdn.com/b/arvindsh/archive/2011/02/01/linkedin-group-for-premier-field-engineering-india.aspx</link><pubDate>Tue, 01 Feb 2011 04:15:40 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:10122925</guid><dc:creator>Arvindsh</dc:creator><slash:comments>0</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://blogs.msdn.com/b/arvindsh/rsscomments.aspx?WeblogPostID=10122925</wfw:commentRss><comments>http://blogs.msdn.com/b/arvindsh/archive/2011/02/01/linkedin-group-for-premier-field-engineering-india.aspx#comments</comments><description>&lt;p&gt;My team, Premier Field Engineering (India) recently created a group on LinkedIn (&lt;a title="http://www.linkedin.com/groups?gid=3761475&amp;amp;trk=hb_side_g" href="http://www.linkedin.com/groups?gid=3761475&amp;amp;trk=hb_side_g"&gt;http://www.linkedin.com/groups?gid=3761475&amp;amp;trk=hb_side_g&lt;/a&gt;) which we will use to share our experiences, upcoming offerings, career opportunities and more. Membership is open to all, so I welcome you to take this opportunity to connect with us!&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10122925" width="1" height="1"&gt;</description></item><item><title>DB Mirroring Tips</title><link>http://blogs.msdn.com/b/arvindsh/archive/2010/12/22/db-mirroring-tips.aspx</link><pubDate>Wed, 22 Dec 2010 04:45:35 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:10107964</guid><dc:creator>Arvindsh</dc:creator><slash:comments>0</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://blogs.msdn.com/b/arvindsh/rsscomments.aspx?WeblogPostID=10107964</wfw:commentRss><comments>http://blogs.msdn.com/b/arvindsh/archive/2010/12/22/db-mirroring-tips.aspx#comments</comments><description>&lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;Here are some essential things to consider when trying to tune a DB mirroring setup. They revolve round the following concepts:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;The effect of Virtual Log Files (VLFs) on recovery and therefore failover times&lt;/li&gt;    &lt;li&gt;The interplay (or lack thereof) between mirroring and some other SQL Server engine features&lt;/li&gt;    &lt;li&gt;Network speed and issues&lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;ol&gt;   &lt;li&gt;Be on the latest available Service Pack and Cumulative Update for SQL 2005 or 2008. There are many issues related to mirroring which are fixed in these updates. Some of the key ones which I have seen are given below.&lt;/li&gt;    &lt;/ol&gt;&lt;ul&gt;     &lt;li&gt;&lt;a title="http://support.microsoft.com/kb/947462/" href="http://support.microsoft.com/kb/947462/"&gt;http://support.microsoft.com/kb/947462/&lt;/a&gt; (FIX: Error message when you start a database mirroring session in SQL Server 2005: &amp;quot;Communications to the remote server instance 'TCP://&amp;lt;ComputerName&amp;gt;:&amp;lt;PortNumber&amp;gt;' failed before database mirroring was fully started&amp;quot;)&lt;/li&gt;      &lt;li&gt;&lt;a title="http://support.microsoft.com/kb/979042" href="http://support.microsoft.com/kb/979042"&gt;http://support.microsoft.com/kb/979042&lt;/a&gt; (FIX: The principal database is not recovered if the database has a large number of virtual log files in SQL Server 2005 or in SQL Server 2008)&lt;/li&gt;      &lt;li&gt;&lt;a href="http://support.microsoft.com/kb/978791"&gt;http://support.microsoft.com/kb/978791&lt;/a&gt; (FIX: Data loss may occur if the database mirroring thread stops responding for a long time during an automatic failover process in SQL Server 2005 or in SQL Server 2008)&lt;/li&gt;      &lt;li&gt;&lt;a href="http://support.microsoft.com/kb/982933"&gt;http://support.microsoft.com/kb/982933&lt;/a&gt; (Error message when you shrink data files on principal in a Database Mirroring for two SQL Server 2005 servers&lt;/li&gt;      &lt;li&gt;&lt;a href="http://support.microsoft.com/kb/983500/"&gt;http://support.microsoft.com/kb/983500&lt;/a&gt; (FIX: The role switch is delayed when a mirroring automatic failover occurs in SQL Server 2005)        &lt;br /&gt;        &lt;br /&gt;&lt;/li&gt;   &lt;/ul&gt;    &lt;ul&gt;&lt;li&gt;The remedial steps for this set of problems revolves round fixing the Virtual Log File Fragmentation issues, such as what is described by Kimberly Tripp. The relevant blog posts are:&lt;/li&gt;    &lt;/ul&gt;&lt;ul&gt;     &lt;li&gt;&lt;a title="http://www.sqlskills.com/blogs/kimberly/post/8-Steps-to-better-Transaction-Log-throughput.aspx" href="http://www.sqlskills.com/blogs/kimberly/post/8-Steps-to-better-Transaction-Log-throughput.aspx"&gt;http://www.sqlskills.com/blogs/kimberly/post/8-Steps-to-better-Transaction-Log-throughput.aspx&lt;/a&gt;&lt;/li&gt;      &lt;li&gt;&lt;a title="http://www.sqlskills.com/BLOGS/PAUL/post/Bug-log-file-growth-broken-for-multiples-of-4GB.aspx" href="http://www.sqlskills.com/BLOGS/PAUL/post/Bug-log-file-growth-broken-for-multiples-of-4GB.aspx"&gt;http://www.sqlskills.com/BLOGS/PAUL/post/Bug-log-file-growth-broken-for-multiples-of-4GB.aspx&lt;/a&gt;&lt;/li&gt;      &lt;li&gt;&lt;a title="http://www.sqlskills.com/BLOGS/KIMBERLY/post/Transaction-Log-VLFs-too-many-or-too-few.aspx" href="http://www.sqlskills.com/BLOGS/KIMBERLY/post/Transaction-Log-VLFs-too-many-or-too-few.aspx"&gt;http://www.sqlskills.com/BLOGS/KIMBERLY/post/Transaction-Log-VLFs-too-many-or-too-few.aspx&lt;/a&gt;        &lt;br /&gt;&lt;/li&gt;   &lt;/ul&gt;    &lt;ul&gt;&lt;li&gt;You should also be aware of the article in &lt;a title="http://support.microsoft.com/kb/937531" href="http://support.microsoft.com/kb/937531"&gt;http://support.microsoft.com/kb/937531&lt;/a&gt; (The shrink operation is not duplicated on the mirror database when you use database mirroring in SQL Server 2005)      &lt;br /&gt;&lt;/li&gt;    &lt;li&gt;If you are using MSDTC transactions with a database which is mirrored, please consider fact that it is not officially supported, as the below articles.&lt;/li&gt;    &lt;/ul&gt;&lt;ul&gt;     &lt;li&gt;&lt;a title="http://support.microsoft.com/kb/926150" href="http://support.microsoft.com/kb/926150"&gt;http://support.microsoft.com/kb/926150&lt;/a&gt; (Using database mirroring for cross-database transactions or distributed transactions is not supported in SQL Server)&lt;/li&gt;      &lt;li&gt;&lt;a title="http://support.microsoft.com/kb/977350" href="http://support.microsoft.com/kb/977350"&gt;http://support.microsoft.com/kb/977350&lt;/a&gt; (FIX: Assertion failures occur in SQL Server 2005 when a Distributed Transaction Coordinator (DTC) transaction is rolled back while that transaction is being commited by the DTC)&lt;/li&gt;   &lt;/ul&gt;    &lt;ul&gt;&lt;li&gt;For the networking side, the key things to consider are given below.&lt;/li&gt;    &lt;/ul&gt;&lt;ul&gt;     &lt;li&gt;Review the effect of network latency on mirroring throughput. This is described in the white paper at &lt;a title="http://technet.microsoft.com/en-us/library/cc917680.aspx" href="http://technet.microsoft.com/en-us/library/cc917680.aspx"&gt;http://technet.microsoft.com/en-us/library/cc917680.aspx&lt;/a&gt;&lt;/li&gt;      &lt;li&gt;If you are facing issues with mirroring being disconnected very frequently, especially under load, check if your NIC card device driver needs updating.&lt;/li&gt;      &lt;li&gt;In addition, review and if required, disable, the TCP Chimney feature in Windows 2003 SP2. More details can be found at &lt;a title="http://blogs.msdn.com/b/psssql/archive/2008/10/01/windows-scalable-networking-pack-possible-performance-and-concurrency-impacts-to-sql-server-workloads.aspx" href="http://blogs.msdn.com/b/psssql/archive/2008/10/01/windows-scalable-networking-pack-possible-performance-and-concurrency-impacts-to-sql-server-workloads.aspx"&gt;http://blogs.msdn.com/b/psssql/archive/2008/10/01/windows-scalable-networking-pack-possible-performance-and-concurrency-impacts-to-sql-server-workloads.aspx&lt;/a&gt;&lt;/li&gt;   &lt;/ul&gt;   &lt;p&gt;I will keep adding to this post as I receive additional information. In the meantime, I hope you stay informed and therefore hopefully avoid known issues with mirroring.&lt;/p&gt;  &lt;p&gt;If you like this post, please take a few seconds to leave a comment and do rate the post!&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10107964" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/b/arvindsh/archive/tags/SQL+High+Availability/">SQL High Availability</category></item><item><title>Licensing changes in SQL Server 2008 R2</title><link>http://blogs.msdn.com/b/arvindsh/archive/2010/09/07/licensing-changes-in-sql-server-2008-r2.aspx</link><pubDate>Tue, 07 Sep 2010 06:01:13 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:10058716</guid><dc:creator>Arvindsh</dc:creator><slash:comments>0</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://blogs.msdn.com/b/arvindsh/rsscomments.aspx?WeblogPostID=10058716</wfw:commentRss><comments>http://blogs.msdn.com/b/arvindsh/archive/2010/09/07/licensing-changes-in-sql-server-2008-r2.aspx#comments</comments><description>&lt;p&gt;In case you are not aware, there have been some significant licensing changes in the SQL 2008 R2 release, especially with the introduction of the DataCenter edition as the top-of-line edition. SQL Books Online documents the facts, as always, but sometimes it’s convenient to just understand what are the deltas. Towards this, I was made aware of the following article from Directions on Microsoft:&lt;/p&gt;  &lt;p&gt;&lt;a title="http://www.directionsonmicrosoft.com/samples/Licensing_SQL_Server_2008.pdf" href="http://www.directionsonmicrosoft.com/samples/Licensing_SQL_Server_2008.pdf"&gt;http://www.directionsonmicrosoft.com/samples/Licensing_SQL_Server_2008.pdf&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;This article contains a nice tabular summary of the facts. I found it useful, and I hope you do as well!&lt;/p&gt;  &lt;p&gt;Many thanks to the folks at &lt;a href="http://www.directionsonmicrosoft.com/" target="_blank"&gt;Directions on Microsoft&lt;/a&gt;.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10058716" width="1" height="1"&gt;</description></item><item><title>Be Aware: Training Resource</title><link>http://blogs.msdn.com/b/arvindsh/archive/2010/09/01/be-aware-training-resource.aspx</link><pubDate>Wed, 01 Sep 2010 08:58:14 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:10056712</guid><dc:creator>Arvindsh</dc:creator><slash:comments>0</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://blogs.msdn.com/b/arvindsh/rsscomments.aspx?WeblogPostID=10056712</wfw:commentRss><comments>http://blogs.msdn.com/b/arvindsh/archive/2010/09/01/be-aware-training-resource.aspx#comments</comments><description>&lt;p&gt;Recently, I was informed about some very useful resources (some free webcasts and information about SQL performance tuning related training) at &lt;a href="http://www.sqlworkshops.com"&gt;www.sqlworkshops.com&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;That initiative is headed by Ramesh Meyyappan, a former Microsoft employee who worked on the SQL Server Product team. I found Ramesh’s guidance insightful and refreshing. I would urge you to visit the site and decide for yourself.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10056712" width="1" height="1"&gt;</description></item><item><title>PowerGUI tip</title><link>http://blogs.msdn.com/b/arvindsh/archive/2010/08/02/powergui-tip.aspx</link><pubDate>Mon, 02 Aug 2010 08:13:26 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:10044814</guid><dc:creator>Arvindsh</dc:creator><slash:comments>0</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://blogs.msdn.com/b/arvindsh/rsscomments.aspx?WeblogPostID=10044814</wfw:commentRss><comments>http://blogs.msdn.com/b/arvindsh/archive/2010/08/02/powergui-tip.aspx#comments</comments><description>&lt;p&gt;I recently faced a situation where the free space on my laptop disk was suddenly depleted. After some searching, I found that PowerGUI keeps its scripteditor logs at “C:\Users\&amp;lt;username&amp;gt;\AppData\Local\Quest Software\PowerGUI\Logs”. If you use PowerGUI a lot, you might experience a slow but steady exhaustion of disk space due to seemingly orphaned log files in that folder.&lt;/p&gt;  &lt;p&gt;If you are like me, you may want to keep cleaning out this folder to keep space available.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10044814" width="1" height="1"&gt;</description></item><item><title>Reconstructing the SQL Server Best Practices Toolbox</title><link>http://blogs.msdn.com/b/arvindsh/archive/2010/06/26/reconstructing-the-sql-server-best-practices-toolbox.aspx</link><pubDate>Sat, 26 Jun 2010 17:55:40 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:10031054</guid><dc:creator>Arvindsh</dc:creator><slash:comments>0</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://blogs.msdn.com/b/arvindsh/rsscomments.aspx?WeblogPostID=10031054</wfw:commentRss><comments>http://blogs.msdn.com/b/arvindsh/archive/2010/06/26/reconstructing-the-sql-server-best-practices-toolbox.aspx#comments</comments><description>&lt;p&gt;Till some time ago, I used to direct my customers to &lt;a title="http://msdn.microsoft.com/en-us/sqlserver/bb671432.aspx" href="http://msdn.microsoft.com/en-us/sqlserver/bb671432.aspx"&gt;http://msdn.microsoft.com/en-us/sqlserver/bb671432.aspx&lt;/a&gt; for obtaining scripts which use the DMVs in SQL 2005/2008 to retrieve very commonly used performance troubleshooting related information. Those scripts were contributed by Microsoft’s &lt;a href="http://sqlcat.com/Default.aspx" target="_blank"&gt;SQL CAT team&lt;/a&gt;.&lt;/p&gt;  &lt;p&gt;Unfortunately that link no longer works correctly. Luckily though the scripts are still available at different places on Script Center, and here is quick compilation of those while the original link is fixed.&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;SQLOS / Execution Model&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;&lt;a title="List SQLOS Execution Model Information" href="http://gallery.technet.microsoft.com/ScriptCenter/en-us/b09304be-8337-41c3-9deb-6b6943e3bbcd"&gt;List SQLOS Execution Model Information&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;a title="List Runnable Queues" href="http://gallery.technet.microsoft.com/ScriptCenter/en-us/b8532ebf-23e6-4763-b15b-5d83198e7019"&gt;List Runnable Queues&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;a title="List Scheduler Wait List Information" href="http://gallery.technet.microsoft.com/ScriptCenter/en-us/87ec2560-d7dc-4a24-83dc-826fd0148453"&gt;List Scheduler Wait List Information&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Wait Statistics&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;&lt;a title="List Top Wait Types for a Workload" href="http://gallery.technet.microsoft.com/ScriptCenter/en-us/86886b7f-8f75-4052-99d1-ef8ebd910a88"&gt;List Top Wait Types for a Workload&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;a title="Retrieve Waitstat Snapshots" href="http://gallery.technet.microsoft.com/ScriptCenter/en-us/8c90bd2e-9def-4f44-bce4-e5dae4d86f71"&gt;Retrieve Waitstat Snapshots&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;a title="Compare Signal Waits and Resource Waits" href="http://gallery.technet.microsoft.com/ScriptCenter/en-us/dbb09e5b-c031-4a61-bbe5-6a17fa2a767e"&gt;Compare Signal Waits and Resource Waits&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;a title="List Statements from a Specified Waiter List" href="http://gallery.technet.microsoft.com/ScriptCenter/en-us/94836d5d-a79d-46a0-815a-ac4e87140338"&gt;List Statements from a Specified Waiter List&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Query Compilation&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;&lt;a title="Determine CPU Resources Required for Optimization" href="http://gallery.technet.microsoft.com/ScriptCenter/en-us/2218d0bd-d577-4be4-bdca-0df7e42bf002"&gt;Determine CPU Resources Required for Optimization&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;a title="List Recompiled Statements" href="http://gallery.technet.microsoft.com/ScriptCenter/en-us/9456cd4d-85bb-44b7-97d3-455e1a5343bb"&gt;List Recompiled Statements&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;a title="Compare Single-Use and Re-Used Plans" href="http://gallery.technet.microsoft.com/ScriptCenter/en-us/c27cc874-ed3a-4020-927e-73d22ef11c34"&gt;Compare Single-Use and Re-Used Plans&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Query Statistics&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;&lt;a title="Retrieve Statements with the Highest Plan Re-Use Counts" href="http://gallery.technet.microsoft.com/ScriptCenter/en-us/1d344de4-6128-48c6-900f-7729fd025b18"&gt;Retrieve Statements with the Highest Plan Re-Use Counts&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;a title="Retrieve Statements with the Lowest Plan Re-Use Counts" href="http://gallery.technet.microsoft.com/ScriptCenter/en-us/40fb29cb-2bd7-430b-867c-87613a227273"&gt;Retrieve Statements with the Lowest Plan Re-Use Counts&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;a title="List Statements with the Highest Execution Counts" href="http://gallery.technet.microsoft.com/ScriptCenter/en-us/58440d03-ce97-4a4d-8563-b24ec2498df9"&gt;List Statements with the Highest Execution Counts&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://gallery.technet.microsoft.com/ScriptCenter/en-us/f3a4dd6d-c521-4fc6-b047-bfad68f59556"&gt;List Statements By Input/Output Usage&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;a title="List Statements With the Highest Average CPU Time" href="http://gallery.technet.microsoft.com/ScriptCenter/en-us/7a29856b-747d-44aa-b639-3f15310de69d"&gt;List Statements With the Highest Average CPU Time&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Query Execution&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;&lt;a title="Retrieve a SQL Statement with a Specified .SQL_Handle" href="http://gallery.technet.microsoft.com/ScriptCenter/en-us/4df31ad5-227c-495d-9c6c-d91d047e89ee"&gt;Retrieve a SQL Statement with a Specified .SQL_Handle&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;a title="Retrieve SQL Text and XML Plans" href="http://gallery.technet.microsoft.com/ScriptCenter/en-us/7f8ecf25-5da7-4748-b655-3f680cca08ab"&gt;Retrieve SQL Text and XML Plans&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;a title="List Currently-Executing Statements" href="http://gallery.technet.microsoft.com/ScriptCenter/en-us/733fcb15-228d-4fea-a015-711116e8318e"&gt;List Currently-Executing Statements&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;a title="List Real Time Tempdb Task Usage" href="http://gallery.technet.microsoft.com/ScriptCenter/en-us/300762d1-86d4-4242-9843-fc868686f4f8"&gt;List Real Time Tempdb Task Usage&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;a title="List Real-Time Tempdb Statements" href="http://gallery.technet.microsoft.com/ScriptCenter/en-us/8c7e0ce4-8399-4422-85fe-7da6c2432a6d"&gt;List Real-Time Tempdb Statements&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;a title="List Currently-Executing Parallel Plans" href="http://gallery.technet.microsoft.com/ScriptCenter/en-us/a5c905ec-a857-4918-8f9f-75f0ff59eb76"&gt;List Currently-Executing Parallel Plans&lt;/a&gt; (the script at this link is actually the script for the next item :-))&lt;/p&gt;  &lt;p&gt;&lt;a title="List Cached Plans Where Worker Time Exceeds Elapsed Time" href="http://gallery.technet.microsoft.com/ScriptCenter/en-us/374616c7-f608-44f9-88bc-4120a37444a8"&gt;List Cached Plans Where Worker Time Exceeds Elapsed Time&lt;/a&gt; (the script at this link is actually the script for the previous item :-))&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;I/O and Buffer cache&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;&lt;a title="Calculate Average Stalls" href="http://gallery.technet.microsoft.com/ScriptCenter/en-us/04f3b143-7a84-462e-bb5d-8373c5bde88e"&gt;Calculate Average Stalls&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;a title="Retrieve Buffer Counts by Object and Index" href="http://gallery.technet.microsoft.com/ScriptCenter/en-us/d6800e08-40c1-4b6b-8b1a-ea52fe028902"&gt;Retrieve Buffer Counts by Object and Index&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Indexes&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;&lt;a title="List Indexes With the Most Contention" href="http://gallery.technet.microsoft.com/ScriptCenter/en-us/e909e469-3f9c-4dc5-92db-3d10bd4373d8"&gt;List Indexes With the Most Contention&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;a title="Retrieve Tables, Indexes, Files, and File Groups Information" href="http://gallery.technet.microsoft.com/ScriptCenter/en-us/c973df58-d975-4f4c-aae0-07b31ed7d832"&gt;Retrieve Tables, Indexes, Files, and File Groups Information&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;a title="Determine Index Cost Benefits" href="http://gallery.technet.microsoft.com/ScriptCenter/en-us/3fd9c233-3792-41aa-91b9-6102c6da9f35"&gt;Determine Index Cost Benefits&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;a title="Retrieve Object and Index Fragmentation Information" href="http://gallery.technet.microsoft.com/ScriptCenter/en-us/e99eb562-3c7f-40a6-8d87-6953d297b785"&gt;Retrieve Object and Index Fragmentation Information&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;a title="Analyze Index Statistics" href="http://gallery.technet.microsoft.com/ScriptCenter/en-us/0c5a83a8-6824-4e96-a9a2-9485d3d7e534"&gt;Analyze Index Statistics&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;a title="Identify Missing Indexes" href="http://gallery.technet.microsoft.com/ScriptCenter/en-us/abf03365-3605-407f-a0ac-8e4e219947bf"&gt;Identify Missing Indexes&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;a title="Retrieve Index Usage Statistics" href="http://gallery.technet.microsoft.com/ScriptCenter/en-us/c95fa3b0-c707-4074-9ecc-bd8f755b1999"&gt;Retrieve Index Usage Statistics&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;a title="Retrieve Indexes Not Used Since the Last Recycle Time" href="http://gallery.technet.microsoft.com/ScriptCenter/en-us/a924ff38-adf0-4287-a22a-bb4e6c5618db"&gt;Retrieve Indexes Not Used Since the Last Recycle Time&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;a title="List Rarely-Used Indexes" href="http://gallery.technet.microsoft.com/ScriptCenter/en-us/72369ef6-38e7-4ead-a774-4a970f13ad45"&gt;List Rarely-Used Indexes&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Locking and Blocking&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;&lt;a title="Report Blocker and Waiter SQL Statements" href="http://gallery.technet.microsoft.com/ScriptCenter/en-us/62e9f21f-8da5-4701-920a-08016271a048"&gt;Report Blocker and Waiter SQL Statements&lt;/a&gt;&lt;strong&gt;&amp;#160;&lt;/strong&gt;(sp_block_info)&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;I hope this compilation is useful to you!&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10031054" width="1" height="1"&gt;</description></item><item><title>Performance Dashboard Reports in SQL Server 2008</title><link>http://blogs.msdn.com/b/arvindsh/archive/2010/06/25/performance-dashboard-reports-in-sql-server-2008.aspx</link><pubDate>Fri, 25 Jun 2010 07:33:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:10030023</guid><dc:creator>Arvindsh</dc:creator><slash:comments>1</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://blogs.msdn.com/b/arvindsh/rsscomments.aspx?WeblogPostID=10030023</wfw:commentRss><comments>http://blogs.msdn.com/b/arvindsh/archive/2010/06/25/performance-dashboard-reports-in-sql-server-2008.aspx#comments</comments><description>&lt;p&gt;While Activity Monitor in SQL 2008 does a good job depicting waiting tasks, top N queries etc.; many DBAs are simply too familiar with the erstwhile SQL Server 2005 Performance Dashboard Reports. While officially Microsoft does not support the usage of these reports with SQL 2008, I found two links of interest which will help you get these reports up and running in 2008. But please keep in mind: this is AS-IS!&lt;/p&gt;
&lt;p&gt;Link 1: &lt;a href="http://blogs.msdn.com/b/vascov/archive/2008/09/30/using-performance-dashboard-with-sql-server-2008.aspx" title="http://blogs.msdn.com/b/vascov/archive/2008/09/30/using-performance-dashboard-with-sql-server-2008.aspx"&gt;http://blogs.msdn.com/b/vascov/archive/2008/09/30/using-performance-dashboard-with-sql-server-2008.aspx&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Link 2: &lt;a href="http://blogs.msdn.com/sqlrem/archive/2007/03/07/Performance-Dashboard-Reports-Now-Available.aspx"&gt;http://blogs.msdn.com/sqlrem/archive/2007/03/07/Performance-Dashboard-Reports-Now-Available.aspx&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;You have to perform BOTH the fixes to get the reports working. In Link #2, the specific place to look for is a comment which says &amp;lsquo;line number 3271&amp;rsquo;. &lt;/p&gt;
&lt;p&gt;DO make a BACKUP of your recent_cpu.rdl file before you attempt the fix in Link #2.&lt;/p&gt;
&lt;p&gt;[Update 26 Jun 2010] In addition, if you get an error related to an "overflow at runtime" then refer to the other fix in Link #2 above, the comment says 'Because DATEDIFF returns and int once'. Look for the fix from David.&lt;/p&gt;
&lt;p&gt;Hope this is useful to some folks out there! If you liked the post, please do leave a comment and / or rate the post.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10030023" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/b/arvindsh/archive/tags/SQL+Performance/">SQL Performance</category></item><item><title>Windows Mobile Device Center: missing Icons</title><link>http://blogs.msdn.com/b/arvindsh/archive/2010/06/24/windows-mobile-device-center-activate-information-rights-management.aspx</link><pubDate>Thu, 24 Jun 2010 09:14:49 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:10029489</guid><dc:creator>Arvindsh</dc:creator><slash:comments>0</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://blogs.msdn.com/b/arvindsh/rsscomments.aspx?WeblogPostID=10029489</wfw:commentRss><comments>http://blogs.msdn.com/b/arvindsh/archive/2010/06/24/windows-mobile-device-center-activate-information-rights-management.aspx#comments</comments><description>&lt;p&gt;I recently acquired a new Windows Mobile phone and was using the Windows Mobile Device Center to set up the partnership with my laptop. In the process, I came to a stage where I had to activate IRM as per the steps in &lt;a title="Activate Information Rights Management by using ActiveSync" href="http://www.microsoft.com/windowsmobile/en-us/help/v6-0/activate-information-rights-management-using-activesync-touch.aspx"&gt;Activate Information Rights Management by using ActiveSync&lt;/a&gt;. &lt;/p&gt;  &lt;p&gt;I entered my domain credentials and then pressed the button, but what I got back was a rather cryptic error exception with the message: “The operation completed successfully”. Successfully?&lt;/p&gt;  &lt;p&gt;Luckily this is was a .NET exception wrapping up the underlying Win32 exception, and the .NET runtime displayed the stack trace:&lt;/p&gt;  &lt;p&gt;System.Reflection.TargetInvocationException: Exception has been thrown by the target of an invocation. ---&amp;gt; System.ComponentModel.Win32Exception: The operation completed successfully&lt;/p&gt;  &lt;p&gt;at Microsoft.WindowsMobile.ImageUtils.LoadIcon(String fileName, IconSize iconSize)&lt;/p&gt;  &lt;p&gt;at Microsoft.WindowsMobile.DeviceManager.Partnership.GetImage(IconSize iconSize)&lt;/p&gt;  &lt;p&gt;at Microsoft.WindowsMobile.DeviceCenter.ProgressControl.set_WorkType(Work value)&lt;/p&gt;  &lt;p&gt;at Microsoft.WindowsMobile.DeviceCenter.ProgressControl..ctor(String titleText, String descriptionText, Work workType, OkCancelControl okCancelControl)&lt;/p&gt;  &lt;p&gt;at Microsoft.WindowsMobile.DeviceCenter.Six.IrmActivationControl.SaveContentSettings(MainHost mainHost, AnimatedControl outgoingControl, String errorTitle, Boolean removeControl)&lt;/p&gt;  &lt;p&gt;at Microsoft.WindowsMobile.DeviceCenter.Six.IrmActivationControl.OnOk(Object sender, OkClickedEventArgs e)&lt;/p&gt;  &lt;p&gt;at Microsoft.WindowsMobile.DeviceCenter.OkCancelControl.ClickSave(Object sender, EventArgs e)&lt;/p&gt;  &lt;p&gt;at Microsoft.WindowsMobile.DeviceCenter.OkCancelControlButton.button_Click(Object sender, EventArgs e)&lt;/p&gt;  &lt;p&gt;at System.Windows.Forms.Control.OnClick(EventArgs e)&lt;/p&gt;  &lt;p&gt;at System.Windows.Forms.Button.PerformClick()&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;After some debugging with WinDbg, I found that my “sync.ico” file under C:\Users\arvindsh\AppData\Roaming\Microsoft\ActiveSync\Profiles\&amp;lt;XYZPQR&amp;gt; was in some way “corrupt” or “not good”, causing the icon loading to fail and eventually the above exception. So I went ahead and put in a “good” sync.ico file in the above folder, restarted the sync process and then I was able to proceed with IRM activation. It turns out that this icon is used in the animated screen which displays when IRM is being activated, and that was the reason why the un-readable icon was so critical and caused the above exception.&lt;/p&gt;  &lt;p&gt;I hope this esoteric tip is useful to someone out there! If you like it, please leave a comment and / or rate this post, please!&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10029489" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/b/arvindsh/archive/tags/Windows+Mobile/">Windows Mobile</category></item><item><title>Web installer for obtaining / installing debugging tools (WinDbg)</title><link>http://blogs.msdn.com/b/arvindsh/archive/2010/05/28/web-installer-for-obtaining-installing-debugging-tools-windbg.aspx</link><pubDate>Fri, 28 May 2010 13:16:21 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:10016871</guid><dc:creator>Arvindsh</dc:creator><slash:comments>1</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://blogs.msdn.com/b/arvindsh/rsscomments.aspx?WeblogPostID=10016871</wfw:commentRss><comments>http://blogs.msdn.com/b/arvindsh/archive/2010/05/28/web-installer-for-obtaining-installing-debugging-tools-windbg.aspx#comments</comments><description>&lt;p&gt;Recently there has been a change to the way you obtain downloads of the WinDbg family of Debugging Tools for Windows. The classic link for the direct download of these installers was &lt;a title="http://www.microsoft.com/whdc/devtools/debugging/default.mspx. " href="http://www.microsoft.com/whdc/devtools/debugging/default.mspx. "&gt;http://www.microsoft.com/whdc/devtools/debugging/default.mspx. &lt;/a&gt;Unfortunately, that link only directly makes available the older versions of the debugger (circa March 2009.) For the latest debugger it recommends you download the Windows Development Kit, which is around 700MB in size.&lt;/p&gt;  &lt;p&gt;Relief is at hand, though: there is a Web installer for the WinSDK which allows you to just select those items of choice, such as the Debugging Tools for Windows. The link for the SDK is at &lt;a title="http://msdn.microsoft.com/en-us/windows/bb980924.aspx" href="http://msdn.microsoft.com/en-us/windows/bb980924.aspx"&gt;http://msdn.microsoft.com/en-us/windows/bb980924.aspx&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Do note that, this will INSTALL the debugging tools (which is not a bad thing, you can later XCOPY it to your target server) to the default location such as “C:\Program Files\Debugging Tools for Windows (x64)” (in my case this is the path, as I’m using x64 OS.) But it does help save some download time.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10016871" width="1" height="1"&gt;</description></item><item><title>Programmatically Getting version of loaded assembly</title><link>http://blogs.msdn.com/b/arvindsh/archive/2010/05/12/programmatically-getting-version-of-loaded-assembly.aspx</link><pubDate>Wed, 12 May 2010 05:31:15 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:10011410</guid><dc:creator>Arvindsh</dc:creator><slash:comments>1</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://blogs.msdn.com/b/arvindsh/rsscomments.aspx?WeblogPostID=10011410</wfw:commentRss><comments>http://blogs.msdn.com/b/arvindsh/archive/2010/05/12/programmatically-getting-version-of-loaded-assembly.aspx#comments</comments><description>&lt;p&gt;I recently had to determine at runtime the version of the assembly containing a particular type. After some searching I hit upon this:&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;System.Reflection.Assembly.GetAssembly(typeof(MyNamespace.MyType)).GetName().Version.ToString()&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;Do note that this will only work if the assembly containing the referenced type is already loaded.&lt;/p&gt;  &lt;p&gt;Updated based on a comment, this also does the job equally well:&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;typeof(MyNamespace.MyType).Assembly.GetName().Version.ToString()&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;Thank you!&lt;/p&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10011410" width="1" height="1"&gt;</description></item><item><title>Reportviewer and drillthrough</title><link>http://blogs.msdn.com/b/arvindsh/archive/2010/05/12/reportviewer-and-drillthrough.aspx</link><pubDate>Wed, 12 May 2010 05:08:31 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:10011404</guid><dc:creator>Arvindsh</dc:creator><slash:comments>0</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://blogs.msdn.com/b/arvindsh/rsscomments.aspx?WeblogPostID=10011404</wfw:commentRss><comments>http://blogs.msdn.com/b/arvindsh/archive/2010/05/12/reportviewer-and-drillthrough.aspx#comments</comments><description>&lt;p&gt;I was doing some testing the other day with a ReportViewer control hosted in a WinForms application to do local mode report processing. As some of my reports had a drillthrough / navigation option set, I had setup a set of DrillthroughEventHandler to ensure that the right datasources are bound to the report when the drillthrough reports are invoked.&lt;/p&gt;  &lt;p&gt;The problem in my case was that on specific reports being invoked, the drillthrough would cause an exception inside ReportViewer and it would display: &lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;An error occurred during rendering of the report.      &lt;br /&gt;Object reference not set to an instance of an object.&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;If this issue was random I would have suspected issues like the one in &lt;a title="http://support.microsoft.com/kb/959595" href="http://support.microsoft.com/kb/959595"&gt;http://support.microsoft.com/kb/959595&lt;/a&gt; but I was able to get this error consistently. On later troubleshooting it was clear that:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;I had two DrillthroughEventHandler setup, but only one for each report should have been ‘active’.&lt;/li&gt;    &lt;li&gt;Unfortunately the way you setup these handlers is you use the following construct:&lt;/li&gt; &lt;/ul&gt;  &lt;blockquote&gt;   &lt;p&gt;reportViewer1.Drillthrough += new DrillthroughEventHandler(CorrectDrillthroughEventHandler)&lt;/p&gt; &lt;/blockquote&gt;  &lt;ul&gt;   &lt;li&gt;Due to the way my code was structured, it turned out I would add the 2nd DrillthroughEventHandler to a report which never really needed it. So I ended up making sure that the unwanted handlers were registered first, just before the call to the registration of the correct one.&lt;/li&gt; &lt;/ul&gt;  &lt;blockquote&gt;   &lt;p&gt;reportViewer1.Drillthrough -= new DrillthroughEventHandler(UnwantedDrillthroughEventHandler);&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;Doing this got rid of the exception and things worked fine for me. Of course, be sure that this is not the ONLY reason for the above exception. This was a specific case and I hope it might prove useful for someone who is using Drillthrough and multiple DrillthroughEventHandler.&lt;/p&gt;  &lt;p&gt;If you found this useful, please do leave a comment! And if you are logged in, please do rate the post as well.&lt;/p&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10011404" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/b/arvindsh/archive/tags/ReportViewer/">ReportViewer</category></item><item><title>Replication and Linked Servers</title><link>http://blogs.msdn.com/b/arvindsh/archive/2010/05/10/replication-and-linked-servers.aspx</link><pubDate>Mon, 10 May 2010 06:21:18 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:10010033</guid><dc:creator>Arvindsh</dc:creator><slash:comments>0</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://blogs.msdn.com/b/arvindsh/rsscomments.aspx?WeblogPostID=10010033</wfw:commentRss><comments>http://blogs.msdn.com/b/arvindsh/archive/2010/05/10/replication-and-linked-servers.aspx#comments</comments><description>&lt;p&gt;&lt;strong&gt;Problem&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;I recently hit upon an issue with trying to setup a linked server to an instance which was already a subscriber to a publication. When replication is setup, it actually creates a remote server for the subscriber. However that ‘remote server’ is not configured for data access. So if you try to use that server, you would end up with:&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;Msg 7411, Level 16, State 1, Line 1     &lt;br /&gt;Server 'foosub' is not configured for DATA ACCESS.&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;Also, any attempt to add a similarly named linked server would fail with the error message below:&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;EXEC master.dbo.sp_addlinkedserver @server = N'foosub', @srvproduct=N'SQL Server'&lt;/p&gt; &lt;/blockquote&gt;  &lt;blockquote&gt;   &lt;p&gt;Msg 15028, Level 16, State 1, Procedure sp_addlinkedserver, Line 82     &lt;br /&gt;The server 'foosub' already exists.&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;&lt;strong&gt;Troubleshooting&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;Next, I tried to add a linked server (using the SQL Native Client) but with a different name (MYSRV) but pointing to the right server (foosub). My initial attempt yielded the following error:&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;The linked server has been created but failed a connection test. Do you want to keep the linked server? &lt;/p&gt; &lt;/blockquote&gt;  &lt;blockquote&gt;   &lt;p&gt;------------------------------     &lt;br /&gt;ADDITIONAL INFORMATION: &lt;/p&gt;    &lt;p&gt;An exception occurred while executing a Transact-SQL statement or batch. (Microsoft.SqlServer.ConnectionInfo) &lt;/p&gt;    &lt;p&gt;------------------------------ &lt;/p&gt;    &lt;p&gt;Named Pipes Provider: Could not open a connection to SQL Server [53].      &lt;br /&gt;OLE DB provider &amp;quot;SQLNCLI10&amp;quot; for linked server &amp;quot;MYSVR&amp;quot; returned message &amp;quot;Login timeout expired&amp;quot;.      &lt;br /&gt;OLE DB provider &amp;quot;SQLNCLI10&amp;quot; for linked server &amp;quot;MYSVR&amp;quot; returned message &amp;quot;A network-related or instance-specific error has occurred while establishing a connection to SQL Server. Server is not found or not accessible. Check if instance name is correct and if SQL Server is configured to allow remote connections. For more information see SQL Server Books Online.&amp;quot;. (Microsoft SQL Server, Error: 53) &lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;&lt;strong&gt;Solution&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;The problem turned out that I had not used the right ‘provider’ string. Here is the script which finally worked for me:&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;EXEC master.dbo.sp_addlinkedserver @server = N'MYSVR', @srvproduct=N'foosub', @provider=N'SQLNCLI10', @provstr=N'Server=foosub;Database=master;Trusted_Connection=yes' &lt;/p&gt; &lt;/blockquote&gt;  &lt;blockquote&gt;   &lt;p&gt;EXEC master.dbo.sp_addlinkedsrvlogin @rmtsrvname = N'MYSVR', @locallogin = NULL , @useself = N'True'     &lt;br /&gt;GO&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;Or if you are more comfortable using the SQLOLEDB provider, here’s a sample:&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;EXEC master.dbo.sp_addlinkedserver @server = N'MYSRV', @srvproduct=N'SQLOLEDB', @provider=N'SQLOLEDB', @datasrc=N'foosub', @provstr=N'Data Source=foosub;Initial Catalog=master', @catalog=N'master' &lt;/p&gt;    &lt;p&gt;EXEC master.dbo.sp_addlinkedsrvlogin @rmtsrvname = N'MYSRV', @locallogin = NULL , @useself = N'True'     &lt;br /&gt;GO &lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;You can also do this from the SSMS GUI by using '‘SQLNCI10’ or ‘SQLOLEDB’ as the Provider. &lt;/p&gt;  &lt;p&gt;With this, I can subsequently access remote tables as such:&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;SELECT * FROM MYSVR.master.sys.tables&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;Hope this is useful! Please leave a comment if you find it useful.&lt;/p&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10010033" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/b/arvindsh/archive/tags/SQL+Replication/">SQL Replication</category><category domain="http://blogs.msdn.com/b/arvindsh/archive/tags/SQL+General/">SQL General</category></item><item><title>My Favorite SQL Server Blogs</title><link>http://blogs.msdn.com/b/arvindsh/archive/2010/05/10/my-favorite-sql-server-blogs.aspx</link><pubDate>Mon, 10 May 2010 05:04:27 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:10010019</guid><dc:creator>Arvindsh</dc:creator><slash:comments>1</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://blogs.msdn.com/b/arvindsh/rsscomments.aspx?WeblogPostID=10010019</wfw:commentRss><comments>http://blogs.msdn.com/b/arvindsh/archive/2010/05/10/my-favorite-sql-server-blogs.aspx#comments</comments><description>&lt;p&gt;At our workshops and during other customer interactions, we are usually asked for links to good blogs and reading materials. Here is a list of my favorite SQL-related blogs, arranged in no specific order.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogs.msdn.com/craigfr"&gt;http://blogs.msdn.com/craigfr&lt;/a&gt;: Craig Freedman on Query Processing (QP)&lt;/p&gt;  &lt;p&gt;&lt;a title="http://blogs.msdn.com/sqlprogrammability" href="http://blogs.msdn.com/sqlprogrammability"&gt;http://blogs.msdn.com/sqlprogrammability&lt;/a&gt;: Plan cache, parameterization etc.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogs.msdn.com/sqlserverstorageengine"&gt;http://blogs.msdn.com/sqlserverstorageengine&lt;/a&gt;: Storage Engine&lt;/p&gt;  &lt;p&gt;&lt;a title="http://blogs.msdn.com/repltalk" href="http://blogs.msdn.com/repltalk"&gt;http://blogs.msdn.com/repltalk&lt;/a&gt;: Replication support team&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogs.msdn.com/psssql"&gt;http://blogs.msdn.com/psssql&lt;/a&gt;: CSS SQL Support team&lt;/p&gt;  &lt;p&gt;&lt;a href="http://www.sqlskills.com/blogs/PAUL"&gt;http://www.sqlskills.com/blogs/PAUL&lt;/a&gt;: Paul Randal with lots of tips&lt;/p&gt;  &lt;p&gt;&lt;a title="http://blogs.msdn.com/sqlqueryprocessing/default.aspx" href="http://blogs.msdn.com/sqlqueryprocessing/default.aspx"&gt;http://blogs.msdn.com/sqlqueryprocessing/default.aspx&lt;/a&gt;: Query Processing again&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogs.msdn.com/sqlserverfaq"&gt;http://blogs.msdn.com/sqlserverfaq&lt;/a&gt;: Other CSS SQL Support team members&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogs.msdn.com/davidlean"&gt;http://blogs.msdn.com/davidlean&lt;/a&gt;: Good series of posts on SQL Spatial features&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogs.msdn.com/sql_pfe_blog"&gt;http://blogs.msdn.com/sql_pfe_blog&lt;/a&gt;: Our global SQL PFE team blog&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogs.msdn.com/robertbruckner"&gt;http://blogs.msdn.com/robertbruckner&lt;/a&gt;: Good information on SSRS&lt;/p&gt;  &lt;p&gt;&lt;a href="http://www.sqlcat.com"&gt;http://www.sqlcat.com&lt;/a&gt;: The SQL Server Customer Advisory Team (SQLCAT)&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogs.msdn.com/sqlreleaseservices"&gt;http://blogs.msdn.com/sqlreleaseservices&lt;/a&gt;: Learn about the latest releases (Service Pack / Cumulative Update) from SQL product team&lt;/p&gt;  &lt;p&gt;I will be updating this list as and when I remember / discover other useful blogs. I hope this is useful for the community!&lt;/p&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10010019" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/b/arvindsh/archive/tags/SQL+General/">SQL General</category></item><item><title>Hack of the day: Shrink all log files in the instance</title><link>http://blogs.msdn.com/b/arvindsh/archive/2010/02/14/hack-of-the-day-shrink-all-log-files-in-the-instance.aspx</link><pubDate>Sun, 14 Feb 2010 06:03:43 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:9963227</guid><dc:creator>Arvindsh</dc:creator><slash:comments>0</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://blogs.msdn.com/b/arvindsh/rsscomments.aspx?WeblogPostID=9963227</wfw:commentRss><comments>http://blogs.msdn.com/b/arvindsh/archive/2010/02/14/hack-of-the-day-shrink-all-log-files-in-the-instance.aspx#comments</comments><description>&lt;p&gt;Before I proceed, I will add two disclaimers:&lt;/p&gt;  &lt;ol&gt;   &lt;li&gt;This script is provided as-is for knowledge purposes. It is not a recommendation, or in any way intended for production usage. No warranty or guarantee is made about the correctness of the script. Use it at your own risk.&lt;/li&gt;    &lt;li&gt;We do not recommend using SHRINK operations on any production databases. This script is provided for demonstration purposes only and that too for test or development servers. For more details, please refer to the series of posts by Paul Randal at &lt;a title="http://www.sqlskills.com/BLOGS/PAUL/category/Shrink.aspx" href="http://www.sqlskills.com/BLOGS/PAUL/category/Shrink.aspx"&gt;http://www.sqlskills.com/BLOGS/PAUL/category/Shrink.aspx&lt;/a&gt;&lt;/li&gt; &lt;/ol&gt;  &lt;p&gt;With that behind us, here’s what I would like to share. On my laptop I keep running large queries and many times those will grow the log file. Though my database is in simple recovery mode, a single long running transaction can cause this kind of growth.&lt;/p&gt;  &lt;p&gt;So I would sometimes like to reclaim disk space (oh so precious on a laptop!) periodically. I would however not like to shrink the data file, just the log file. (Shrinking data files can cause fragmentation issues to occur.)&lt;/p&gt;  &lt;p&gt;The problem is I normally operate on like 5-6 databases on my laptop. I would not want to use the GUI nor script this manually each time. So here is a simple script-generator, which will generate the necessary DBCC SHRINKFILE commands, which you can then execute as per your requirement.&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;drop table #f     &lt;br /&gt;go      &lt;br /&gt;create table #f (name sysname, fileid int, filename sysname, filegroup sysname null,       &lt;br /&gt;size sysname, maxsize sysname, growth sysname, usage sysname)      &lt;br /&gt;go      &lt;br /&gt;exec sp_MSforeachdb 'declare @s varchar(8000); use ?;       &lt;br /&gt;truncate table #f; INSERT #f (name, fileid, filename, filegroup, size, maxsize, growth, usage )       &lt;br /&gt; exec sp_helpfile       &lt;br /&gt; select @s = ''use ?; DBCC SHRINKFILE ('' + name + '' )'' from #f where usage = ''log only''      &lt;br /&gt; print @s '&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;Really crude script, but it does save me some time once in a while.&lt;/p&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9963227" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/b/arvindsh/archive/tags/SQL+General/">SQL General</category></item><item><title>Priority boost details – and why it’s not recommended</title><link>http://blogs.msdn.com/b/arvindsh/archive/2010/01/27/priority-boost-details-and-why-it-s-not-recommended.aspx</link><pubDate>Wed, 27 Jan 2010 07:04:17 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:9953913</guid><dc:creator>Arvindsh</dc:creator><slash:comments>2</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://blogs.msdn.com/b/arvindsh/rsscomments.aspx?WeblogPostID=9953913</wfw:commentRss><comments>http://blogs.msdn.com/b/arvindsh/archive/2010/01/27/priority-boost-details-and-why-it-s-not-recommended.aspx#comments</comments><description>&lt;p&gt;Some times, we see customer has (accidentally or otherwise) enabled the option ‘boost priority’ for SQL Server worker threads. In general Microsoft does not recommend that you set this option. Why?&lt;/p&gt;  &lt;p&gt;First a bit of background. When we set the ‘priority boost’ option using sp_configure what is happening is that after restart the SQL engine will call Win32 API SetPriorityClass() and passes in HIGH_PRIORITY_CLASS (if you are debugger savvy, you can set breakpoints on these APIs and check what is happening – that’s what I did, no source code is required to verify this). From MSDN:&lt;/p&gt;  &lt;p&gt;   &lt;table border="1" cellpadding="0"&gt;&lt;tbody&gt;       &lt;tr&gt;         &lt;td valign="top"&gt;           &lt;p&gt;HIGH_PRIORITY_CLASS&lt;/p&gt;            &lt;p&gt;0x00000080&lt;/p&gt;         &lt;/td&gt;          &lt;td valign="top"&gt;           &lt;p&gt;Process that performs time-critical tasks that must be executed immediately. The threads of the process preempt the threads of normal or idle priority class processes. An example is the Task List, which must respond quickly when called by the user, regardless of the load on the operating system. Use extreme care when using the high-priority class, because a high-priority class application can use nearly all available CPU time.&lt;/p&gt;         &lt;/td&gt;       &lt;/tr&gt;     &lt;/tbody&gt;&lt;/table&gt; &lt;/p&gt;  &lt;p&gt;It then proceeds to call SetThreadPriority() with priority as THREAD_PRIORITY_HIGHEST. For this combination of Process Priority Class and Thread Priority Level, the base priority level of these worker threads is 15. The only ones higher than this in the hierarchy of the OS are any threads which have process priority class set to REALTIME_PRIORITY_CLASS (which should be a very rare case for any application.) this means that many SQL worker threads are running at a priority level which is close to the highest on the system. Hence, they will tend to be selected frequently by kernel dispatcher to execute on the CPU.&lt;/p&gt;  &lt;p&gt;&lt;u&gt;So what is the effect?&lt;/u&gt;&lt;/p&gt;  &lt;p&gt;There is clear precedent in the support teams of priority boost causing unresponsive servers. Sluggish UI / mouse / keyboard movements are other common symptoms if this setting is interfering with the capability of the OS to give (non-SQL) threads their desired quantum on the CPU. On a cluster, having priority boosted SQL threads can cause other critical threads such as the resource monitor’s IsAlive poll thread to timeout, thereby causing unwanted failover. Therefore we do not recommend to set priority boost to 1, &lt;a href="http://support.microsoft.com/kb/319942"&gt;especially in clustered instances&lt;/a&gt;.&lt;/p&gt;  &lt;p&gt;&lt;u&gt;Reference links:&lt;/u&gt;&lt;/p&gt;  &lt;p&gt;SetPriorityClass: &lt;a href="http://msdn.microsoft.com/en-us/library/ms686219(VS.85).aspx"&gt;http://msdn.microsoft.com/en-us/library/ms686219(VS.85).aspx&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;SetThreadPriority: &lt;a href="http://msdn.microsoft.com/en-us/library/ms686277(VS.85).aspx"&gt;http://msdn.microsoft.com/en-us/library/ms686277(VS.85).aspx&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Effective Base Priority: &lt;a href="http://msdn.microsoft.com/en-us/library/ms685100(VS.85).aspx"&gt;http://msdn.microsoft.com/en-us/library/ms685100(VS.85).aspx&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Windows Priority levels: &lt;a href="http://www.microsoft.com/mspress/books/sampchap/4354c.aspx"&gt;http://www.microsoft.com/mspress/books/sampchap/4354c.aspx&lt;/a&gt; and &lt;a href="http://www.microsoft.com/mspress/books/sampchap/4354d.aspx"&gt;http://www.microsoft.com/mspress/books/sampchap/4354d.aspx&lt;/a&gt;&lt;/p&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9953913" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/b/arvindsh/archive/tags/SQL+Architecture/">SQL Architecture</category></item><item><title>WARNING: Stack unwind information not available. Following frames may be wrong.</title><link>http://blogs.msdn.com/b/arvindsh/archive/2009/12/23/warning-stack-unwind-information-not-available-following-frames-may-be-wrong.aspx</link><pubDate>Wed, 23 Dec 2009 04:52:48 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:9940388</guid><dc:creator>Arvindsh</dc:creator><slash:comments>0</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://blogs.msdn.com/b/arvindsh/rsscomments.aspx?WeblogPostID=9940388</wfw:commentRss><comments>http://blogs.msdn.com/b/arvindsh/archive/2009/12/23/warning-stack-unwind-information-not-available-following-frames-may-be-wrong.aspx#comments</comments><description>&lt;p&gt;I’m sure if you have ever used the WinDbg family of debuggers sometime, you must have seen the above message. What does it really mean? How does it affect you?&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Quick Background on stack operation&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;In x86, the way the stack is built up, the entry point of the function (a.k.a. prolog) generated by the compiler contains some key instructions including one which saves the previous value of the EBP register for that thread on the stack. The next instruction sets the EBP register to point to the current stack pointer (ESP).&lt;/p&gt;  &lt;p&gt;What am I talking about? If you don’t know what EBP and ESP are, I recommend you take a quick look at the links in the reference section at the end.&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Frame Pointer Omission&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;So in some cases the compiler may choose to omit the setting of the EBP register and may instead directly use ESP to reference locals and parameters. In such cases the EBP register (a.k.a. ‘frame pointer’) is deemed as ‘omitted’ and the generated code is called FPO (Frame Pointer Omission) code.&lt;/p&gt;  &lt;p&gt;In such cases the debugger will typically complain that it cannot unwind the stack based on the EBP (unless it has symbol files which match the module whose function has FPO enabled). Under those cases it will emit the warning which is the title of this post.&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Recommendation&lt;/strong&gt;&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;For builds which have /Oy enabled, it is necessary to have symbol files to successfully reconstruct the stack.&lt;/li&gt;    &lt;li&gt;In the real world the most common reason to encounter the above message is faulty symbol paths. Check your symbol path.&lt;/li&gt;    &lt;li&gt;In cases where you can tolerate the overhead of setting up the frame pointer, leave FPO off (/Oy-). See the last reference in my post for something which Windows team has supposedly done regarding this.&lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;&lt;strong&gt;References&lt;/strong&gt;&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;&lt;a href="http://msdn.microsoft.com/en-us/library/cc267845.aspx" target="_blank"&gt;Anatomy of a stack trace&lt;/a&gt;&lt;/li&gt;    &lt;li&gt;&lt;a href="http://msdn.microsoft.com/en-us/library/cc267328.aspx" target="_blank"&gt;Stack Unwind message&lt;/a&gt;&lt;/li&gt;    &lt;li&gt;&lt;a href="http://msdn.microsoft.com/en-us/library/6xy06s51.aspx" target="_blank"&gt;Considerations for prolog / epilog code&lt;/a&gt;&lt;/li&gt;    &lt;li&gt;&lt;a href="http://msdn.microsoft.com/en-us/library/k2b2ssfy.aspx" target="_blank"&gt;Calling conventions&lt;/a&gt;&lt;/li&gt;    &lt;li&gt;&lt;a href="http://msdn.microsoft.com/en-us/library/2kxx5t2c.aspx" target="_blank"&gt;The /Oy switch to control FPO&lt;/a&gt;&lt;/li&gt;    &lt;li&gt;&lt;a href="http://blogs.msdn.com/larryosterman/archive/2007/03/12/fpo.aspx" target="_blank"&gt;Reference to FPO no longer in use for Windows builds&lt;/a&gt;&lt;/li&gt; &lt;/ul&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9940388" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/b/arvindsh/archive/tags/Production+debugging/">Production debugging</category></item><item><title>YADCU - Yet another dump capture utility</title><link>http://blogs.msdn.com/b/arvindsh/archive/2009/12/23/yadcu-yet-another-dump-capture-utility.aspx</link><pubDate>Wed, 23 Dec 2009 04:32:32 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:9940382</guid><dc:creator>Arvindsh</dc:creator><slash:comments>0</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://blogs.msdn.com/b/arvindsh/rsscomments.aspx?WeblogPostID=9940382</wfw:commentRss><comments>http://blogs.msdn.com/b/arvindsh/archive/2009/12/23/yadcu-yet-another-dump-capture-utility.aspx#comments</comments><description>&lt;p&gt;The plethora of dump capture tools is amazing and sometimes confusing. But here is one from Mark Russinovich which looks interesting: &lt;a href="http://technet.microsoft.com/en-us/sysinternals/dd996900.aspx" target="_blank"&gt;ProcDump&lt;/a&gt;. Some unique capabilities I can see in this tool are things like CPU threshold based triggers, the ability to clone a process so that it is suspended for minimum time when dump is captured, ability to launch another image on the event trigger, etc. Take a look at it, it should add to your debugging toolbox!&lt;/p&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9940382" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/b/arvindsh/archive/tags/Production+debugging/">Production debugging</category></item><item><title>Low Fragmentation heap details</title><link>http://blogs.msdn.com/b/arvindsh/archive/2009/12/18/low-fragmentation-heap-details.aspx</link><pubDate>Fri, 18 Dec 2009 05:42:42 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:9938554</guid><dc:creator>Arvindsh</dc:creator><slash:comments>0</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://blogs.msdn.com/b/arvindsh/rsscomments.aspx?WeblogPostID=9938554</wfw:commentRss><comments>http://blogs.msdn.com/b/arvindsh/archive/2009/12/18/low-fragmentation-heap-details.aspx#comments</comments><description>&lt;p&gt;Quick post here: I recently came across a &lt;a href="http://rjohnson.uninformed.org/Presentations/200703%20EuSecWest%20-%20Windows%20Vista%20Exploitation%20Countermeasures/rjohnson%20-%20Windows%20Vista%20Exploitation%20Countermeasures.ppt" target="_blank"&gt;great presentation&lt;/a&gt; by Richard Johnson which among other things talks about the implementation details behind ntdll’s Low Fragmentation Heap. While officially not much documentation is available on this subject, I believe Richard’s presentation offers pretty much the most accurate publicly available details on the same.&lt;/p&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9938554" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/b/arvindsh/archive/tags/Production+debugging/">Production debugging</category></item><item><title>The meaning of CID in output of kernel debugger commands</title><link>http://blogs.msdn.com/b/arvindsh/archive/2009/10/30/the-meaning-of-cid-in-output-of-kernel-debugger-commands.aspx</link><pubDate>Fri, 30 Oct 2009 04:26:51 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:9915099</guid><dc:creator>Arvindsh</dc:creator><slash:comments>0</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://blogs.msdn.com/b/arvindsh/rsscomments.aspx?WeblogPostID=9915099</wfw:commentRss><comments>http://blogs.msdn.com/b/arvindsh/archive/2009/10/30/the-meaning-of-cid-in-output-of-kernel-debugger-commands.aspx#comments</comments><description>&lt;p&gt;Recently someone asked me what was the real meaning of the ‘Cid’ field which appears in the output of commands such as !process and !thread in the kernel debugger (kd). Though from a practical perspective I was aware that these represent the Process ID and Thread ID, I was unsure of what Cid stands for. In course of a search, I found a public source which answers the question. Cid is short for CLIENT_ID which in turn is an undocumented structure.&lt;/p&gt;  &lt;p&gt;The public source is a free PDF version of the excellent “Undocumented Windows 2000 Secrets: A Programmer's Cookbook” book, which you can now find at &lt;a title="http://undocumented.rawol.com/" href="http://undocumented.rawol.com/"&gt;http://undocumented.rawol.com/&lt;/a&gt;. I think this resource is a very useful one for all those interested in Windows Internals and debugging as well. Go take a look at it!&lt;/p&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9915099" width="1" height="1"&gt;</description></item></channel></rss>
