How to: Rebuild the Team System Cube

To access high-level reports, you must rebuild the Team System cube whenever you move, restore, rename, or fail over the data-tier server for Team Foundation. The Team System cube supports SQL Server Reporting Services and contains data from the relational database of the data warehouse for Team System. For more information, see Understanding the Data Warehouse Architecture

Required Permissions

To perform these procedures, you must have the following permissions in SQL Server:

  • You must be a member of the sysadmin security group for the database instance for Team Foundation and for the Analysis Services database instance of the Team System data warehouse.

  • You must be a user of the TfsWarehouse relational database.

  • You must be a member of the TFSEXECROLE database role.

Also, you must be a member of the Team Foundation Administrators security group, or the server-level Administer warehouse permission must be set to Allow. For more information, see Team Foundation Server Permissions.

In addition to these permissions, you might need to address the following requirements on a computer that is running Windows Server 2008 or Windows Vista:

  • To follow a command-line procedure, you might need to open an elevated Command Prompt by clicking Start, right-clicking Command Prompt, and clicking Run as Administrator.

  • To follow a procedure that requires Internet Explorer, you might need to start it as an administrator by clicking Start, clicking All Programs, right-clicking Internet Explorer, and then clicking Run as administrator.

  • To edit web.config files, you might need to start the text editor as an administrator by clicking Start, clicking All Programs, right-clicking the editor, and then clicking Run as administrator.

  • To access Report Manager, reports, or Web sites for Reporting Services, you might need to add these sites to the list of trusted sites in Internet Explorer or start Internet Explorer as an administrator.

For more information, see the Microsoft Web site.

To rebuild the Team System cube, you must perform the following sequence of steps:

  1. Verify That Services and Application Pools are Running and That TCP/IP Is Enabled for SQL Server

  2. Recreate the Team System Cube

  3. Process theTeam System Cube

  4. Restart Services

  5. Verify That Reports are Accessible

Verify That Services and Application Pools are Running and That TCP/IP Is Enabled for SQL Server

The services and application pools that SQL Server requires must be running for you to complete the steps in this procedure. You stop Reporting Services so that users do not access reports while you are rebuilding the Team System cube. Also, for a dual-server deployment, the TCP/IP protocol must be enabled for each instance of a SQL Server database.

Note

By default, TCP/IP is disabled when you install SQL Server.

To verify that services and application pools are running and that TCP/IP is enabled for SQL Server

  1. Log on to the appropriate server, open Computer Manager, and verify that the services and application pools in the following table are running:

    Log on to the server that hosts this program

    Component

    SQL Server Analysis Services

    • SQL Server Analysis Services (MSSQLSERVER or TFSInstance)

    Team Foundation databases

    • SQL Server (MSSQLSERVER or TFSInstance)

    • SQL Server Agent (MSSQLSERVER or TFSInstance)

    Application tier

    • Microsoft Team Foundation Server Application Pool

    For more information, see How to: Stop and Start Services, Application Pools, and Web Sites.

  2. Log on to the server that hosts Reporting Services, and stop the following services:

    • SQL Server Reporting Services (TFSINSTANCE)

    • ReportServer or ReportServer$InstanceName (application pool)

      Note

      You manage ReportServer for SQL Server 2005 but not for SQL Server 2008.

  3. Make sure that TCP/IP has been enabled for SQL Server on the data-tier server. For more information, see How to: Enable the TCP/IP Protocol for a Database Instance.

Recreate the Team System Cube

When you recreate the Team System cube, Team Foundation Server drops the old cube and creates a separate instance of the cube. You must then process the cube to populate it with data from the operational stores for Team System.

