Category Archives: Team Foundation Server

Team Foundation Server 2012–Out of Preview

imageEarlier this morning at the Build conference in Redmond it was announced that Team Foundation Service is now out of Preview! The new URL for the service is http://tfs.visualstudio.com. You can read about the changes here: http://tfs.visualstudio.com/en-us/pricing/information/

With this change, accounts are now accessible at http://<youraccountname>.visualstudio.com. The old tfspreview.com domain will continue to work for the foreseeable future, but you should plan on starting to use the new URL.

One difference is that you’ll need to type the full URL (i.e.: https://iedaddy.visualstudio.com) of your account into the Add Team Foundation Server dialog in Visual Studio. Notice that you need to use https:// as well. Rumor has it that this will not be needed after the first Visual Studio update, but for now you get to access it via SSL.

There are quite a few awesome little goodies that are included with the hosted version of TFS.  And if you happen to have an MSDN subscription then just sign up for the Free Plan today and you can use the service for free. When Microsoft begins charging in 2013, access to the service will be offered as a benefit—at no additional charge—for paid MSDN subscribers at these levels:

  • Visual Studio Ultimate with MSDN
  • Visual Studio Premium with MSDN
  • Visual Studio Test Professional with MSDN

The free plan includes these features:

  • Up to 5 users
  • Unlimited number of projects
  • Version control
  • Work item tracking
  • Agile planning tools
  • Feedback management
  • Build (still in preview)

So for those of you looking to evaluate the new Team Foundation Server 2012 or want an environment up and running without the hassle of doing the install and server provisioning, this is an awesome deal and a great value added feature for your MSDN subscription.

Team Foundation Server 2010–Analysis Database Corrupted, Rebuild It

image

Most large companies that are Microsoft centric rely on TFS for their source control, but it also does so much more (as long as you use it to track work items ad other tasks).  Part of TFS is a SharePoint component that utilizes the platform to create a project portal where various metrics can be displayed in a dashboard.  This works fairly well, but occasionally we’ve found that the TFS analysis database TFS_Analysis has issues and we have to go in and do a little fiddling.  Generally I get the call because I am “The SharePoint Guy” and it somehow relates to SharePoint…

Error Scenarios

Error 1: Message on the portal stating:

Project data is unavailable at this time. As a result, all reports on this dashboard have been hidden. After you have created data in your team project and the warehouse has been processed, reports will be available.

Error 1: Message in Excel Services

Unable to get the required information about this cube. The cube might have been reorganized or changed on the server. The PivotTable was not refreshed.

Error 2: Error message in the Event Viewer:

Detailed Message: TF221122: An error occurred running job Incremental Analysis Database Sync for team project collection or Team Foundation server TEAM FOUNDATION.
Exception Message: Error encountered when creating connection to Analysis Services. Contact your Team Foundation Server administrator. (type AnalysisServiceConnectionException)

Error 3: Exception Message:

File system error: The following file is corrupted: Physical file: \\?\C:\Program Files\Microsoft SQL Server\MSAS10_50.MSSQLSERVER\OLAP\Data\Tfs_Analysis.0.db\Dim Team Project.0.dim\330.ProjectPath.ksstore. Logical file .
Errors in the metadata manager. An error occurred when loading the Team Project dimension, from the file, ‘\\?\C:\Program Files\Microsoft SQL Server\MSAS10_50.MSSQLSERVER\OLAP\Data\Tfs_Analysis.0.db\Dim Team Project.330.dim.xml’.
Errors in the metadata manager. An error occurred when loading the Team System cube, from the file, ‘\\?\C:\Program Files\Microsoft SQL Server\MSAS10_50.MSSQLSERVER\OLAP\Data\Tfs_Analysis.0.db\Team System.1191.cub.xml’.
(type OperationException)

Generally it’s not worth the time to try and figure out what went wrong.   It is much simpler in these cases to just rebuild your Cube and Warehouse.

To rebuild the cube and warehouse, following these steps:

1. Delete analysis database TFS_Analysis

  • Go to SQL Server and locate the folders contains TFS_Analysis database C:\Program Files\Microsoft SQL Server\MSAS10_50.MSSQLSERVER\OLAP\Data
  • Delete following files and folder: Tfs_Analysis.0.db, CryptKey.bin, Tfs_Analysis.0.db
  • Restart SQL Server Analysis Database service

2. To recreate the Tfs_Analysis database, please refer to the following steps:

  • Launch TFS Admin Console | Application Tier | Reporting, in the right panel, click Edit to open the Reporting window.
  • Under the Analysis Services tab, input the Tfs_Analysis under Database textbox, and re-provide the required account under Account for accessing data source.
  • Click Ok to generate the Tfs_Analysis database in Analysis Services.
  • Click Start Jobs and Start Rebuild to rebuild warehouse and the Analysis Services database.  Similarly recreated Tfs_Warehouse database under Warehouse tab in Reporting window.
  • Monitor the progress using http://localhost:8080/tfs/TeamFoundation/Administration/v3.0/WarehouseControlService.asmx
    • Open GetProcessingStatus and hit Invoke. Refresh until JobProcessingStatus=”Idle”.

Team Foundation Server (TFS) 2010–Manually Process Warehouse and Analysis Cube

Reporting (SSRS and Excel) in TFS makes use of SQL Server Analysis Server, or OLAP cube. This cube is by default refreshed every two hours. This is in most cases frequently enough to get the correct information. You can however change this default behavior. You can either change the interval of the warehouse refreshment or you can refresh the cube manually.

Be aware that SSRS is caching the reports, which means that when the data might not be refreshed in the SSRS report as you expected. For changing the caching settings of the reports see http://msdn.microsoft.com/en-us/library/ms157146.aspx.

Change the interval

To change the interval follow the following steps

1. Go to the desktop of the Application Tier

2. Open Internet Explorer and type http://localhost:8080/tfs/TeamFoundation/Administration/v3.0/WarehouseControlService.asmx in the address bar. You get a list of all available web services.

clip_image001

3. To change the interval, choose the ChangeSetting webservice

4. You will see a new page where you can enter the setting and its new value.

clip_image002

Enter in the SettingId: RunIntervalSeconds
and in the newValue the number of seconds (3600 is one hour)

5. Click on Invoke to change the setting

Manually refresh the cube

You can also choose to refresh the cube once. To do that follow the following steps.

1. Open the list of web services again with http://localhost:8080/tfs/TeamFoundation/Administration/v3.0/WarehouseControlService.asmx

2. Select the ProcessWarehouse web service from the list

clip_image003

3. Enter in the collectionName the name of the Project Collection you want to refresh. The default collection is named DefaultCollection, but you can change that in the collection that is in use on your TFS environment.

4. Click on Invoke

5. Go back to the list of webservices and click on the ProcessAnalysisDatabase webservice, and enter in the processType textbox the value Full.

clip_image004

6. Click on Invoke

7. The data warehouse is now refreshed. This can take some time when you have a large database. To check the status of the warehouse update, you can check the GetProcessingStatus webservice. You can leave the parameters for the webservice blank to retrieve all information. The warehouse update is ready when all jobs have the “Idle” job status.