Skip to main content

TFS Reports Out of Date

You may have noticed it takes a while for Team Foundation Server (TFS) reports to reflect changes you've made to work items or builds. Let me guess...about an hour, right? Out of the box, TFS is set to refresh the data warehouse from its transactional store every 60 minutes.

How do I change the frequency of the data warehouse refresh?
  1. Browse to the TFS Controller Web Service on your TFS application tier server within IE at: http://localhost:8080/Warehouse/v1.0/warehousecontroller.asmx
  2. Select the ChangeSetting option
  3. Enter RunIntervalSeconds for the settingId and the desired number of seconds for newValue (300 for 5 minutes...5*60)
  4. Select Invoke

refresh-0

How do I force a data warehouse refresh?

Two methods here: either via the above web service or using SQL Server Management Studio.

Via the web service:

  1. Browse to the TFS Controller Web Service within IE at: http://localhost:8080/Warehouse/v1.0/warehousecontroller.asmx
  2. Select the Run option
  3. Click Invoke
  4. You should expect a new browser window opening along with an XML fragment with the element reporting true. If false, something went awry.
  5. Close the browser
  6. Click "Click here for a complete list of operations"
  7. Click GetWarehouseStatus
  8. Click Invoke
  9. You should see either idle (it completed) or running

Via SQL Server Management Studio:

  1. Open SQL Server Management Studio
  2. Authenticate with Analysis Services
  3. Drill into Databases to TfsWarehouse
  4. Right-mouse selecting Process
  5. Click Ok, and finally Close when processing completes

refresh-1

My reports still aren't refreshed and reflect an old refresh date. What gives?

For performance and scalability, SQL Server Reporting Services (SSRS) caches reports. By default, it's set to expire the cache every 30 minutes. On a per-report basis, you may change or even eliminate this caching behavior:

  1. Browse to SSRS using IE at: http://localhost/Reports/
  2. Select a report
  3. Click the Properties tab...Execution option
  4. In a production setting, you might dial back the sliding scale from 30 to 15 or 20 minutes. Because I frequently perform demos, I actually eliminate the caching.

refresh-2

Comments

Anonymous said…
Thanks man, you saved me some serious frustration!
Robaticus said…
Old post, but a good post. Is there any guidance for the frequency of updates? I know the default is 1 or 2 hours, but is there any harm if we set the update to every 5 minutes?
Jeff Hunsaker said…
@Robaticus Not that I've ever seen. I think you'd want to monitor your data tier performance and look at responsiveness. And, obviously, you'd want to make sure the refresh occurred within a 5 minute window. :) Finally, if you're not caching within SSRS, this would render reports without data. Potentially a poor user experience.
Jeff Clark said…
Thanks Jeff
Anonymous said…
Good stuff, one other thing to consider is, if you view your reports through a SharePoint dashboard the SharePoint server may also be caching the report. Hmmm
Anonymous said…
Link for TFS 2010 is;
http://localhost:8080/tfs/TeamFoundation/Administration/v3.0/WarehouseControlService.asmx

Popular posts from this blog

TFS Error | The type initializer for 'Microsoft.TeamFoundation.Build.Server.BuildInformationNodeBinder' threw an exception.

Posting this one for the search engines. If you ever receive the exception "The type initializer for 'Microsoft.TeamFoundation.Build.Server.BuildInformationNodeBinder' threw an exception.", more than likely, your drive space is at 0 on your TFS application tier box.

I encountered this at a client recently. The root cause was that IIS logs had filled up the OS drive (C:\). I switched IIS logging to the applications drive (D:\) which cleaned up the OS drive and resolved the issue.

Detailed message:


TF53010: The following error has occurred in a Team Foundation component or extension:


Date (UTC): 6/7/2011 4:18:53 PM

Machine: TFSATBOX

Application Domain: /LM/W3SVC/8080/ROOT/tfs-1-129519118182628600

Assembly: Microsoft.TeamFoundation.Framework.Server, Version=10.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a; v2.0.50727

Service Host: 7ecfbd77-b386-4d75-b038-b05474782696 (DefaultCollection)

Process Details:

Process Name: w3wp

Process Id: 3676

Thread Id: 5752

Ac…

Verified by Visa: Everything We Tell Folks to Avoid

Phishing is defined by F-Secure as: "Fraudulent e-mail or website claiming to be legitimate seeking indentifiable information. Phishing is an attempt to steal your personal data."When I recently attempted an online purchase from WalMart using my VISA card, being a security wanta-be, I immediately thought phishing when redirected to verifiedbyvisa.com and saw this dialog:

Seriously, these folks have to be kidding. You're asking for my personal data during a transaction and claim that's its a service "...at no additional cost." Wow! Thanks...but absolutely not, you jokers. As a malicious thief, I can go a long way with this data.

This is exactly the type of experience which aids malfeasance and the folks trying to steal personal data / identities. How long have we been working to educate folks to avoid providing this type of data under these type of circumstances? Years. And we're just now starting to turn the corner.

VISA, get rid of this! When folks submi…

Shrinking WSS (Sharepoint) SQL Server Log Files

Yesterday, while migrating a source repository from StarTeam to TFS, I received the following error:
"TF30042: The database is full. Contact your Team Foundation Server administrator."Excuse you? Sure enough, my 100+ GB drive was full on the server. But I'd only migrated around 1000 items. Surely SQL wasn't consuming 100MB per file.

Turns out (yes, there was a lot of crud on the drive but...) the majority of the space, almost 40GB was being consumed by the Windows Sharepoint Services WSS Content data and log SQL Server files. Huh? I still need to investigate and understand why this portal, which is 100% unused, grew so large. Regardless, here's what I did to resolve:

Since this is not yet a production database, I flipped the SQL recovery option from Full to Simple for WSS Content and several other databases. Detail here and here.
Executed the maintenance plan for all the databases to get backups and clear out some of these files. That didn't help much. The Auto_…