Wednesday, January 15, 2014

Project server 2013 upgrade issues Microsoft did not tell you might be killing you and tips to work around them

Microsoft Project Server 2013 (MPS) provides many cool features that is encouraging companies to upgrade from 2010. Besides the Overview of the upgrade process to Project Server 2013 and Upgrade your databases and Project Web App site collections (Project Server 2013) from Microsoft, there is only a few good step by steps instructions like the one from Alex. Even worse, there are many Project server 2013 upgrade issues Microsoft did not tell you might be killing you during the upgrade. In this blog, I’ll listed some of these issues we encounter and the tips to work around them. 

1. The first issue is you might get the "User does not have permission to perform this action" error when run the Convertto-SPProjectDatabase powershell commandenev the upgrade account (installer account) has the full access to Project Server databases.

WARNING: Converting the reporting, published, archive, and draft databases into
a single Project Database will make it so they can no longer be attached to
Project Server 2010. Before continuing make sure you have a backup copy of
these databases.
Convertto-SPProjectDatabase : User does not have permission to perform this action.
At E:\..\..\Upgrade-WebInstanceDBs.ps1:247 char:5
+     Convertto-SPProjectDatabase -WebApplication $selectedWebApp -Dbserver
$cfg.M ...
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : InvalidOperation: (Microsoft.Offic...baseImpleme
   ntor:ConvertToProjec...baseImplementor) [ConvertTo-SPProjectDatabase], Sql 
    + FullyQualifiedErrorId : Microsoft.Office.Project.Server.Cmdlet.PSCmdletC

The workaround is to temporally grant the installer account the system admin (SA) permission. After the upgrade completed, the SA permission can be removed.

2.  The second issue is you might get the error “An Unknown error occured while performing Action -  MODIFY  FILE failed. Specified size is less than or equal to current size.” that we have explained in previous blog.

The workaround is to alter the database file size to be smaller than 72M so then the upgrade script could change it to 72 MB. We altered the database file size back to 100M as our DB standard.

3. The third issue is you might get "Microsoft Project Server 2010 databases in backward compatibility mode (BCM) cannot be upgraded to Project Server 2013." The whole exception is listed below.

Convertto-SPProjectDatabase : Microsoft Project Server 2010 databases in
backward compatibility mode (BCM) cannot be upgraded to Project Server 2013 .
Before upgrading to Project Server 2013  please disable BCM on your Microsoft
Project Server 2010 PWA instance
At E:\source\2013UPGRADE_TST\8-2013ContentMigration\Server6-MPS\02-InstancesUpg
Rest\MWSS\Upgrade-WebInstanceDBs.ps1:247 char:5
+     Convertto-SPProjectDatabase -WebApplication $selectedWebApp -Dbserver
$cfg.M ...
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : InvalidArgument: (Microsoft.Offic...baseImplemen
   tor:ConvertToProjec...baseImplementor) [ConvertTo-SPProjectDatabase], Inva 
    + FullyQualifiedErrorId : Microsoft.Office.Project.Server.Cmdlet.PSCmdletC
The issue is obvious that the 2010 PWA instance is in backward compatibility mode (BCM)to 2007 version and you should follow Microsoft forum to disable it BEFORE the upgrade.

4. The forth issue is you might get the error "Database validation failed. Reason: DatabaseInUse." during the upgrade for Convertto-SPProjectDatabase powershell command. 

Convertto-SPProjectDatabase : Database validation failed. Reason: DatabaseInUse.
At E:\.\path
+     Convertto-SPProjectDatabase -WebApplication $selectedWebApp -Dbserver
$cfg.M ...

We verified the four PWA databases have no connection. The workaround is to drop them from 2013 database and restore from 2010 again.

5. The forth issue is user might get the error "This site has not been shared with you." and may not be able to login to upgraded PWA instance.
The most possible root cause for this is the claims authentication on 2013. If your Project Servers on 2010 has not been migrated to claims, follow the instructions to convert BEFORE the upgrade since the default Project Server 2013 authentication is claims. You could confirm this from PWA site as in the following screen shot. The window non-claims account likes "domain\userID" but not  "i:0#.w|domain\userID".

Even after you have migrated to claims, you might still getting this permission issue. The reason is after claims conversion, the WRES_ACCOUNT remains in the classic format might cause access issue in PWA 2013. The workarounds are the following two actions.
  • Update  WRES_ACCOUNT to claims using the following database script from Microsoft
  • Run Sync User job
6. The sixth issue is user might get error "You don't have permission to view any projects" when view the projects. 

This issue has been reported by Microsoft and you would need to run the SQL script to direct update MPS databases. Please refer the Microsoft Project Support Blog for detail steps.

7. The seventh issue is after upgrade PWA views used for multi-select custom fields are missing. 

View is always named as follow in MPS - MSPCFxxx_Custom Field Name_AssociationView. The workaround is to execute the following steps after upgrade.
  • Connect to the SharePoint 2013 Central Administration
  • Navigate to General Application Settings and Click on Manage below PWA Settings
  • Select the appropriate Project Web App Instance and then click on Administrative Backup
  • Select Enterprise Global and click on Backup
  • The Archive Custom Fields job will be triggered in queue. Check the queue job whether this job has completed
  • Once the Job is completed, navigate back to PWA Settings in Central Admin and Click on Administrative Restore
  • Select the Enterprise Custom Fields and then Click on Restore
  • The Restore Custom Fields will be triggered in queue after which the Reporting Database Refresh will be triggered
  • Repeat the backup and restore process for every PWA instances
As you know there are many other issues identified during Project Server 2013 upgrade on June 2013 CU. There are many issues will be fixed in later CU and you might need to check whether you can wait before your upgrade.

1 comment:

  1. 4. Database validation failed. Reason: DatabaseInUse.
    Could also be that the target database already exists. Remember to delete the 2013 ProjectWebApp database if you created it as a test.