newtelligence poweredRSS 2.0
# Saturday, January 26, 2008

Wouldn't you know, by TFS warehouse is not updating. It seems like I have had this problem before, but today, it was a new error.

Today, I added 2 test projects to TFS, one for the MSF Agile (4.2) and one for MSF CMMI (4.2) to reference while I read Software Engineering with Microsoft Visual Studio Team System (thanks Larry). I'm not even through chapter one and I am hooked on this book. Chapter 1 was talking about the Reaming Work report, and I wanted to view it for the 2 test sites.

I was able to view the report for the MSF Agile site, but not the CMMI site. A quick look at the reports via the Reporting Services web management UI, and I had a pretty good guess that the warehouse was not updating because there were no iterations or areas listed for those report parameters.

I went checked out the TfsWarehouse.dbo._WarehouseConfig table, and saw that, yes, the warehouse stopped updating a couple of hours ago. My attempts to manually run the update using the web services interface via IE didn't seem to work. Remembering some of my previous troubleshooting, I went to the event log and found several errors, starting around the time that I created the CMMI project.

Event Type:    Error
Event Source:    TFS Warehouse
Event Category:    None
Event ID:    3000
Date:        1/25/2008
Time:        6:20:57 PM
User:        N/A
Computer:    [TFSServer]
Description:
TF53010: The following error has occurred in a Team Foundation component or extension:
Date (UTC): 1/26/2008 12:20:57 AM
Machine: DATFSP100
Application Domain: /LM/W3SVC/1977639788/Root/Warehouse-4-128456993088380000
Assembly: Microsoft.TeamFoundation.Warehouse, Version=9.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a; v2.0.50727
Process Details:
  Process Name: w3wp
  Process Id: 8512
  Thread Id: 9920
  Account name: [ServiceAccount]

Detailed Message: The pending configuration changes were not successfully added to the cube because of the following error: System.Security.Principal.IdentityNotMappedException: Some or all identity references could not be translated.
   at System.Security.Principal.NTAccount.Translate(IdentityReferenceCollection sourceAccounts, Type targetType, Boolean forceSuccess)
   at System.Security.Principal.NTAccount.Translate(Type targetType)
   at Microsoft.TeamFoundation.Warehouse.OlapCreator.AddAccountToRole(Role role, String accountName, Boolean needToUpdate)
   at Microsoft.TeamFoundation.Warehouse.OlapCreator.SetupAnalysisDatabase(Server server, String analysisDBName, String accessUser, String[] dataReaderAccounts)
   at Microsoft.TeamFoundation.Warehouse.OlapCreator.CreateOlap(WarehouseConfig whConf, String accessUser, String[] dataReaderAccounts, Boolean dropDB, Boolean processCube)
   at Microsoft.TeamFoundation.Warehouse.AdapterScheduler.EnsureCubeIsUpToDate()

For more information, see Help and Support Center at http://go.microsoft.com/fwlink/events.asp.

So started my Google Search. I came across a post on the MSDN forums which had some code to check to see if account translation is working on the network, and it appears to be (I got a SID value back for both my tfs service and tfs reports account)

 

   1: using System;
   2: using System.IO;
   3: using System.Text;
   4: using System.Xml;
   5: using System.Xml.Serialization;
   6: using System.Threading;
   7: using System.Security.Principal;
   8:  
   9:  
  10: namespace CheckAccountForTfs
  11: {
  12:  public class Program
  13:  {
  14:   public static void Main(string[] args)
  15:   {
  16:    try
  17:    {
  18:     string accountName = args[0];
  19:     Console.WriteLine(new NTAccount(accountName).Translate(typeof(SecurityIdentifier)).Value);
  20:    }
  21:    catch (Exception e)
  22:    {
  23:     Console.WriteLine(e);
  24:    }
  25:   }
  26:  }
  27: }

 

Continuing my Google search, I found something embarrassing, I had the same exception for TFS listed on a previous post, on my very own blog. My solution last time was to run (Make sure you replace Server with your TFS server name, as well as use FQDN for the service and reports account).

setupwarehouse -o -s Server -d TfsWarehouse -c Warehouseschema.xml -a Domain\TfsService -ra Domain\TfsReports -v -mturl http://Server:8080 -rebuild

I did not remove the TFSWarehouse from Analysis Server before running this command. Also, the setupwarehouse command is in %Program Files%\Microsoft Visual Studio 2008 Team Foundation Server\Tools.

Eureka, manually invoking the warehouse job from the web service via IE actually starting processing, and with no errors in the Event Log. Looks like I might have to create a batch script to keep on the TFS server in case this happens again. I also need to search my own blog a little more carefully next time.

While I was trying to get the Remaining Work report to display initially, I somehow managed to mess up the parameter definition for Iteration and Area. I fixed this by saving the report (Go to the report's properties and click edit), along with another report with the at least those 2 parameters. Once saved as a text file, I copied the ReportParam element for both parameters from the good report to the bad report, then uploaded the fixed report back to reporting services. Problem solved.

Saturday, January 26, 2008 1:24:49 AM (GMT Standard Time, UTC+00:00)  #    Comments [0] -
Programming
Comments are closed.
Archive
<March 2010>
SunMonTueWedThuFriSat
28123456
78910111213
14151617181920
21222324252627
28293031123
45678910
About the author/Disclaimer

Disclaimer
The opinions expressed herein are my own personal opinions and do not represent my employer's view in any way.

Copyright 2010
Adam Salvo
Sign In
Statistics
Total Posts: 234
This Year: 13
This Month: 1
This Week: 0
Comments: 34
Themes
Pick a theme:
All Content 2010, Adam Salvo
DasBlog theme 'Business' created by Christoph De Baene (delarou)