Had an interesting issue recently, where I had some issues installing a SQL 2008 cluster on Windows 2008 R2 – installing a slipstreamed SQL 2008 with SP1. After finally installing the cluster correctly – testing SQL failover correctly etc – I was satisfied I had a properly functional SQL Server installation.
However, I then had a failure attempting to apply Cumulative Update 6…
CU6 failed to apply with error :
‘A failure was detected for a previous installation, patch, or repair during configuration for features [SQL_Engine_Core_Shared,CommonFiles,SQL_WRITER,SQL_Browser_Redist,]. In order to apply this patch package (KB968369), you must resolve any issues with the previous operation that failed. View the summary.txt log to determine why the previous operation failed. ‘
Note – to look in detail at installation failures – look at directory C:\Program Files\Microsoft SQL Server\100\Setup Bootstrap\Log
A little investigation led me to believe that I needed to run the repair option from the SQL installer.
ie – from the SQL server installer – select maintenance, repair option..
To my horror, my repair then failed :-
Note – I’ve erased the SQL instance name in the above screenshot…
I now assumed that, due to previous errors, I’d got a rogue process still running – but after rebooting the server, I still got the same error.
Now stumped, I decided it was time to downloaded the excellent Sysinternals tool.. specifically the process explorer…
With process explorer, I was easily able to identify that a WMI process was using the DLL mentioned above. I killed the process, reran CU6 – everything worked fine.
I strongly recommend every production SQL DBA should spend some time familiarising themsevles with the sysinternals toolset.