1

As part of an upgrade to Sharepoint 2010 from 2007, I've been removing old FAB40 templates by using the following process for each FAB40 solution;

  1. Delete any sites which use the solution, and ensure the site is also deleted from the Recycle Bin.
  2. Examine the Mainfest.xml file to find out what features the solution uses.
  3. Deactivate and then uninstall all the referenced features.
  4. Retract and then remove the solution.

While most solutions appear to have cleanly removed, some have left workflow definitions behind, which both the pre upgrade check and upgrade logs trigger a warning for. For example, the asset tracking module (physicalassettracking.wsp) leaves the following files behind according to the pre upgrade checker;

Path = [C:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\12\Template\Features\AssetTrackingModules\_tsafix_Approve.xoml.wfconfig.xml], Reference = [1], Status = [Missing]
Path = [C:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\12\Template\Features\AssetTrackingModules\_tsafix_Reject.xoml.wfconfig.xml], Reference = [1], Status = [Missing]
Path = [C:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\12\Template\Features\AssetTrackingModules\Approve.aspx_fixtsa_.xml], Reference = [1], Status = [Missing]
Path = [C:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\12\Template\Features\AssetTrackingModules\Approve.xoml_fixtsa_.xml], Reference = [1], Status = [Missing]
Path = [C:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\12\Template\Features\AssetTrackingModules\Reject.aspx_fixtsa_.xml], Reference = [1], Status = [Missing]
Path = [C:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\12\Template\Features\AssetTrackingModules\Reject.xoml_fixtsa_.xml], Reference = [1], Status = [Missing]

Adding and then deploying the solution eradicates these errors from the pre upgrade check, but isn't ideal for the 2010 upgrade.

If I perform a search on the database for the file reference using the query detailed in this Technet thread, i'm told that it is referenced in the DirName "Workflows/Approve", which isn't accessible via the standard SharePoint web interface.

How can I remove the references to these files from my SharePoint database? I could manually remove the records from the database but this is dangerous and unsupported by Microsoft.

1 Answer 1

1

I eventually contacted Microsoft about this issue, but managed to resolve it myself before they did.

It is possible to export individual sites, or sub-sites, using the stsadm -o export command. This takes all of the site content and places it in to a cabinet file ready for importing in to a different site. I exported each site in my SharePoint site collection using the following command syntax;

stsadm -o export -url http://sharepoint/SITE  -filename sites/SITE.cmp -includeusersecurity -haltonfatalerror -haltonwarning -versions 4 -cabsize 900

This exports the site at http://sharepoint/SITE, includes user security settings (such as who created each item) and includes all content versions. The cabsize needs to be set fairly high otherwise not all content will be placed in to the same cabinet file, which may cause issues.

After exporting every site, I created a new web application and site collection using a separate, clean database. I then imported each site using the following command syntax;

stsadm -o import -url http://sharepoint:48764/SITE -filename sites/SITE.cmp –includeusersecurity

After the import was complete, I checked that all of the sites had imported successfully and then took a backup of the new database and performed a database attach upgrade on my new SharePoint 2012 farm, which now completed without the original errors I had within my question.

It's a bit of a long winded solution, but it has allowed me to upgrade my SharePoint 2007 sites cleanly in to SharePoint 2010.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.

Not the answer you're looking for? Browse other questions tagged or ask your own question.