Esoteric

The inside scoop on SQL / debugging you won't find anywhere else!

Browse by Tags

Spread the word!
Tagged Content List
  • Blog Post: Exotic spinlocks: X_PACKET_LIST and XID_ARRAY

    A Twitter conversation sparked this blog post; the question there was about the relevance of the X_PACKET_LIST spinlock. As with most spinlocks, there is no public documentation on this one, and that is primarily because the spinlock is an implementation detail and can change from release to release...
  • Blog Post: Tracking TEMPDB internal object space usage in SQL 2012

    It is a documented fact that using the MAX specifier can result in TEMPDB usage in specific cases. From the TEMPDB whitepaper , some of these can use ‘internal object’ space within TEMPDB: “all of the large object types: text , image , ntext , varchar(max) , varbinary(max) , and all others.” Now, a FAQ...
  • Blog Post: Indexed views with remote tables–possible?

    Once upon a time, I had this question come up during an onsite visit: someone wanted to create a ‘materialized’ copy of the remote data locally as an indexed view. I had never heard that requirement before, but since the motivation was genuine, I decided to validate it. There is a long list of what is...
  • Blog Post: Exotic spinlocks: XTS_MGR

    My friend and colleague - Fabricio Catae - had blogged about spinlocks previously. In one of the comments, a visitor has asked him about the XTS_MGR spinlock. There is no public documentation about this spinlock, because it is largely implementation specific detail. However, a general explanation...
  • Blog Post: Normalizing T-SQL text, part 1: using the RML Utilities and the DMVs

    A common problem when dealing with workloads which issue ad-hoc SQL commands (i.e. without parameterization) is to find out the ‘normalized’ version of the pattern. For example, these three statements are essentially the same ‘template’: SELECT BusinessEntityId FROM Person.Person WHERE LastName = ‘Smith...
  • Blog Post: Debugging story: Slowness due to NTFS short file (8.3) name generation

    When I teach production debugging to my customers, I always tell them that be successful you need to not only know the right tool and command syntax, but also know the right methodology . And perhaps even more importantly when debugging certain types of issues, knowledge of Windows Internals and the...
  • Blog Post: Considerations when using the TransactSql.ScriptDOM parsers

    Some of you might be aware of the above namespace , which holds an implementation of a first-class T-SQL parser. In this post I would like to explain some of the complexity you will face when dealing with the ScriptDOM yourselves, typically using Visitor pattern. Case Study Our objective in this case...
  • Blog Post: SQL collation and performance

    Recently a colleague asked me if SQL collations have any impact on performance. We also hit upon another question: do local variables (DECLARE @somevar <datatype>) have a collation associated with them and if so how is it controlled? Let us take some simple examples to demonstrate these points...
  • Blog Post: Windows Performance Toolkit: Finding CPU consumer

    A colleague of mine recently asked the question ‘I see CPU N is constantly pegged at 100%; is there any good way to determine which specific process is using that specific CPU?’ Well, he already figured that Task Manager or Process Explorer does not provide that information. And by definition purely...
  • Blog Post: TEMENOS T24 Core Banking Optimized on Microsoft SQL Server Database Platform

    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. http://blogs.technet.com/cfs-file.ashx/__key/CommunityServer...
  • Blog Post: SQLDiag Configuration Tool released

      My colleague and friend, boB Taylor (the spelling is not a typo – please visit http://www.opsvault.com/meet-our-contributors 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.) Download...
  • Blog Post: OPTION(RECOMPILE) redux (a.k.a. Parameter Embedding Optimization not working)

    A long time ago, I had blogged about the perils 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;...
  • Blog Post: Performance Dashboard Reports in SQL Server 2008

    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...
  • Blog Post: RESOURCE GOVERNOR: Difference between MAX_MEMORY_PERCENT and REQUEST_MAX_MEMORY_GRANT_PERCENT settings

    Resource governor is a useful feature in SQL Server 2008 which can provide instance-level throttling of CPU and memory resources. I will not dwell into the basic details and architecture, as they are very well documented in Books Online and also in the reference links mentioned at the end of this post...
  • Blog Post: Wait types in SQL Server

    Troubleshooting performance issues in SQL Server involves studying the wait types and wait times associated with the queries executing. However, the relevance of each of the various wait types in the output can be a mystery. For SQL Server 2000, the cumulative wait types can be observed using the...
Page 1 of 1 (15 items)