Thursday, April 25, 2013

Upgrade to SP2013, part 2: Clean up first!

I had a look at what Technet suggests as upgrade steps, and here is the table. I don't see anything about preparing your database for Claims authentication, as was so much spoken of at the conference. It will have to be a trial and error.
 
 
On my SP2010 test server, I have a restored copy of our intranet and I will use that to test upgrade to SP2013 so I get as a real scenario as possible. Will be interesting to see what happens with our branding and structure... :)
 
Before I moved the content database to the new SP 2013 server, I did a clean up on my SP2010 server. Better of not moving shit over if it can be resolved first.


Looked inside Health Analyzer, and of course there are some messages in there about farm accounts (you know what I mean, I am sure about that!) but there are also stuff that really matters like orphan items, missing server side dependencies etc. I had a message about orphan items in the database, so I just clicked on “Repair automatically” and refreshed and it was gone. For the "missing server side dependencies" it requires a bit more work!

I ran this powershell command to test the content databases:
Test-SPContentDatabase -name WSS_Content -webapplication https://intranet.xxxxx | out-file e:\upgrade\upgrade.txt -width 500
Got the following results from that:

Category  : MissingFeature
Error        : True
UpgradeBlocking : False
Message         : Database [xxx] has reference(s) to a missing feature: Id = [xxx], Name = [Weather Web Part], Description = [Displays the Weather], Install Location = [WeatherWebpart].
Remedy          : The feature with Id xxx is referenced in the database [xxx], but is not installed on the current farm. The missing feature may cause upgrade to fail. Please install any solution which contains the feature and restart upgrade if necessary.

Category      : MissingSetupFile
Error           : True
UpgradeBlocking : False
Message         : File [Features\Taxonomy_WebPart_Feature1 \Taxonomy_WebPart\Taxonomy_WebPart.webpart] is referenced [1] times in the database [xxx], but is not installed on the current farm. Please install any feature/solution which contains this file.
Remedy          : One or more setup files are referenced in the database [xxx], but are not installed on the current farm. Please install any feature or solution which contains these files.

Category        : MissingAssembly
Error           : True
UpgradeBlocking : False
Message         : Assembly [xxx.Eventhandler, Version=1.0.0.0, Culture=neutral, PublicKeyToken=xxx] is referenced in the database [xxx], but is not installed on the current farm. Please install any feature/solution which contains this assembly.
Remedy          : One or more assemblies are referenced in the database [xxx], but are not installed on the current farm. Please install any feature or solution which contains these assemblies.
Since the UpgradeBlocking status False on all of them, then I guess it’s no need to worry but I have tried to resolve most of these errors anyway to clean up the database. First thing is to check where a solution is added, and to do that just run this SQL query on your content db:

Select * from Webs where SiteId in (select SiteId from Features where FeatureId = 'guid')

And then I could go to that site and remove for instance webparts from the web part gallery that was no longer referenced. Removed them from both Recycle bin and Site collection recycle bin. Ran the test-spcontentdatabase cmdlet again and it was gone.

I also used FeatureAdmin2010 (amazing tool from Codeplex!) to search through the farm and removed the files that it suggested.

No comments: