Issue with performing a database attach upgrade from 2007 to 2010. Apparently, when you have additional wildcard managed paths (anything other than '/sites') when you upgrade that database to SharePoint 2010 you will end up with a bunch of explicit managed paths in SharePoint 2010. Here’s how the whole thing looks

2007 Wildcard managed paths

  • /sites
  • /IN
  • /WC

2007 Site collections in content database

  • /
  • /Sites/SCDefault
  • /IN/Inclusion
  • /WC/Wildcard

After attaching the content database to new SharePoint 2010 web application using the 'Mount-SPContentDatabase' PowerShell command, the managed paths section looks like follows

  • /Sites              -  wildcard
  • /IN/Inclusion   -  explicit
  • /WC/Wildcard  -  explicit

image

Clearly, the managed paths created are not the same as they were in 2007 and this is not a scenario we want to be in. For one when we try to create a new site collection named ‘upgrade’ under ‘IN’ we will not be able to create it at ‘/IN/upgrade’ since the managed path for ‘IN’ no longer exists.

Note All of your site collections will still be available in the above scenario.

Solution

Create managed paths before attaching 2007 content databases

Make a note of the managed paths you need before performing the upgrade and follow these steps

  • Create a new web application in 2010.
  • Go into Central Admin > Web Application management and the click your web application
  • Select managed paths from the ribbon to create your wildcard manage paths. 
  • Run the 'Mount-SPContentDatabase' command to upgrade and attach the 2007 content database the 2010.

If you are already facing this issue, follow the steps listed below

  • Go into Central Admin > Manage Content databases and remove the upgraded databases.
  • Once they are detached we need to delete all of the explicit managed paths for the database.
  • Create the wild card paths which you want.
  • Reattach your content database.

that’s it folks!!