"发生更新冲突,您必须在更改或删除备用访问映射时重试此操作"

症状

在还原配置数据库Microsoft Windows SharePoint Services 3.0 中执行系统恢复。 然后,尝试修改或删除备用访问映射。

当您这样做时,您将收到一条类似于以下错误消息的错误消息:

An update conflict has occurred, and you must re-try this action. The object SPAlternateUrlCollection Name=WEBAPPLICATION Parent=SPFarm Name=SharePoint_Config is being updated by **DomainName**\**UserName1**, in the w3wp process, on machine **ServerName**. View the tracing log for more information about the conflict.

当您查看统一日志记录服务 (ULS) 日志文件时,会看到一个类似于以下条目的条目:

**Date ****Time** w3wp.exe (0x1620) 0x1988Windows SharePoint Services Topology 8xqzMedium Updating SPPersistedObject SPAlternateUrlCollection Name=WEBAPPLICATION Parent=SPFarm Name=SharePoint_Config. Version: 16449 Ensure: 0, HashCode: 30474330, Id: 609b3309-241a-4193-8289-1bba6a70be50, Stack: at Microsoft.SharePoint.Administration.SPPersistedObject.Update() at Microsoft.SharePoint.Administration.SPAlternateUrlCollection.Update() at Microsoft.SharePoint.ApplicationPages.IncomingUrlPage.BtnSave_Click(Object sender, EventArgs e) at System.Web.UI.WebControls.Button.OnClick(EventArgs e) at System.Web.UI.WebControls.Button.RaisePostBackEvent(String eventArgument) at System.Web.UI.WebControls.Button.System.Web.UI.IPostBackEventHandler.RaisePostBackEvent(String eventArgument) at System.Web.UI.Page.RaisePostBackEvent(IPostBackEventHandler sourceControl, String eventArgument) at System.Web.UI.Page.RaisePostBackEvent(NameValueCollection postData) at System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) at System.Web.UI.Page.ProcessRequest(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) at System.Web.UI.Page.ProcessRequest() at System.Web.UI.Page.ProcessRequestWithNoAssert(HttpContext context) at System.Web.UI.Page.ProcessRequest(HttpContext context) at ASP._admin_editincomingurl_aspx.ProcessRequest(HttpContext context) at System.Web.HttpApplication.CallHandlerExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute() at System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously) at System.Web.HttpApplication.ResumeSteps(Exception error) at System.Web.HttpApplication.System.Web.IHttpAsyncHandler.BeginProcessRequest(HttpContext context, AsyncCallback cb, Object extraData) at System.Web.HttpRuntime.ProcessRequestInternal(HttpWorkerRequest wr) at System.Web.HttpRuntime.ProcessRequestNoDemand(HttpWorkerRequest wr) at System.Web.Hosting.ISAPIRuntime.ProcessRequest(IntPtr ecb, Int32 iWRType) 06/06/2007 14:36:31.51 w3wp.exe (0x1620) 0x1988Windows SharePoint Services Topology 75bdHigh UpdatedConcurrencyException: The object SPAlternateUrlCollection Name=WEBAPPLICATION Parent=SPFarm Name=SharePoint_Config was updated by another user. Determine if these changes will conflict, resolve any differences, and reapply the second change. This error may also indicate a programming error caused by obtaining two copies of the same object in a single thread. Previous update information: User: **DomainName**\**UserName1** Process:w3wp Machine:**ServerName** Time:**Date ****Time** Current update information: User: **DomainName**\**UserName2** Process:w3wp Machine:**ServerName****Date ****Time** w3wp.exe (0x1620) 0x1988Windows SharePoint Services Topology 8xqyHigh ConcurrencyException: Old Version : 16449 New Version : 0  

原因

如果前端服务器上文件系统缓存的内容比配置数据库的内容更新,则会发生此问题。 执行系统恢复后,可能需要手动清除本地服务器上文件系统缓存。

解决方案

若要解决此问题,请清除服务器场中运行计时器服务的所有Windows SharePoint Services缓存。 为此,请按照下列步骤操作:

  1. 停止定时服务。 为此,请按照下列步骤操作:

  2. 单击"开始",指向"管理工具",然后单击"服务"。

  3. 右键单击 Windows SharePoint Services计时器",然后单击"停止 "。

  4. 关闭服务控制台。

  5. 在运行 Microsoft Office SharePoint Server 2007 且承载管理中心网站的计算机上,单击"开始",单击"运行",键入资源管理器,然后按 Enter。

  6. 在Windows资源管理器中,找到然后双击以下文件夹:驱动器:\Documents and 设置\All Users\Application Data\Microsoft\SharePoint\Config * GUID*

    备注

    • Drive 占位符指定要安装驱动器Windows的字母。 默认情况下,Windows驱动器 C 上安装。

    • GUID 占位符指定 GUID 文件夹。

    • 应用程序数据文件夹可能处于隐藏状态。 若要查看隐藏文件夹,请按照以下步骤操作:

      1. 在"工具 " 菜单上,单击"文件夹选项"。

      2. 单击" 视图" 选项卡。

      3. 在"高级设置" 列表中,单击"隐藏文件和文件夹"下的"显示隐藏文件和文件夹",然后单击"确定 "。

    • 在 Windows Server 2008 中,配置缓存位于以下位置:驱动器:\ProgramData\Microsoft\SharePoint\Config * GUID*

  7. 备份Cache.ini文件。

  8. 删除 GUID 文件夹中的所有 XML 配置文件。 执行此操作,以便可以在重建缓存时验证 GUID 文件夹是否被新的 XML 配置文件所取代。

    注意 在 GUID 文件夹中清空配置缓存时,请确保不要删除 GUID 文件夹和 GUID 文件夹中的 Cache.ini 文件。

  9. 双击该Cache.ini文件。

  10. 在"编辑 "菜单 上,单击"全选"。

  11. 在“编辑”菜单上,单击“删除”。

  12. 键入 1,然后单击"文件 " 菜单上的" 保存 "。

  13. 在"文件 " 菜单上,单击"退出 "。

  14. 启动定时服务。 为此,请按照下列步骤操作:

  15. 单击"开始",指向"管理工具",然后单击"服务"。

  16. 右键单击 Windows SharePoint Services计时器",然后单击"开始 "。

  17. 关闭服务控制台。

    注意 执行此过程后,将重新创建文件系统缓存。 确保对服务器场中所有服务器执行此过程。

  18. 确保更新Cache.ini文件。 例如,如果缓存已更新,则不应再为 1。

  19. 单击 "开始",指向 "程序",指向"管理工具",然后单击"SharePoint 3.0 管理中心"。

  20. 单击"操作" 选项卡,然后单击"全局 配置"下的"计时器 作业状态"。

  21. 在计时器作业列表中,验证"配置 刷新"条目的状态为 "已成功"。

  22. 在"文件 " 菜单上,单击"关闭 "。

更多信息

仍然需要帮助? 请转到 SharePoint 社区