At a customer, we had some problems with the TFS Datawarehouse cube no longer being processed. When looking at the logs, I noticed the following error message:
<LastRun QueueTimeUtc="2011-11-10T13:15:59.497Z" ExecutionStartTimeUtc="2011-11-10T13:16:00.517Z" EndTimeUtc="2011-11-10T13:18:00.637Z" Result="Blocked">
<ResultMessage>[Version Control Warehouse Sync]: ---> MakeDataChanges() result=DataChangesPending. ---> TF221033: Job failed to acquire a lock using lock mode Shared, resource DataSync: [TFSDB].[Tfs_Warehouse] and timeout 30.</ResultMessage>
</LastRun>
Some useful links to solve this problem:
Our solution:
- Go to the warehouse control service, which in our case is at: http://tfs:8080/tfs/TeamFoundation/Administration/v3.0/warehousecontrolservice.asmx
- From there click on the SetWarehouseJobEnabledState operation. In here you'll see that you can specify the collection, the job, and what state to put it in.
- If you want to know the list of jobs, you can run the GetProcessingStatus operation from the warehouse control service.
- Set all jobs to FullyDisabled.
- Then set one to Enabled and process the warehouse using the ProcessWarehouse link on the warehouse control service page.