Think Your PC has a Fast CPU?

I’m in the process of putting together the spec. for a new PC using one of the new Intel i7 chips, the Quad core 920 2.66MHz. I’ve been holding off until they (and the motherboards) fall out of the premium price bracket, which due to the less than stellar Aussie Dollar, is taking a bit longer than expected. I was interested how the top end CPUs compared and came across this very interesting benchmark graph. (OK, I know benchmarks should be taken cum grano salis)

Check out that quad Opteron 8354. Sweet!

SQL Server’s Built-in Traces

Most people are aware that when SQL Server is installed, it starts a lightweight background trace known as the default trace. If this has not been disabled (and it’s unlikely that it will have been), this trace will be running with a trace ID of 1:

SELECT * FROM sys.traces

This trace includes a small set of events for server starts and stops, object deletion and creation, log and data file autogrowth and other changes at the database level. One of the things this trace is useful for is unexpected events, such as finding out who dropped a table. You can examine the default trace’s contents in the same way as any other trace using fn_trace_gettable():

DECLARE @path varchar(256)

SELECT @path = path
FROM sys.traces
where id = 1

SELECT *
FROM fn_trace_gettable(@path, 1)

Another less known background trace that comes preconfigured with SQL Server 2005 is the BlackBox trace. Its primary use is in diagnosing intermittent server crashes and can be started by setting the @options parameter of sp_trace_create to 8. This trace uses 2 rollover files and toggles between them as one reaches its maximum size, which is configurable. A great tip from Chapter 2 of “Inside Microsoft SQL Server 2005: Query Tuning and Optimisation” is to wrap the blackbox trace definition in a stored procedure, and configure the stored procedure to run when SQL Server starts (that way intermittent problems are more likely to be captured after restarts):

USE master
GO
CREATE PROCEDURE StartBlackBoxTrace
AS
BEGIN
DECLARE @TraceId int
DECLARE @maxfilesize bigint
SET @maxfilesize = 25 –- 25MB maximum file size
EXEC sp_trace_create
@TraceId OUTPUT,
@options = 8,
@tracefile = NULL, — NULL = default SQL Server data file folder location: you might want to change this…
@maxfilesize = @maxfilesize
EXEC sp_trace_setstatus @TraceId, 1
END
GO

Set the procedure to start automatically when SQL Server is started:

EXEC sp_procoption ‘StartBlackBoxTrace’, ‘STARTUP’, ‘ON’

Resharper: Navigate from Here

Did you know that JetBrains have a .NET blog, covering their .NET tools, including Resharper and dotTrace?

Here’s a Resharper Navigation gem from November: Navigate from Here

[The Resharper keyboard shortcut sheet is here: http://www.jetbrains.com/resharper/docs/ReSharper40DefaultKeymap.pdf]

Perth UG Meeting Thurs Dec 11th, 5:30pm – 7:30pm: DevJam Community Event

A quick reminder for anyone intending to come along to DevJam event.

The line up for this week’s DevJam meeting of the Perth .NET User Group (Thursday, 11th Dec) has been finalised:

Hadley Willan: Implementing IDisposable
Tiang Cheng: Visual Studio Testing Techniques
Adrian McGrath: Configuration Management Introduction
Michael Minutillo: Test-Driven Philosophy
Jeremy Thake: Azure
James Miles: LINQ->WPF
Alastair Waddell: WCF Syndication Feeds

DATE: Thursday, December 11th, 5:30pm
VENUE: Excom, Ground Floor, 23 Barrack Street, Perth
COST: Free. All welcome

There will be pizza and refreshments.