The Bit Bucket

Book Review: Fast Track to MDX

Another book that I re-read while travelling last week was Fast Track to MDX. I still think that it’s the best book that I’ve seen for introducing the core concepts of MDX. My colleague Mark Whitehorn, along with Mosha Pasumansky and Robert Zare do an amazing job of building MDX knowledge throughout the book.

I had dinner with Mark in London a few years back and I was pestering him to update this book. The biggest limitation of the book is that it was written for SQL Server 2000 Analysis Services, yet it still provides an excellent introduction to MDX. The knowledge from the three authors and Mark’s entertaining writing style make this still a “must-have” book for anyone learning MDX.

2011-06-21

Book Review: Microsoft SQL Server 2008 Analysis Services Unleashed

Yet another book that I started re-reading last week (but haven’t finished again yet as it’s so large) is Microsoft SQL Server 2008 Analysis Services Unleashed by Irina Gorbach, Alexander Berger and Edward Melomed.

This book has always left me with mixed feelings. The authors clearly offer expert level knowledge on the topics (as they were part of the development team for the product) but I struggle with the “readability” of this book. As an example, each time a concept is introduced, it is done so with accompanying XMLA code snippets, etc.I suspect that a lot of readers would be put off by the XMLA. Most people just don’t think in XMLA.

2011-06-21

SQL Server 2008 R2 Cumulative Update 8 now available

CU8 is now available for SQL Server 2008 R2.

It includes the following fixes:

