SharePoint 2010 /2013: “An exception of type Microsoft.SharePoint.Administration.SPUpdatedConcurrencyException was thrown” while installing an update
You try to install cumulative updates for SharePoint 2010 and 2013, and you encounter this error:
An exception of type Microsoft.SharePoint.Administration.SPUpdatedConcurrencyException was thrown. Additional exception information: An update conflict has occurred, and you must re-try this action. The object SPUpgradeSession Name=Upgrade-DATE-TIME-RAND was updated by DOMAIN\user, in the PSCONFIG (PID) process, on machine MACHINENAME. View the tracing log for more information about the conflict.
CAUSE
This exception can be caused by a race condition (at least two threads access shared data and try to change it concurrently) when Psconfig tries to update sites, tables, or databases. This scenario is a rare occurrence during a SharePoint upgrade.
WORKAROUND
Use the following PowerShell script to open Psconfig with single processor affinity to force the utility to run one update at a time:
SP 2010
$cmd="start "+""""" /affinity 1 "+"""C:\Program Files\Common Files\microsoft shared\Web Server Extensions\14\BIN\Psconfig.exe""" + " -cmd" + " upgrade" + " -inplace" + " b2b" + " -wait"
cmd.exe /c $cmd
SP 2013
$cmd="start "+""""" /affinity 1 "+"""C:\Program Files\Common Files\microsoft shared\Web Server Extensions\15\BIN\Psconfig.exe""" + " -cmd" + " upgrade" + " -inplace" + " b2b" + " -wait"
cmd.exe /c $cmd
To verify that this process opened by using single core affinity only, follow these steps:
1. Open the Task Manager
2. See details
3. Locate the running process for Psconfig
4. Right-click the process and select Set Affinity: you should see only CPU 0 selected
5. Let the Psconfig process complete
MORE INFORMATION
The workaround script configures single core affinity without using the -force parameter. This -force parameter ignores errors or skips steps that are required for SharePoint upgrades to be installed. In this scenario, two processes try to use the same resources while they are running on different server cores. Configuring for single core affinity prevents these processes from using mutual resources.
POST BY : Paul Haskew [MSFT]
Comments
Anonymous
May 11, 2015
The comment has been removedAnonymous
October 08, 2015
Your solution doesn't work for me. "PSConfig.exe -cmd upgrade -inplace b2b -wait -cmd applicationcontent -install -cmd installfeatures -cmd secureresources" works- Anonymous
October 29, 2016
Vladilen's worked perfect for me (other options I didn't try).
- Anonymous
Anonymous
March 21, 2016
It works perfectly fine for me. Thanks Paul !Anonymous
November 02, 2016
Thank you! I think the concurrency issue broke my IIS SharePoint redirect from 80 to 443 port. All my other IIS sites on that server were working. So I went in to the SharePoint - 80 IIS site > Basic Settings and fixed the web config redirect on c:\inetpub\wwwroot to point to the HTTPS site again. Then I was able to browse SharePoint. Then I still had to run your command to complete the fix. This cost me hours before I found your solution. Thanks for saving me even more hours!Anonymous
September 18, 2017
Thank you so much Paul..This resolved the long pending issue.