"TF400030: The local data store is currently in use by another operation. Please wait and then try your operation again. If this error persists, restart the application.”

by Xavier Dilip Kumar 19. December 2013 08:36

Exception:

"TF400030: The local data store is currently in use by another operation. Please wait and then try your operation again. If this error persists, restart the application.”

Explanation:

The error occur when using local workspaces in Visual Studio 2012 or later

TFS 2012 and VS 2012 featured with new workspace concept called “local” workspaces.The workspace concept which was available from VS/TFS 2005 - 2010 is called as “server” workspaces 

When a local workspace is created, The required data structures will be moved from the TFS server onto the TFS Client. The data structures are local to local machine instead of being hosted on the TFS server. Moving the data structures to local machine gives VS 2012 the ability to perform a number of source control operations without TFS web service calls. The following operations continue to work when the local machine is disconnected from the TFS server.

  • Opening a source-controlled solution
  • Checking out a file for edit
  • adding a new file or folder for add
  • Delete on an existing file or folder
  • Rename on an existing file or folder
  • Monitor pending changes in the workspace
  • Undoing pending changes
  • Diffing your copy of a file with the version of the file your change is pended against
  • The local workspace will not carry read only bit during get source.
  • “Promoting” the candidate adds and/or deletes
  • The local workspace will be invisible to VS 2010 and earlier versions
  • No enforcement of PendChange permission or checkout locks
  • The local workspace can be converted to Server workspace and reverse the same

Local workspaces have scalability limitations due to their use of the local workspace scanner which checks for edited items.If the workspace has more than 50,000 items, There may be performance problems or "TF400030 errors as operations exceed 45 seconds in duration." may occur

Reconciled operation on the server or deadlock between two operations may also trigger the error.

In Local workspace architecture, only a single operation (thread) can use this local data at a time. If two pieces of system want to use the data store simultaneously – perhaps the Solution Explorer and the Source Control Explorer both want to refresh after an Undo operation was performed – then these two components have to take turns to use the local data store. One will wait for the other to finish, and who gets to go first is arbitrary.

The ‘loser’ of the race has to wait before proceeding, but will only wait for about 45 seconds. If he ends up waiting for that full amount of time, but still doesn’t get the chance to use the local data store (because some other component of the system is still using it), then this error will be raised.

Workaround:

  • keep the size of the local workspace from growing too large, files and folders less than 50,000 items
  • Avoid working with extremely large sets of pending changes (10,000+) for a long time without checking in. This helps to keep ‘reconcile’ costs low
  • Install Visual Studio 2012 Update 2 or later to get protected from the deadlock scenarios
  • Convert the local workspace to server workspace

Tags:

TFS | TFS 2012 | Visual Studio 2012

Cannot add new build templates or create team projects on TFS because of error ‘The File Exists’

by Xavier Dilip Kumar 16. December 2013 08:14

Exception:

Explanation:

The error may occur when the following cache folder size increases.

C:\Users\<tfsservice account / Build account>\AppData\Local\Temp

Solution:

Clearing the content of the following cache folder location resolved issue with build and team project creation. 

C:\Users\<tfsservice account / Build account>\AppData\Local\Temp

Tags:

TFS | TFS 2010 | TFS 2012 | TFS 2013

TFS Versions

by Xavier Dilip Kumar 16. December 2013 07:51
TFS Versions    
2005 RTM 8.0.50727.147
  SP1 8.0.50727.762
     
2008 RTM 9.0.21022.8
  SP1 9.0.30729.1
     
2010 RTM 10.0.30319.1
  SP1 10.0.40219.1
  CU2 10.0.40219.371
     
2012 RTM 11.0.50727.1
  Update 1 11.0.51106.1
  Update 2 11.0.60315.1
  Update 3 11.0.60610.1
  Update 4  
     
2013 RTM 12.0.21005.1

Tags:

TFS | TFS 2010 | TFS 2012 | TFS 2013

How to Restart Team Foundation Server App Tier

by Xavier Dilip Kumar 10. December 2013 10:16

Solution:

Open command prompt as Administrator. Execute the follwoing commands

  1. %windir%\system32\inetsrv\appcmd recycle apppool /apppool.name:"Microsoft Team Foundation Server Application Pool" 
  2. net stop tfsjobagent 
  3. net start tfsjobagent

Tags:

TFS

