In order to get the job done, sometimes you have to spend some time searching for the right tool. This was the case for me over the last few days as I was working to prepare a MOSS 2007 site collection for migration to SharePoint 2010. The site collection had several of custom features that we’re not migrating to SP 2010. Unfortunately, these custom features could not be easily removed, and there were references to them throughout the site. The SP 2010 STSADM preupgrade check (which ships with MOSS 2007 SP2) was reporting a number of features as “Missing”:
I originally tried using Stefan Gossner’s extremely useful tool, WSSRemoveFeatureFromSite (http://code.msdn.microsoft.com/WssRemoveFeatureFrom), and was able to remove about half of the problematic features. However, there were still about nine features flagged by the preupgrade tool, and Stefan’s tool was failing with this error:
Error: Url is not a valid URL for a site!
(The URL was valid and the site was fully accessible.)
After a little more searching, and I found the following cool utility:
SharePoint Feature Administration and Clean Up Tool
http://featureadmin.codeplex.com
This cool program is nothing less than a Swiss Army knife for managing features in SharePoint. It shows you which features are installed in your farm (farm, site collection, and web level), you can also activate/deactivate features, uninstall features, and (my favorite function!) – scan for problem features in the farm and remove them on the spot!
I ran it against my farm and it located and removed all problem features from the site collection (I double-checked each feature that was being removed, and they all were features flagged by the STSADM preupgradecheck).
As a result, the SharePoint 2010 preupgrade check now reports ZERO problematic features.
Awesome!!!
thank you so much! You saved my day!
Some very helpful info here: http://bit.ly/bX9aIu
Do you have any suggestions for an already converted SP 2007 to SP 2010 server to remove problem features?
The FeatureAdmin tool that I mentioned in my post should allow you to remove any problem features – did you try it?
Yes I tried on SP 2010 and it errors out and shuts down. I can send error msg if need be.
Yes, please post the error message here. Thanks.
Looks like I cant post an image so I will type the error message out:
————————————————————–
Unhandled exception has occurred in your application. If you click Continue, the application will ignore this error and attempt to continue. If you click Quit, the application with close immediatetly.
Access is denied. (Exception from HRESULT: 0x80070005 (E_ACCESSDENIED)).
————————————————————–
When I select continue … nothing happens.
I have access … I am the secondary site collection administrator.
It sounds like you don’t have permissions to run this tool. Make sure that you have full control access to the web application, a member of farm administrators group, and a local administrator on the SharePoint server.
And you have to have owner rights on the content database and the sp_config database in some cases.
There exists a newer version for the feature admin for SP2010, that has a bit more detailed message, if access is denied.
Run as Admin
This didn’t help me. I have 5 unknown features that must of been installed and improperly uninstalled prior to me. Precheckreport finds it. SQL Query and the tools above don’t. Any ideas would be great?
I have a similar problem…. to make my point as clear as possible I have confirmed I have full sysadm privileges on all of the servers and databases for the 2003/2007 WSSv2/v3 install.
I have found several PWA (yes someone added this crap back in the day) that is unused and in the way as well as some “unknown” features.
When I use the FeatureAdmin tool am/was able to remove 2 features but i have a remaining list of 6 I can’t find a cross reference to in the installedfeatures window
Id = 1a8eda1f-6a8c-d5b9-0a7a-062455488c90, Type = Unknown, Reference = 214, Status = Missing
Id = 7fbf9a80-8ae1-fa7e-9c51-30a786d33155, Type = Unknown, Reference = 11, Status = Missing
Id = 05974d0c-46a4-9d38-d45d-4eaf621a4727, Type = Unknown, Reference = 3, Status = Missing
Id = a44e9e5e-38e7-d1b3-de0e-991ef569e8c9, Type = Unknown, Reference = 1, Status = Missing
Id = e508702d-fc7f-a216-cef9-99feaa23cbc6, Type = Unknown, Reference = 1, Status = Missing
Id = 3f3b712f-ac4b-ff3f-ad42-a12f01b9623f, Type = Unknown, Reference = 1, Status = Missing
When I try to run the “find error” after the cleaning was done I now get the “Access is denied. (Exception from HRESULT: 0×80070005 (E_ACCESSDENIED))” error that dead ends to no where.
Any headway other than drilling out things from the db would be appreciated.
Did you try running stsadm -o uninstallfeature command, using the site IDs that were generated in your report?
More info here: http://technet.microsoft.com/en-us/library/cc262976(office.12).aspx
I have been a bit reluctant to simply use the “uninstallfeature” command because no where in the log does it tell me which site id’s may be or are actually using them.
I was looking through methods to find the features in use but have not had success with it.
If the pre-check does list the site, IF AND ONLY IF, the feature is in use by the site, AND my check DOES NOT list any sites, IS THIS a reason to believe the features are NOT USED just installed?
In your case, you’ll need to use PowerShell to obtain an inventory of all features installed in the farm (all scopes, web app, site collection, and web) and look for the GUIDs in question. Here’s a script that could be helpful: