Failed Upgrade from SQL Server 2005 sp2 to SQL Server 2005 sp4 SQL Server Standard 2005 sp2 32bit running on Windows 2003 Standard 32bit service pack 2.

I attempted a service pack upgrade from sp2 to sp4 using SQLServer2005SP4-KB2463332-x86-ENU.exe and received the following error:

Property(S): UpgradeInstruction = Connect to SQL instance MYSERVER as sysadmin
Launch SQL statement USE master
Launch script file d:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\Install\sysdbupg.sql
Launch script file d:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\Install\DbEngine_hotfix_install.sql
Launch script file d:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\Install\repl_hotfix_install.sql
Stop service MSSQLSERVER
Property(S): SqlUpgradeMessage = SQL Server Setup failed to parse the SQL script "d:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\Install\DbEngine_hotfix_install.sql". The error code is The system cannot find the file specified.
. To continue, correct the problem, and then run SQL Server Setup again.


The file d:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\Install\DbEngine_hotfix_install.sql is missing and I have tried this upgrade from two different SQLServer2005SP4-KB2463332-x86-ENU.exe files. 

After the service pack install completed, I was able to start SQL Server and the version was 9.0.5000.  There were no other errors in the logs, but I did rollback the server using a vmware snapshot taken before installing SP4.

I googled around but didn't find anything useful.  

Why would the file DbEngine_hotfix_install.sql file be missing from the service pack installation ?
Almost every time I've had an SP installation issue on a stand-alone server, it was because the resource database was moved or it was not in the same directory as the master database.

Many articles I'm finding correlate your error to this exact conclusion including this one.

I would start there and if you find it to be the case, move the system databases back to where the resource database is.

If that doesn't work, try re-applying SP2.  If all of the components weren't patched during the SP2 upgrade, you could experience this issue.

Lastly, verify service account permissions and permissions of the account you are running the SP4 with.