To recreate the Team System cube

  1. On the application-tier server, open Computer Manager, and stop the Visual Studio Team Foundation Server Task Scheduler Service.

  2. Open a Command Prompt window, and change directories to Drive:%Program Files%\Microsoft Visual Studio 2008 Team Foundation Server\Tools.

  3. Type the following command:

    SetupWarehouse.exe -o -sDataTierServerName-dTFSWarehouse -c warehouseschema.xml -ra TFSReportServiceAccount -a TFSServiceAccount -mturl http://ApplicationTierServerName:Port-lLogFileName

    where:

    Argument

    Description

    DataTierServerName

    The name of the server that hosts the relational databases for Team Foundation. 

    If you have moved, failed over, or restored data to a server that is running SQL Server, specify the name of the server.

    TFSReportServiceAccount

    The name of the service account for Reporting Services in Domain\UserName format.

    TFSServiceAccount

    The name of the service account for Team Foundation Server in Domain\UserName format.

    ApplicationTierServerName

    The name of the application-tier server for Team Foundation.

    Port

    The port number for Web services on which Team Foundation relies. The default value is 8080.

    LogFileName

    (Optional) Log file for output.

    Note

    For the -d option, you must specify TfsWarehouse, which is the name of the data warehouse for Team System.

  4. Wait until the command is successfully completed.

    Note

    If the command is not completed successfully, you should verify that you have all required permissions. You can also check the setupwarehouse.log file (available only if you specified it as an option) and Troubleshooting the Data Warehouse.

Process the Team System Cube

By processing the Team System cube, you help ensure that queries and reports are up to date with data that depends on the cube. When you process the cube, you process the Analysis Services database of the data warehouse for Team System at the same time. The time required to complete processing depends on how much data is in the relational database of the data warehouse.

Note

The Microsoft Team Foundation Server Application Pool must be running for the warehouse controller Web service to be available.

To process the Team System cube

  1. Log on to the application-tier server.

  2. Open Internet Explorer, type the following string in the Address bar, and press ENTER:

    https://localhost:8080/Warehouse/v1.0/warehousecontroller.asmx

    The ControllerService page opens.

  3. Click GetWarehouseStatus, and then click Invoke.

    Important noteImportant Note:

    The service should return a value of Idle, which indicates that the cube is not being processed. If a different value is returned, repeat this step until Idle is returned.

  4. Return to the ControllerService page, click Run, and then click Invoke.

    This step initiates cube processing. The service returns True when it is successful in starting the controller and False if it is not successful. A value of False indicates that the cube is currently being processed.

  5. To determine when the cube has been processed, return to the ControllerService page, click GetWarehouseStatus, and then click Invoke. This service returns the following status values:

    • ProcessingAdapters (processing schema modifications or pulling data)

    • ProcessingOlap (processing schema modifications or processing the cube)

    • Idle (processing has completed)

    Cube processing is complete when the GetWarehouseStatus service returns a value of Idle.

Note

During typical operations, the Visual Studio Team Foundation Server Task Scheduler Service calls the ControllerService Web method and processes the cube according to a preset refresh frequency (by default, one hour). To change the frequency, see How to: Change the Frequency for Refreshing the Data Warehouse for Team System.

Restart Services

To restart services

  • Log on to the appropriate server, open Computer Manager, and start the components in the following table:

    Log on to the server that hosts this program

    Start this component

    Reporting Services

    • SQL Server Reporting Services (TFSINSTANCE)

    • (SQL Server 2005 only) ReportServer or ReportServer$InstanceName (application pool)

    Application-tier server

    • Visual Studio Team Foundation Server Task Scheduler Service

Verify That Reports are Accessible

To verify that reports are accessible

  1. Log on to the server that hosts Reporting Services, open Internet Explorer, type the following string in the Address bar, and press ENTER:

    https://localhost/Reports

    If you have deployed a named instance on the data-tier server, type the following string instead:

    **https://localhost/Reports_**TFSInstance

    The Report Manager page opens.

  2. In Contents, click any project, click any one of the default reports in the project, and then verify that the report appears correctly.

See Also

Tasks

How to: Enable the TCP/IP Protocol for a Database Instance

How to: Delete the Version Control Cache on the Application-tier Server

How to: Restore Data for Team Foundation

How to: Fail Over to a Mirrored Data-Tier Server

How to: Move from a Single-Server to a Dual-Server Deployment

Concepts

Understanding the Data Warehouse Architecture

Troubleshooting the Data Warehouse

Reference

SetupWarehouse

Other Resources

Managing Data