Wednesday, February 3, 2010

TFSWarehouse Event 3000 Failed to load adapter with SQL 2008 data tier

So I had my nice, mostly stable TFS implementation consisting of a SQL 2005 SP3 data tier and a TFS 2008 SP1 (9.0.30729.1) Application tier. I decided to upgrade the Data Tier to SQL 2008 since I'll need it to be there when we upgrade this year to TFS 2010. I followed Bill Wang's blog post

Everything went fine except the warehouse stopped refreshing. In the Event Log on the Application Tier I had this error:

Event Type: Error
Event Source: TFS Warehouse
Event Category: None
Event ID: 3000
Date: 2/3/2010
Time: 1:13:47 PM
User: N/A
Computer: TFS1
TF53010: The following error has occurred in a Team Foundation component or extension:
Date (UTC): 2/3/2010 6:13:47 PM
Machine: TFS1
Application Domain: /LM/W3SVC/3/Root/Warehouse-3-129096944229185149
Assembly: Microsoft.TeamFoundation.Warehouse, Version=, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a; v2.0.50727
Process Details:
Process Name: w3wp
Process Id: 5444
Thread Id: 5576
Account name: PS_NT\TFSSERVICE

Detailed Message: Failed to load adapter Microsoft.TeamFoundation.Warehouse.CommonStructureAdapter. Exception Info: \n System.IO.FileNotFoundException: Could not load file or assembly 'Microsoft.AnalysisServices, Version=, Culture=neutral, PublicKeyToken=89845dcd8080cc91' or one of its dependencies. The system cannot find the file specified.

After much head-banging I realized that I hadn't upgraded the SQL Client Connectivity on the App Tier to 2008 to match. D'oh. After installing the SQL 2008 Connectivity and Management tools and rebooting, I went to the http://localhost:8080/Warehouse/v1.0/warehousecontroller.asmx and hit 'Run', then invoke to force the update. Then used the 'GetWarehouseStatus' to watch the Adapter running. Fixed.

No comments: