Do I really need to use DTC Transactions?

It is sometimes common practice to enable Distributed Transaction (DTC) behavior but it can be unnecessary, and adds unwanted overhead.   DTC has the ability to determine single phase vs two phase commit requirements.  A DTC transaction involves resource managers (RMs) of which SQL Server can be one of them.  If a single resource manager is…


How It Works: XEvent Output and Visualization

Each and every day I use XEvent more and more as I uncover the powerful feature set.   I am finding it helpful to understand some of the input and output capabilities in order to leverage the power of XEvent. Server File Output When setting up an session to write to a file use per CPU…


SQL Server: Correlating Timestamps From Various Data Points

I was looking at data from a customer, in a different time zone (UTC+1) from mine, this week involving SQL Server AlwaysOn (HADRON) and found that lining up the timestamps in the various logs was challenging.   Some times are local to the SQL Server instance, others UTC and yet other utilities attempt to adjust the…


SQL Server 2012 – True Black Box Recorder

This would be a perfect time to post a blog talking about the new SQL Server 2012 features.  However, I am going to leave that activity to the marketing folks (AlwaysOn, T-SQL Enhancements, …).   I want to talk about something that might not appear on the top of a marketing or sales checklist but for…


Easy JDBC Logging

I have been supporting Microsoft’s JDBC driver for almost six years now and the one thing with which I always struggle is getting logging going.  JDBC logging is probably some of the most useful logging out there (I only wish BID tracing were so easy to enable and consume!), but for some reason I always…


Trace shows the incorrect Session Login Name

The is more of an FYI blog post but I have read several blog and forum posts on this subject and I decided to dig into the behavior which revealed a trace bug. For the vast majority of events the Session Login Name represents the originating session credentials where as the Login Name represents the…


RML How Are Comparison Diffs Calculated

A short but good discussion about the RML comparison DIFF calculations.   From: Robert Dorr Sent: Wednesday, January 26, 2011 10:21 AM Subject: RE: MSDN Blogs: Contact request: RML Tools: Estimated Comparison Differences   Thanks for the question and feedback.   For example ProjectedCPUDiff is one of the columns in tblComparisonBatchPartialAggs   ·         The hash…


Replay Result Set Event (Replay * Events)

From: Robert Dorr Sent: Friday, August 13, 2010 8:58 AMSubject: RE: SQL Server Trace Replay – “Replay Result Set Event”  The Result Set event is one of several client side replay events.  Here are some of Common Result Event Columns Text Returned values for example  DECLARE @edition sysname; SET @edition = cast(SERVERPROPERTY(N’EDITION’) as sysname); select…


How Do I Determine Which Dump Triggers Are Enabled

_____________________________________________ Subject: RE: dumptrigger question They don’t survive service restart. SQL 2000 did not have dumptrigger enabled for all error messages and I think 1105 is an ex_callprint instead of ex_raise so it won’t work but I would have to look at the code to be certain.  SQL 2005 and 2008 enable many more dumptrigger…


Why Should I Use Extended Events in SQL Server 2008?…

You may or may not have heard of a new diagnostic technology in SQL Server 2008 called Extended Events (XEvent). I thought I would post an example of why this technology can do things nothing else we have can when you deploy SQL Server 2008. Someone internally contacted me about a problem they were having…