TFS Service Unavailable – HTTP Error 503. The service is unavailable.

by Xavier Dilip Kumar 20. September 2013 07:32

Explanation:

The TFS 2010 web access url reported "Service Unavailable – HTTP Error 503. The service is unavailable.", but I was able to access TFS 2010 using Visual Studio IDE and other clients. Only the TFS web was not working

Solution:

Verify whether The "Microsoft Team Foundation Server Web Access Application Pool" is running. If not, start the app pool.

 

Tags:

TFS | TFS 2010

SharePoint Client-Side Object Model ClientContext.Load method cannot be loaded.

by Xavier Dilip Kumar 11. September 2013 11:59

Exception:

'Microsoft.SharePoint.Client.ClientContext' does not contain a definition for 'Load' and no extension method 'Load' accepting a first argument of type 'Microsoft.SharePoint.Client.ClientContext' could be found (are you missing a using directive or an assembly reference)

Explantion:

I got the above exception while using 'Microsoft.SharePoint.Client.ClientContext' load method in my share point web part project. Adding Microsoft.SharePoint.Client.Runtime.dll to project assembly references resolved the errors. The reason for the load method error is as follows

  • ClientContext inherits from ClientRuntimeContext
  • ClientContext is defined in Microsoft.SharePoint.Client.dll
  • ClientRuntimeContext is defined in Microsoft.SharePoint.Client.Runtime.dll
  • ClientRuntimeContext defines the Load method

Soultion:

Add Microsoft.SharePoint.Client.Runtime.dll along with Microsoft.SharePoint.Client.dll to project assembly references.

Tags:

SharePoint Development | TFS | SharePoint

TFS Jobs

by Xavier Dilip Kumar 2. September 2013 08:18
Job Name

 Interval

Build Warehouse Sync Every 30 minutes
Common Structures Warehouse Sync Every 30 minutes
Test Management Warehouse Sync Every 30 minutes
Version Control Warehouse Sync Every 30 minutes
Work Item Tracking Warehouse Sync Every 30 minutes
Synchronize Test Cases Every 10 minutes
Repopulate Dynamic Suites Every hour
Identity Synchronization Job -
This job synchronizes few properties of every user that is a member of a group in the system with the windows active directory
Every hour
Team Foundation Server Coverage Analysis Every hour
Work Item Tracking Integration Synchronization Every hour
Incremental Analysis Database Sync  Every 2 hours
Cleanup Discussion Database Daily
Cleanup Test Management Database Daily
File Container Cleanup Daily
Job History Cleanup Job -
This job removes the internal job history log records that are older than 31 days
Daily
Full Analysis Database Sync  Daily
Security Identity Cleanup Job Daily
Team Foundation Server Activity Logging Administration -
To purge data in the activity log (tbl_Command) that is older than 14 days
Daily
Team Foundation Server Event Processing Daily
Team Foundation Server Framework Data Cleanup Daily
Team Foundation Server Framework File Service Cleanup Daily
Team Foundation Server Send Mail Job -
 This job is responsible for sending out email alert subscriptions and SOAP alert subscriptions. 
Daily
Version Control Administration -
This job removes content in the database that has been previously destroyed. Also, it removes content that gets staged to a temporary table as part of the large check - in
Daily
Version Control Code Churn Daily
Version Control Delta Processing Daily
Version Control Statistics Update Daily
Work Item Tracking Administration -
This Job operates on the work item tracking tables. It reorganizes fragmented indexes and updates table statistics. It also deletes work items and attachments no longer used by the system. It will also delete orphaned attachments, beacuse saving a work item and uploading an attachment are two separate transactions, and one can succeed wiyhout the other.
Daily
Work Item Tracking Remove Orphan Attachments Daily
Optimize Databases -
This job operates on the relational warehouse database. It reorganizes fragmented indexes and updates table statistics
Daily
Build Information Cleanup Job -
To reorganize/rebuild any indexes in SQL that exceed the fragmentation threshold
2 days
Message Queue Cleanup Job 2 days
Prune Registry Audit Log 7 days
Work Item Tracking Referenced Identities Update 7 days
Work Item Tracking Remove unused constants 14 days
Build Cleanup Job  
Upgrade - Version Control Code Churn Online -
This is a once-off job that runs after upgrade from TFS2010 to TFS2012. The format for storing the code churn data changed, so rather than converting that data during upgrade, it was done slowly over time post-upgrade by this job
 

