<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="http://sqlblog.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>Kevin Kline : Internals, SQL Programming</title><link>http://sqlblog.com/blogs/kevin_kline/archive/tags/Internals/SQL+Programming/default.aspx</link><description>Tags: Internals, SQL Programming</description><dc:language>en</dc:language><generator>CommunityServer 2.1 SP2 (Build: 61129.1)</generator><item><title>How Do You SKU?</title><link>http://sqlblog.com/blogs/kevin_kline/archive/2011/03/30/how-do-you-sku.aspx</link><pubDate>Wed, 30 Mar 2011 14:49:00 GMT</pubDate><guid isPermaLink="false">21093a07-8b3d-42db-8cbf-3350fcbf5496:34502</guid><dc:creator>KKline</dc:creator><slash:comments>9</slash:comments><comments>http://sqlblog.com/blogs/kevin_kline/comments/34502.aspx</comments><wfw:commentRss>http://sqlblog.com/blogs/kevin_kline/commentrss.aspx?PostID=34502</wfw:commentRss><description>I’d like your opinion here. Follow my logic here for a moment as I walk through a couple rhetorical questions. Have you ever had a friend developed an application entirely on SQL Server Developer Edition? (Not that YOU would ever do such a thing, but...(&lt;a href="http://sqlblog.com/blogs/kevin_kline/archive/2011/03/30/how-do-you-sku.aspx"&gt;read more&lt;/a&gt;)&lt;img src="http://sqlblog.com/aggbug.aspx?PostID=34502" width="1" height="1"&gt;</description><category domain="http://sqlblog.com/blogs/kevin_kline/archive/tags/Administration/default.aspx">Administration</category><category domain="http://sqlblog.com/blogs/kevin_kline/archive/tags/Database+Design/default.aspx">Database Design</category><category domain="http://sqlblog.com/blogs/kevin_kline/archive/tags/Developer/default.aspx">Developer</category><category domain="http://sqlblog.com/blogs/kevin_kline/archive/tags/Internals/default.aspx">Internals</category><category domain="http://sqlblog.com/blogs/kevin_kline/archive/tags/Opinion/default.aspx">Opinion</category><category domain="http://sqlblog.com/blogs/kevin_kline/archive/tags/SQL+Programming/default.aspx">SQL Programming</category></item><item><title>Join Me May 19th for 24 Hours of PASS</title><link>http://sqlblog.com/blogs/kevin_kline/archive/2010/04/26/join-me-may-19th-for-24-hours-of-pass.aspx</link><pubDate>Mon, 26 Apr 2010 14:16:00 GMT</pubDate><guid isPermaLink="false">21093a07-8b3d-42db-8cbf-3350fcbf5496:24579</guid><dc:creator>KKline</dc:creator><slash:comments>0</slash:comments><comments>http://sqlblog.com/blogs/kevin_kline/comments/24579.aspx</comments><wfw:commentRss>http://sqlblog.com/blogs/kevin_kline/commentrss.aspx?PostID=24579</wfw:commentRss><description>Check out all the great SQL Server sessions you can attend for FREE in this on-line event....(&lt;a href="http://sqlblog.com/blogs/kevin_kline/archive/2010/04/26/join-me-may-19th-for-24-hours-of-pass.aspx"&gt;read more&lt;/a&gt;)&lt;img src="http://sqlblog.com/aggbug.aspx?PostID=24579" width="1" height="1"&gt;</description><category domain="http://sqlblog.com/blogs/kevin_kline/archive/tags/Administration/default.aspx">Administration</category><category domain="http://sqlblog.com/blogs/kevin_kline/archive/tags/Cloud+Computing/default.aspx">Cloud Computing</category><category domain="http://sqlblog.com/blogs/kevin_kline/archive/tags/Database+Design/default.aspx">Database Design</category><category domain="http://sqlblog.com/blogs/kevin_kline/archive/tags/Developer/default.aspx">Developer</category><category domain="http://sqlblog.com/blogs/kevin_kline/archive/tags/Internals/default.aspx">Internals</category><category domain="http://sqlblog.com/blogs/kevin_kline/archive/tags/PASS/default.aspx">PASS</category><category domain="http://sqlblog.com/blogs/kevin_kline/archive/tags/People/default.aspx">People</category><category domain="http://sqlblog.com/blogs/kevin_kline/archive/tags/Performance/default.aspx">Performance</category><category domain="http://sqlblog.com/blogs/kevin_kline/archive/tags/Professional+Development/default.aspx">Professional Development</category><category domain="http://sqlblog.com/blogs/kevin_kline/archive/tags/Speaking/default.aspx">Speaking</category><category domain="http://sqlblog.com/blogs/kevin_kline/archive/tags/SQL+Programming/default.aspx">SQL Programming</category><category domain="http://sqlblog.com/blogs/kevin_kline/archive/tags/Troubleshooting/default.aspx">Troubleshooting</category></item><item><title>NASTY RUMORS ABOUT MAXDOP</title><link>http://sqlblog.com/blogs/kevin_kline/archive/2008/04/15/nasty-rumors-about-maxdop.aspx</link><pubDate>Tue, 15 Apr 2008 17:48:00 GMT</pubDate><guid isPermaLink="false">21093a07-8b3d-42db-8cbf-3350fcbf5496:6225</guid><dc:creator>KKline</dc:creator><slash:comments>12</slash:comments><comments>http://sqlblog.com/blogs/kevin_kline/comments/6225.aspx</comments><wfw:commentRss>http://sqlblog.com/blogs/kevin_kline/commentrss.aspx?PostID=6225</wfw:commentRss><description>&lt;P class=MsoNormal style="MARGIN:0in 0in 0pt;"&gt;&lt;FONT face="Times New Roman" size=3&gt;You'd think an article called "NASTY RUMORS ABOUT MAXDOP" would have something to do with Britney Spears or maybe Robert Downy Jr, but in that case it'd be total fiction (at least, it would be coming from my pen).&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN:0in 0in 0pt;"&gt;&lt;FONT face="Times New Roman" size=3&gt;&lt;/FONT&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN:0in 0in 0pt;"&gt;&lt;FONT face="Times New Roman" size=3&gt;So, I was en route to the 2008 Microsoft MVP Summit yesterday and I had a chance to catch up on my reading.&amp;nbsp;&amp;nbsp;&lt;/FONT&gt;&lt;FONT face="Times New Roman" size=3&gt;You may have heard some rumors that you should only ever set MAXDOP (maximum degrees of parallelism) to an even number.&lt;SPAN style="mso-spacerun:yes;"&gt;&amp;nbsp; &lt;/SPAN&gt;I can neither confirm nor deny these rumors since I haven’t had time to test this yet myself.&lt;SPAN style="mso-spacerun:yes;"&gt;&amp;nbsp; &lt;/SPAN&gt;But I’m curious if any readers out there have definitive information one way or the other. &lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN:0in 0in 0pt;"&gt;&lt;o:p&gt;&lt;FONT face="Times New Roman" size=3&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN:0in 0in 0pt;"&gt;&lt;FONT face="Times New Roman" size=3&gt;Evidently, there are two roles involved in parallel processing, a writer and a consumer.&lt;SPAN style="mso-spacerun:yes;"&gt;&amp;nbsp; &lt;/SPAN&gt;Naturally, when two roles are at work, the MAXDOP setting doesn’t have to share resources when it is set in increments of two.&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN:0in 0in 0pt;"&gt;&lt;FONT face="Times New Roman" size=3&gt;&lt;/FONT&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN:0in 0in 0pt;"&gt;&lt;FONT face="Times New Roman" size=3&gt;Hope this helps,&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN:0in 0in 0pt;"&gt;&lt;FONT face="Times New Roman" size=3&gt;&lt;/FONT&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN:0in 0in 0pt;"&gt;&lt;FONT face="Times New Roman" size=3&gt;-Kevin&lt;/FONT&gt;&lt;/P&gt;&lt;img src="http://sqlblog.com/aggbug.aspx?PostID=6225" width="1" height="1"&gt;</description><category domain="http://sqlblog.com/blogs/kevin_kline/archive/tags/Internals/default.aspx">Internals</category><category domain="http://sqlblog.com/blogs/kevin_kline/archive/tags/SQL+Programming/default.aspx">SQL Programming</category><category domain="http://sqlblog.com/blogs/kevin_kline/archive/tags/Tips/default.aspx">Tips</category></item><item><title>Beware of computed columns</title><link>http://sqlblog.com/blogs/kevin_kline/archive/2007/10/11/beware-of-computed-columns.aspx</link><pubDate>Thu, 11 Oct 2007 04:20:00 GMT</pubDate><guid isPermaLink="false">21093a07-8b3d-42db-8cbf-3350fcbf5496:2934</guid><dc:creator>KKline</dc:creator><slash:comments>0</slash:comments><comments>http://sqlblog.com/blogs/kevin_kline/comments/2934.aspx</comments><wfw:commentRss>http://sqlblog.com/blogs/kevin_kline/commentrss.aspx?PostID=2934</wfw:commentRss><description>&lt;P&gt;If you use computed columns a lot, you might want to know about some new behavior in SQL Server 2005.&lt;/P&gt;
&lt;P&gt;One of the changes in SQL Server 2005 was to evaluate expressions in queries to match computed column expressions and identify redundant expressions, in order to prevent run-time errors in queries that have unsafe expressions. This is documented in the behavior changes topic:&lt;BR&gt;&amp;nbsp;&lt;BR&gt;&lt;A href="http://msdn2.microsoft.com/en-us/library/ms143359.aspx"&gt;http://msdn2.microsoft.com/en-us/library/ms143359.aspx&lt;/A&gt;&lt;/P&gt;
&lt;P&gt;Check it out,&lt;/P&gt;
&lt;P&gt;-Kev&lt;/P&gt;&lt;img src="http://sqlblog.com/aggbug.aspx?PostID=2934" width="1" height="1"&gt;</description><category domain="http://sqlblog.com/blogs/kevin_kline/archive/tags/Internals/default.aspx">Internals</category><category domain="http://sqlblog.com/blogs/kevin_kline/archive/tags/SQL+Programming/default.aspx">SQL Programming</category><category domain="http://sqlblog.com/blogs/kevin_kline/archive/tags/Tips/default.aspx">Tips</category></item><item><title>Useful Index Information Scripts for SQL Server 2005</title><link>http://sqlblog.com/blogs/kevin_kline/archive/2007/08/31/useful-index-information-scripts-for-sql-server-2005.aspx</link><pubDate>Fri, 31 Aug 2007 22:31:00 GMT</pubDate><guid isPermaLink="false">21093a07-8b3d-42db-8cbf-3350fcbf5496:2404</guid><dc:creator>KKline</dc:creator><slash:comments>3</slash:comments><comments>http://sqlblog.com/blogs/kevin_kline/comments/2404.aspx</comments><wfw:commentRss>http://sqlblog.com/blogs/kevin_kline/commentrss.aspx?PostID=2404</wfw:commentRss><description>&lt;FONT size=2&gt;
&lt;P&gt;Italian SQL Server MVP Davide Mauri has released four very useful scripts that simplify the usage of SQL Server 2005 DMVs to discover, analyze, and understand index usage and health.&amp;nbsp; The&amp;nbsp;queries are not rocket science,&amp;nbsp;but they are long and rely on DMVs that you may not have learned about yet.&amp;nbsp; They also provide useful and easy shortcuts to common questions on SQL Server 2005.&amp;nbsp; Check them out at:&lt;/P&gt;
&lt;P&gt;&lt;/FONT&gt;&lt;A href="http://www.davidemauri.it/SqlScripts.aspx"&gt;&lt;U&gt;&lt;FONT color=#0000ff size=2&gt;http://www.davidemauri.it/SqlScripts.aspx&lt;/U&gt;&lt;/FONT&gt;&lt;/A&gt;&lt;/P&gt;&lt;FONT size=2&gt;
&lt;P&gt;I now use them a lot.&amp;nbsp; So I'm sure you'll find them useful too.&amp;nbsp; &lt;/P&gt;
&lt;P&gt;Great job, Davide, and thank you for sharing!&lt;/P&gt;
&lt;P&gt;&amp;nbsp;Cheers,&lt;/P&gt;
&lt;P&gt;-Kev&lt;/P&gt;&lt;/FONT&gt;&lt;img src="http://sqlblog.com/aggbug.aspx?PostID=2404" width="1" height="1"&gt;</description><category domain="http://sqlblog.com/blogs/kevin_kline/archive/tags/Internals/default.aspx">Internals</category><category domain="http://sqlblog.com/blogs/kevin_kline/archive/tags/SQL+Programming/default.aspx">SQL Programming</category><category domain="http://sqlblog.com/blogs/kevin_kline/archive/tags/Tips/default.aspx">Tips</category></item><item><title>Which DMV Shows Plan Handles?</title><link>http://sqlblog.com/blogs/kevin_kline/archive/2007/07/25/which-dmv-shows-plan-handles.aspx</link><pubDate>Wed, 25 Jul 2007 21:02:00 GMT</pubDate><guid isPermaLink="false">21093a07-8b3d-42db-8cbf-3350fcbf5496:2055</guid><dc:creator>KKline</dc:creator><slash:comments>0</slash:comments><comments>http://sqlblog.com/blogs/kevin_kline/comments/2055.aspx</comments><wfw:commentRss>http://sqlblog.com/blogs/kevin_kline/commentrss.aspx?PostID=2055</wfw:commentRss><description>&lt;P&gt;&lt;FONT size=2&gt;Sometimes, knowing which&amp;nbsp;Dynamic Management View (DMV) to use is your biggest challenge when attempting to figure out SQL Server 2005 behavior.&amp;nbsp; For example, what if you want the cached execution plans in XML format, similar to the output of SET SHOWPLAN_XML?&amp;nbsp; As it turns out, Gert Draper pointed out that there are a couple of DMVs that expose a plan_handle:&lt;/FONT&gt;&lt;/P&gt;
&lt;P dir=ltr style="MARGIN-RIGHT:0px;"&gt;&lt;FONT face="Courier New" size=2&gt;SELECT dm_exec_query_plan(plan_handle), &lt;BR&gt;*&lt;BR&gt;FROM sys.dm_exec_query_stats&lt;BR&gt;WHERE plan_handle IS NOT NULL&lt;BR&gt;GO&lt;/FONT&gt;&lt;/P&gt;
&lt;P dir=ltr style="MARGIN-RIGHT:0px;"&gt;&lt;FONT face="Courier New" size=2&gt;SELECT dm_exec_query_plan(plan_handle), &lt;BR&gt;*&lt;BR&gt;FROM sys.dm_exec_requests&lt;BR&gt;WHERE plan_handle IS NOT NULL&lt;BR&gt;GO&lt;/FONT&gt;&lt;/P&gt;
&lt;P dir=ltr style="MARGIN-RIGHT:0px;"&gt;&lt;FONT size=2&gt;&lt;FONT face="Courier New"&gt;SELECT dm_exec_query_plan(plan_handle),&lt;BR&gt;*&lt;BR&gt;FROM sys.dm_exec_cached_plans&lt;BR&gt;WHERE plan_handle IS NOT NULL&lt;BR&gt;GO&lt;BR&gt;&lt;/FONT&gt;&lt;BR&gt;Note that the plan_handle is a varbinary(64) data type.&amp;nbsp; Cheers,&lt;BR&gt;&lt;/FONT&gt;&lt;BR&gt;-Kevin&lt;A href="mailto:GertD@SQLDev.Net"&gt;&lt;/A&gt;&lt;/P&gt;&lt;img src="http://sqlblog.com/aggbug.aspx?PostID=2055" width="1" height="1"&gt;</description><category domain="http://sqlblog.com/blogs/kevin_kline/archive/tags/Internals/default.aspx">Internals</category><category domain="http://sqlblog.com/blogs/kevin_kline/archive/tags/SQL+Programming/default.aspx">SQL Programming</category></item></channel></rss>