Using SharePoint 2007 in a virtualized environment can bring up new or different problems compared to a physical machine. With Hyper-V or VMware ESX you can take a snapshots of your SharePoint 2007 environment including SQL Server. Jumping back to a state in the past can be helpful if something is corrupted. Jumping back can also corrupt your SharePoint farm. In this case a snapshot of the SQL Server was taken and after some time used to go back to a state in the past resulting in the error.
Problem description
After running stsadm with the operation upgradesolution the following error was display in command prompt:
“The object SPPersistedFile Name=SOLUTIONNAME-SOMEGUID.bak Parent=SPSolutionLanguagePack Name=0 has been deleted by another user since it was last fetched.”
I wasn’t able to retract, remove or upgrade the solution neither by stsadm nor using Central administration.
Solution
The reason for this behavior was the retraction of a snapshot regarding the SQL Server. The snapshot was taken at the SQL Server with a certain version of a solution package. After taking the snapshot a new version of the solution package was deployed. Retracting the snapshot resulted in a different state of the solution in the configuration database and on the file system of the SharePoint server.
Fortunately two of my colleagues came up with a solution. Microsoft released a knowledge base article (KB39308) which solves a different problem but can be used to solve my upgradesolution problem too:
Error message when you try to modify or to delete an alternate access mapping in Windows SharePoint Services 3.0: "An update conflict has occurred, and you must re-try this action"
There is a cache folder stored on the SharePoint 2007 server which has to be deleted using the instructions given by Microsoft.