VSTS bug number KB article number Description
726734 2522893 ( http://support.microsoft.com/kb/2522893/ ) FIX: A backup operation on a SQL Server 2008 or SQL Server 2008 R2 database fails if you enable change tracking on this database
730658 2525665 ( http://support.microsoft.com/kb/2525665/ ) FIX: SQL Server 2008 BIDS stops responding when you stop debugging a SSIS 2008 or a SSIS 2008 R2 package
639374 2525665 ( http://support.microsoft.com/kb/2525665/ ) FIX: SQL Server 2008 BIDS stops responding when you stop debugging a SSIS 2008 or a SSIS 2008 R2 package
701471 2530913 ( http://support.microsoft.com/kb/2530913/ ) FIX: “Error: 17066” occurs when you create a partitioned nonclustered index in SQL Server 2008 R2 if a parallel execution plan is used
708511 2535660 ( http://support.microsoft.com/kb/2535660/ ) FIX: Role membership is synchronized even if the SynchronizeSecurity element is set to the SkipMembership value in SSAS 2008 or in SSAS 2008 R2
711297 2537467 ( http://support.microsoft.com/kb/2537467/ ) FIX: You cannot use SQL Server Management Objects (SMO) to transfer data from a table in SQL Server 2008 or in SQL Server 2008 R2
713677 2539098 ( http://support.microsoft.com/kb/2539098/ ) FIX: “Runtime error: the property DBPROP_MSMD_UPDATE_ISOLATION_LEVEL cannot be found” error when an application tries to create a connection to SSAS 2008 R2
702342 2539378 ( http://support.microsoft.com/kb/2539378/ ) FIX: Replmerg.exe crashes when it enumerates changes to a statement in SQL Server if the stored procedure contains more than 4,000 characters
720633 2545989 ( http://support.microsoft.com/kb/2545989/ ) FIX: “A time-out occurred while waiting for buffer latch” error when many transactions concurrently update a database in SQL Server 2008 R2 if the database uses the snapshot isolation level
721958 2547017 ( http://support.microsoft.com/kb/2547017/ ) FIX: Instances of DAX functions that have no names incorrectly appear when you add a calculated member to a report that uses an SSAS 2008 R2 database as a data source
737837 2559662 ( http://support.microsoft.com/kb/2559662/ ) FIX: Slow performance when you render a report that returns a long string of text in SSRS 2008 R2 if the text contains no carriage return characters
738049 2562753 ( http://support.microsoft.com/kb/2562753/ ) FIX: Slow performance when an MDX query uses unary operators on parent/child hierarchy members in SSAS 2008 R2 if you define a scope calculation on these members and if the query accesses multiple dates in a time dimension
722165 2563216 ( http://support.microsoft.com/kb/2563216/ ) FIX: Dynamic image does not work in a page header or footer in SSRS 2008 R2 if the value expression uses the Global!PageNumber variable
704879 2563924 ( http://support.microsoft.com/kb/2563924/ ) FIX: “The incoming tabular data stream (TDS) protocol stream is incorrect” error when the SQLPutData function inserts the SQL_NULL_DATA value in a TVP in SQL Server 2008 R2

2011-06-21

Book Review: Microsoft PowerPivot for Excel 2010: Give Your Data Meaning

I’m loving my Kindle. I seem to be getting through books so much faster. One book that I recently read was Book Review: Microsoft PowerPivot for Excel 2010: Give Your Data Meaning by Marco Russo and Alberto Ferrari.

I really liked this book. It provided quite good coverage of PowerPivot use in Excel 2010 and also spent some time mapping the use of PowerPivot to organizational requirements. Marco and Alberto provided more coverage of DAX (Data Analysis Expressions) than I have seen anywhere else, particularly in relation to the CALCULATE verb.

2011-06-01

DCL clauses in CREATE SCHEMA

I’ve never been very keen on the option to add additional clauses in the CREATE SCHEMA statement as I’ve seen lots of issues when scripts are executed manually. You get a different outcome, depending upon how you execute it. For example:

CREATE SCHEMA SomeSchema AUTHORIZATION Someone

CREATE TABLE Blah (Some table definition);

If someone executes the first line on its own, then the second line, the table gets created in their default schema, whereas if they execute the statement as a whole, the table gets created in the new schema. But the one that makes no sense to me is the DCL clause. If I change the above to:

2011-06-01

Review: Kindle (Amazon)

Since I’ve been posting book reviews, I’ve already had a few questions about the Kindle and what I think about it.

I have the 9" DX with 3G and love it. The 3G is so useful. You don’t need to have a 3G provider account and it just seems to work almost everywhere I travel to (including even China). I’m not sure how Amazon make that work but it’s great. I see a book, click to order it and moments later the book is on my Kindle.

2011-06-01

UPDATE against a table-valued function when declared inline

The other day I mentioned to a friend that you could only perform an UPDATE against a table-valued function in T-SQL when the function was declared as an inline TVF. He basically didn’t understand the point being made at all. That’s not really suprising as the idea of performing an UPDATE against a function does my head in, in terms of everything I ever thought I knew about programming languages.I really don’t think it should even be permitted but regardless, here’s an example:

2011-05-22

Ola Hallengren's Database Maintenance Scripts

Our buddy Ola Hallengren has released another version of his database maintenance tooling. (Free !) I’ve seen quite a lot of people using Ola’s scripts rather than standard database maintenance plans, and with happy outcomes.

In the new version, he has optimized performance in IndexOptimize for databases with large number of indexes or SQL Servers with large number of databases. Ola said that the time for rebuilding or reorganizing indexes is the same, but the time for investigating indexes has been reduced.

2011-05-20

Skype Error: Exception EXMLDocError in module ezPMUtils.dll at 000E8FCA

Skype sent down an auto-update today. Looks like it’s now 5.3.0.111. Regardless, every time I started Skype, it said:

Exception EXMLDocError in module ezPMUtils.dll at 000E8FCA

Reboots, etc. didn’t fix it. What did fix it was moving the file ezPMUtils.dll from the folder C:\Program Files (x86)\Skype\Plugin Manager to the folder C:\Program Files (x86)\Skype\Plugin Manager\MLS. Note that at first I tried copying the file to that folder but that did not fix the issue. Moving the file, however, did “fix” the issue in that the error no longer occurs. But of course, the extras manager also no longer functions. It would be really great to see *something* from the people at Skype about this issue.

2011-05-15

Changing drive letters: "The parameter is incorrect"

This error that I came across today typifies what I hate about error messages that I see in various programs.

I was trying to change a drive letter in the system management console in Windows Server 2008 R2. I had upgraded my drive to a new drive and when I restarted my Windows Server VHD installation, it had reassigned all my drive letters. So I tried to set the Drive D drive letter to Drive L (back to the same drive letter it used to have). I had previously changed the Drive E to Drive G without an issue. But when I tried to make this change, the error message popped up saying “The parameter is incorrect”.

2011-05-12