TFS2013:构建仓库同步作业失败

时间:2016-05-26 13:20:35

标签: tfs tfs2013 data-warehouse

我收到6个中的1个集合的跟随失败错误。其他5个正在完成这项工作而不会失败。我试图使用WarehouseControlWebService手动运行它,但它不起作用。任何帮助弄清楚如何解决这个问题。我知道SQL端正在工作,因为其他人正在运行它而没有错误。

Job JobProcessingStatus =“Idle”Name =“Build Warehouse Sync”

LastRun Result =“失败”EndTimeUtc =“2016-05-26T01:13:03.253Z”ExecutionStartTimeUtc =“2016-05-26T00:52:57.857Z”QueueTimeUtc =“2016-05-26T00:52:57.603Z “

[Build Warehouse Sync]:---> Microsoft.TeamFoundation.Warehouse.WarehouseException:TF221122:为团队项目集合或Team Foundation服务器Collection2运行作业Build Warehouse Sync时发生错误。 ---> System.OutOfMemoryException:抛出了类型'System.OutOfMemoryException'的异常。在System.Text.StringBuilder.ToString()at Microsoft.TeamFoundation.Warehouse.WarehouseBatchedDataAccessComponent.FormatFactEntriesXml(事实上,IEnumerable 1 entries) at Microsoft.TeamFoundation.Warehouse.WarehouseBatchedDataAccessComponent.SaveFactEntries(Fact fact, IEnumerable 1个条目,布尔allowUpdate)在Microsoft.TeamFoundation.Build.Adapter.WarehouseEntry.SaveFactEntries(WarehouseBatchedDataAccessComponent)在Microsoft.TeamFoundation.Warehouse.WarehouseSyncJobExtension`1.RunInternal(TeamFoundationRequestContext requestContext,TeamFoundationJobDefinition jobDefinition,DateTime queueTime,String& resultMessage)中的dac,WarehouseConfig config,IEnumerable 1 entries, Boolean allowUpdate) at Microsoft.TeamFoundation.Build.Adapter.BuildBatch.SaveBatch() at Microsoft.TeamFoundation.Build.Adapter.TeamBuildWarehouseAdapter.ProcessAndUploadBuildData() at Microsoft.TeamFoundation.Build.Adapter.TeamBuildWarehouseAdapter.MakeDataChanges() at Microsoft.TeamFoundation.Warehouse.WarehouseSyncJobExtension 1.MakeDataChanges(TeamFoundationRequestContext requestContext,TeamFoundationJobDefinition jobDefinition,String& resultMessage) )在Microsoft.TeamFoundation.Warehouse.WarehouseJobExtension.Run(TeamFoundationRequestContext requestContext,TeamFoundationJobDefinition jobDefinition,DateTime queueTime,String& resultMessage)---内部异常堆栈跟踪结束---

2 个答案:

答案 0 :(得分:0)

您可以尝试rebuild the TFS data warehouse and cube查看问题是否仍然存在。请注意,根据数据仓库中的数据量,重建操作可能需要几个小时才能完成,在此期间报告不可用。

enter image description here

答案 1 :(得分:0)

在微软的帮助下,我们不得不修改作业的批量大小。贝娄是我们所做的笔记。调整大小几次并允许它运行后清除。

在配置数据库中使用此查询来确定要修改的集合数据库的HostID

选择*

来自tbl_ServiceHost

样品:

hostid名字 185C91E1-2EB5-4C9C-AE97-26B757DE951B testnongenerated AD455D2B-7A84-4BF6-A8F2-594895066472 DefaultCollection 8F2ECA36-47BE-4244-B4C7-E2AABC7693FE团队基金会 8D9C0BCE-19AB-425B-8D27-ECDE6573A493新产品

所以要使用DefaultCollection我们需要HostId:AD455D2B-7A84-4BF6-A8F2-594895066472

在此插入查询中输入HostID以在仓库数据库中运行:

INSERT INTO [_PropertyBag] (        [Property_Scope]        [Property_Key]        [适当的价值] ) VALUES (        'AD455D2B-7A84-4BF6-A8F2-594895066472', - 来自tbl_ServiceHost的HostID        '/ Adapter / Config / TeamBuild / BatchSize', - 要更新的属性,这是Build Warehouse Sync的关键        '100' - 新批量(默认2000)

我们希望将其减少到一个非常小的数字然后允许它运行并确保它成功运行,如果不是我们可以将它降低到1并尝试,如果是这样我们可以(由您自行决定)移动它如果你想提高处理速度,请备份。

最好停止所有仓库同步作业并运行有问题的1作业。它需要时间来清除问题。确保创建了TFS_Warehouse的数据库。

这用于修复以下错误:

构建仓库同步:---> Microsoft.TeamFoundation.Warehouse.WarehouseException:TF221122:为团队项目集合或Team Foundation Server AS运行作业Build Warehouse Sync时发生错误。 ---> System.OutOfMemoryException:抛出了类型'System.OutOfMemoryException'的异常。在System.Text.StringBuilder.ToString()at Microsoft.TeamFoundation.Warehouse.WarehouseBatchedDataAccessComponent.FormatFactEntriesXml(事实上,IEnumerable 1 entries) at Microsoft.TeamFoundation.Warehouse.WarehouseBatchedDataAccessComponent.SaveFactEntries(Fact fact, IEnumerable 1个条目,布尔allowUpdate)在Microsoft.TeamFoundation.Build.Adapter.WarehouseEntry.SaveFactEntries(WarehouseBatchedDataAccessComponent)在Microsoft.TeamFoundation.Warehouse.WarehouseSyncJobExtension`1.RunInternal(TeamFoundationRequestContext requestContext,TeamFoundationJobDefinition jobDefinition,DateTime queueTime,String& resultMessage)中的dac,WarehouseConfig config,IEnumerable 1 entries, Boolean allowUpdate) at Microsoft.TeamFoundation.Build.Adapter.BuildBatch.SaveBatch() at Microsoft.TeamFoundation.Build.Adapter.TeamBuildWarehouseAdapter.ProcessAndUploadBuildData() at Microsoft.TeamFoundation.Build.Adapter.TeamBuildWarehouseAdapter.MakeDataChanges() at Microsoft.TeamFoundation.Warehouse.WarehouseSyncJobExtension 1.MakeDataChanges(TeamFoundationRequestContext requestContext,TeamFoundationJobDefinition jobDefinition,String& resultMessage) )在Microsoft.TeamFoundation.Warehouse.WarehouseJobExtension.Run(TeamFoundationRequestContext requestContext,TeamFoundationJobDefinition jobDefinition,DateTime queueTime,String& resultMessage) - 内部异常堆栈跟踪结束---