ISWIX, LLC View Christopher Painter's profile on LinkedIn profile for Christopher Painter at Stack Overflow, Q&A for professional and enthusiast programmers

Friday, March 20, 2009

SQL Server 2005 SP3 Horrible Setup Experience Results in BSOD

I maintain a bootstrapper at work and recently we were asked to update SQL Server 2005 SP2 to SQL Server 2005 SP3.

Not a big deal, right?

Wrong!

When installing SQL 2005 SP3 the setup just blows chunks and reboots the computer via blue screen of death!

Worse, the machine goes into an infinite reboot because the installation is an incomplete state and everytime the SQL services try to start the machine BSODS again.

You can boot safe mode and disable the services and then reboot again. But if you attempt to uninstall SQL server you get an error message saying it can't be accomplished.

Wow, thank you Microsoft, you've outdone yourself yet again.

So in digging into this problem it seems that the SQL team is punting to the Windows team. They are saying that they manifested PE files for Vista/2008 in SP3 and that due to a bug in Windows SXS on SP2 ( hotfix available for SP2 or otherwise update to SP3 ) that there is nothing the SQL team can due to solve this.

Um, they could at least put an AppSearch/LaunchCondition into their install so that my machine doesn't turn into a burning pile of dung!

Anyways here's my official warning. Avoid SP3 like the plague and if you must go there, make sure you provide your own prereq check for SP3 or SxS hotfix level in and as always make sure you integration test your installs on the lowest platform configuration possible. I'd hate for some ISV to test on SP3, never see this problem and then ship a product that embeds SQL to a customer. I'd hate even more to have to be taking that BSOD support call.

10 comments:

  1. Another installer...March 20, 2009 at 10:09 AM

    Don't get me started on having to install SQL as a pre-req... Of all of our customer install problems, SQL express is the main culprit. Thanks for putting the warning out!

    ReplyDelete
  2. Just this week this bit us too. We found a fully patch XP SP2 also fixes the issue.

    ReplyDelete
  3. Hotfix is at http://connect.microsoft.com/SQLServer/feedback/ViewFeedback.aspx?FeedbackID=421348, which directed me to hotfix at http://connect.microsoft.com/SQLServer/feedback/ViewFeedback.aspx?FeedbackID=421348 which is hotfix 184176.

    Worked for me.

    ReplyDelete
  4. I know there's a hotfix ( and a service pack ) but that's not the point.

    The point is the hotfix was posted in Oct of 2006. SQL 2005 SP3 wasn't posted until December of 2008.

    It would be really nice if the SQL server team could be aware of this issue and writing a LaunchCondition in their install to prevent customer machines from blue screening.

    ReplyDelete
  5. Thanks for reporting this, and including the link to further information. I just discovered the same symptoms yesterday, while testing our bootstrapper’s attempt to upgrade from SQL 2005 SP2 to SP3 on a Virtual PC. It’s good to know I’m not alone!
    Microsoft states that the hotfixes should only be applied "to systems that are experiencing this specific problem". So, what is a bootstrapper supposed to? By the time a machine experiences the problem, the bootstrapper has lost control to a perpetual reboot. Is there any logical test that it can perform to determine ahead of time that the operating system is vulnerable?
    It sure looks like the hassle of upgrading far outweighs the risk of not upgrading.

    ReplyDelete
  6. That's Windows XP SP2 issue so we shouldn't generalize that SP3 is bad.

    I installed it many many times , some on cluster and no single failure

    ReplyDelete
  7. I experienced the problem as well and got my Windows XP SP2 system into the same BSOD endless loop. However, I am thankfully running SQL Server 2005 in a Win XP SP2 virtual machine, so I had the foresight to use a VMWare snapshot BEFORE I got myself into a total mess.

    I was trying to upgrade SQL Server 2005 Developer Edition to SP3 from no SP. The Setup presents a dialog with several options, you click Next a time or two and then you're presented with a screen in which you can click Test to test your SQL Server database connection (and report server, in my case). When I click Test, I get a delay of about 10 seconds and then a blue screen of death (BSOD).

    At that point, the operating system reboots--and, interestingly, something so serious is trashed that it shows a BSOD again BEFORE I CAN EVEN LOG ON TO Windows again! So the machine simply reboots ad infinitum.

    To the guy who says it's a Windows XP issue and who cautions us not to generalize about the horrible-ness of SP3: Are you (*#&#& kidding me????????? Operating systems aside, what the hell is wrong with Microsoft to not identify and FIX this issue? I don't give a damn whether it's a Windows issue or not--as far as I am concerned it is a SQL SERVER SETUP ISSUE. I have written setup programs/scripts for more than 10 years and NEVER NEVER NEVER has a single one of them ever caused a BSOD. This is RIDICULOUS. And the fact that it happens while testing the connection--it means that Setup is doing something it should not be doing.

    I am DISGUSTED with Microsoft for this and I think the SQL Server 2005 team should be ashamed to share SP3 with its user base.


    And why, after all this, is there not an SP4?

    ReplyDelete
  8. After using information written by others in this Blog, I succeeded installing SP3 for SQL Server 2005 in a Win XP SP2 VMWare virtual machine.

    The link I used (which no one else has posted here) is:
    http://support.microsoft.com/hotfix/KBHotfix.aspx?kbnum=921337&kbln=en-us
    The main KB is here:
    http://support.microsoft.com/kb/921337

    I think it is REALLY important to apply this patch before you attempt to apply SP3 (and I'm not talking about Win XP SP3--I'm talking about SQL Server 2005 SP3) to any SP-level (no SP, SP1, or SP2) of SQL Server 2005. (Note: I was able to successfully install SP1 and SP2 but not SP3--SP3 failed when SQL Server 2005 was at no SP as well as at SP2, so SP3 is a problem no matter what SP-level SQL 2005 is at). While I run SQL 2005 Developer Edition--and others have reported the SP3 issues in SQL 2005 Express--I do not think the SP3 issues are related to the flavor of SQL 2005 you're running: I think these issues affect all SP-levels and flavors of SQL 2005. Also, it seems to apply ONLY to people who are running Windows XP and not to those running Vista (although I have only tested under XP SP2).

    If you are not lucky enough to be able to test your SP3 attempt in a virtual machine snapshot, then I cannot recommend highly enough that you should create a Windows Restore Point before attempting SP3. That way, if you end up getting into a BSOD loop, you can boot to safe mode and restore to your restore point before rebooting normally. While that presumably will work, I cannot be entirely sure that whatever gets corrupted by SP3 and causes the BSOD is not outside the registry--in which case you may have to run SFC (system file checker) or perhaps even reinstall XP on top of your existing installation (at least you won't lose your programs and data). Obviously, it would be a lot less of a headache to just install the hotfix before installing SQL 2005 SP3.

    I really hope my comments help someone else. Installing a service pack should never be this frustrating.

    I will try to check back here if anyone has questions.

    ReplyDelete
  9. This correctly resolved the issue, thanks for the post. This hotfix can be installed from Safe Mode if you get into the restart loop. The hotfix download shows it is for Windows XP, English, x86, sp3, Fix184176. But it is actually for sp2 of winxp so don't worry when you see this.

    Thanks again.

    ReplyDelete
  10. this problem occurs because when Csrss.exe is loading an .exe file or a .dll file that contains a manifest that has Windows Vista extensions. When parsing the embedded manifest, its internal memory can be corrupted if it finds a single tag that has two schema properties

    Please try this Link:
    http://support.microsoft.com/kb/921337

    your Problem will gone out.

    ReplyDelete