Tim Huffam

Dotting the I and crossing the T of I.T.

  Home  |   Contact  |   Syndication    |   Login
  153 Posts | 0 Stories | 2415 Comments | 653 Trackbacks

News

Archives

Post Categories

Interesting Blogs/Links

Thursday, November 04, 2010 #

Turns out you can't just move a TFS warehouse/cube from SQL Server 2005 to 2008...  

Once performed we got the following error on the TFS app server tier  - when we tried to update/process the cube (both manually and via the TFS scheduler service):
Detailed Message: Failed to load adapter Microsoft.TeamFoundation.Warehouse.CommonStructureAdapter. Exception Info: \n Microsoft.TeamFoundation.Server.AnalysisServiceConnectionException: Error encountered when creating connection to Analysis Services. Contact your Team Foundation Server administrator. ---> Microsoft.AnalysisServices.ConnectionException: Cannot connect to Analysis Services version '10.0.1600.22'.

The point worth noting here is the version number (10.0.1600.22) - this is the version of the updated Analysis Services server (on the SQL Server 2008 platform).  The problem was that our TFS app server did not have the client access software of the correct version.

Assuming you've moved your cube already (using this article) - The following steps should fix the problem (all done on the TFS app server tier):

  1. Install the correct version of the Microsoft.AnalysisServices.dll assembly.   Download and install "Microsoft Analysis  Management Objects" from here.
  2. Update the following config files so that this line
    <bindingRedirect oldVersion="9.0.242.0" newVersion="9.0.242.0"/>
    looks like this:
    <bindingRedirect oldVersion="9.0.242.0" newVersion="10.0.0.0"/>
    Files to update:
    <programfiles>\Microsoft Visual Studio 2008 Team Foundation Server\Web Services\Warehouse\web.config
    <programfiles>\Microsoft Visual Studio 2008 Team Foundation Server\TFSServerSchedluer\TFSServerScheduler.exe.config
  3. Process the cube (this updates both the TFSWarehouse relational db and then the cube:
    - Log on to the TFS app server, then navigate your browser to http://localhost:8080/Warehouse/v1.0/warehousecontroller.asmx, then click Run, then Invoke.
    - go back to the main warehousecontroller.asmx page and run GetWarehouseStatus - to monitor it's progress.
    - when it's complete (status of idle) check the event log for errors - should be none.
  4. Run a report (via  http://tfsappserver/reports url) to see if it contains updated data.
  5. Restart the TFS Scheduler service.

Note that if you're having problems - ie you're not seeing updated data in the reports, yet you're not seeing errors in the event log, then turn on verbose error logging (I think that's what this is/does) but updating the web.config file in this dir: <programfiles>\Microsoft Visual Studio 2008 Team Foundation Server\Web Services - changing this line<add name="General" value="1" />  to value="4"

Here's some useful links I found while trying to do all this work:

 I have to say, TFS really is a b*tch to manage. 

HTH
Tim