Reference:

Tags: ,

TFS | TFS 2010 | TFS 2012

Exception calling "QueryActiveRequests" with "2" argument(s): "Value cannot be null.

by Xavier Dilip Kumar 29. August 2013 09:55

Exception:

Exception calling "QueryActiveRequests" with "2" argument(s): "Value cannot be null.
Parameter name: second"
At C:\Builds\Service.ps1:2 char:30
+ $tfsadmin.QueryActiveRequests <<<< ($null, "False") | %{ $_.ActiveRequests } | ft StartTime,UserName,MethodName,RemoteComputer
    + CategoryInfo          : NotSpecified: (:) [], MethodInvocationException
    + FullyQualifiedErrorId : DotNetMethodException

Explanation:

The following powershell script to monitor the TFS active requests work on TFS 2010 but fails with the above exception on TFS 2012.

$tfsadmin = New-WebServiceProxy –UseDefaultCredential -URI http://tfs:8080/tfs/TeamFoundation/administration/v3.0/AdministrationService.asmx?WSDL
$tfsadmin.QueryActiveRequests($null, "False") | %{ $_.ActiveRequests } | ft StartTime,UserName,MethodName,RemoteComputer

While accessing TFS 2012 server, the QueryActiveRequests web method fails to accept null value as an argument.

Workaround:

The workaround is to pass the TFS 2012 HostId as first parameter instead of $null

Following are the step to find the TFS host id

1. Open Microsoft SQL Server Management Studio

2. Connect to TFS 2012 data tier

3. Execute the below query

USE [Tfs_Configuration]
SELECT [HostId], [Name] FROM [Tfs_Configuration].[dbo].[tbl_ServiceHost] where [Name] = 'TEAM FOUNDATION'

Result
-------

HostId                                                       Name
AAAAAAAA-96A2-4BA8-A74C-11422B123456 TEAM FOUNDATION

4. Replace $null with the HostId

$tfsadmin = New-WebServiceProxy –UseDefaultCredential -URI http://tfs:8080/tfs/TeamFoundation/administration/v3.0/AdministrationService.asmx?WSDL
$tfsadmin.QueryActiveRequests("AAAAAAAA-96A2-4BA8-A74C-11422B123456","False") | %{ $_.ActiveRequests } | sort StartTime | ft StartTime,UserName,MethodName,RemoteComputer

 

Tags: ,

TFS | TFS 2012

Process Template changes between TFS 2012 Update 1 to TFS 2012 Update 2

by Xavier Dilip Kumar 26. August 2013 19:24

Explanation:

System field named "Tags" column was added on the product backlog Workitem Type.

<ProductBacklog>
<Columns>
<Column refname="System.Title" width="400" />
<Column refname="System.State" width="100" />
<Column refname="Microsoft.VSTS.Scheduling.StoryPoints" width="50" />
<Column refname="Microsoft.VSTS.CMMI.RequirementType" width="50" />
<Column refname="System.IterationPath" width="200" />
<Column refname="System.Tags" width="200" />
</Columns>

Tags: ,

TFS | TFS 2012

How to find the process template name used to create the team project in TFS 2012?

by Xavier Dilip Kumar 26. August 2013 18:49

Solution:

Open Team project Web Access page

The project created using Scrum process template will have “Product Backlog Item” and “Bug” work items as Product Backlog Type

 The project created using Agile process template will have “User Story” work items as Product Backlog Type 

The project created using CMMI process template  will have  “Requirement” work items as Product Backlog  Type 

 

Tags: ,

TFS | TFS 2012

About the author

My name is Xavier Dilip Kumar Jayaraj and I am a Software Configuration Management Engineer with a background in application development, Build & packaging using Install Shield.

Profile in LinkedIn

  

Quotes I Like

"Failure will never overtake me if my determination to succeed is strong enough."  - Dr. APJ. Abdul Kalam

"Always be yourself, express yourself, have faith in yourself, do not go out and look for a successful personality and duplicate it." - Bruce Lee

"Technology is just a tool. In terms of getting the kids working together and motivating them, the teacher is the most important." - Bill Gates

"Innovation distinguishes between a leader and a follower." - Steve Jobs

Disclaimer

The information provided here is based on my expreriences, troubleshooting and online/offline findings. It can be used as is on your own risk without any warranties and I impose no rights.

Month List