In discussion
with Microsoft OS support escalation engineers during a SQLServerFAQ meeting one
of them revealed that the most common issue that is raised
with them is when a system rolls or refused to install back a
service pack or patch or hotfix.
So why do some systems stubbornly refuse to upgrade
or accept service packs? If at some time in the past the
system drive became full and a well meaning engineer cleared off
"unused" or old files then, this could be the smoking gun. The
major reason for service packs failing or rolling back
was the deletion or loss of MSP files. And a frequent cause of
their deletion was freeing space on full system drives. A missing
MSP file will cause subsequent patches which refer to this file to
fail and roll back. It is difficult to copy these files from other
systems as they are given a GUID name when when are
created by the msi install process. The most straight forward
solution is a complete reinstall. So the moral is: don't delete or
let anyone delete *.msp files! They don't stop your system working
but they do stop upgrades!