TF400917: The current configuration is not valid for this feature. This feature cannot be used until you correct the configuration

by Xavier Dilip Kumar 11. January 2015 08:43


TF400917: The current configuration is not valid for this feature. This feature cannot be used until you correct the configuration


After adding a initial state New to  Bug work item workflow, the backlog and the task board showed the error:

TF400917: The current configuration is not valid for this feature. This feature cannot be used until you correct the configuration


1. Export team project's CommonConfiguration.xml

witadmin exportcommonprocessconfig /collection:<Collection URL> /p:<Team Project Name> /f:<CommonConfiguration.xml>

2. Add the new state to CommonConfiguration.xml's BugCategory

  <BugWorkItems category="Microsoft.BugCategory">


      <State type="Proposed" value="New" />

      <State type="InProgress" value="Active" />

      <State type="Complete" value="Closed" />

      <State type="Resolved" value="Resolved" />



3. Import the updated CommonConfiguration.xml to team project

witadmin Importcommonprocessconfig /collection:<Collection URL> /p:<Team Project Name> /f:<CommonConfiguration.xml>

Tags: ,

TFS | TFS 2012

How to track TFS Job execution status?

by Xavier Dilip Kumar 23. December 2014 11:09


You can query the list of TFS Jobs from the Tfs_Configuration database tbl_JobDefinition table

SELECT *  FROM [Tfs_Configuration].[dbo].[tbl_JobDefinition]

Job Id Job Name
077785F6-AB53-46C3-9519-0BC8CDFD8AF0 Message Queue Cleanup Job
C03C29A7-00AE-4E02-94BC-18ACA80E2EA2 Team Foundation Server Image Cleanup
DD7629E4-66BB-45F9-AD42-2651BD7E56B8 Team Foundation Server Send Email Confirmation Job
47EC1DEB-483A-441F-8F27-2E739FB69A2F Runtime SQM Data Collector Job
3C601170-8080-4A7D-B8E7-48E991F80C4A Team Foundation Server Application Tier Maintanence Job
68D12C31-4894-49C3-8E12-4D3E954C98E7 Team Foundation Server On Demand Identity Synchronization
D904F618-F83E-4727-B66B-5E032A3965DB Collection Servicing SQM Monitor
99653238-499B-437B-8E6E-5F4B6C0C6ABA Incremental Analysis Database Sync
C3483450-093E-415D-84B9-740C076219F0 CollectIdentityStatisticsJobExtension
B1516502-4633-432B-BDB3-74C802C5F2B7 Team Foundation Server Send Mail Job
544DD581-F72A-45A9-8DE0-8CD3A5F29DFE Team Foundation Server Periodic Identity Synchronization
AD129F91-596D-4BDC-9EEB-8E6D2BB13170 Full Analysis Database Sync
B19DDD28-9A95-42E2-9697-966FD822F1CD Prune Registry Audit Log
2ABF4FAB-5E36-4731-9E9F-9694C3CF0592 File Container Cleanup
519C2389-D96E-4B9A-A928-9FFB51F5FDFE Common Structures Warehouse Sync
63A78C70-8FE0-4743-BA2D-A00CF8C20FDF Security Identity Cleanup Job
7A3E559E-8EB7-4E90-A4F7-B7A2515D52B9 Team Foundation Server Framework File Service Cleanup
50CA7C9C-D868-4701-A5A3-D2459CC16A5E Optimize Databases
AF87E4CD-D421-4A24-BF16-D3A68371703E Team Foundation Server Database Optimization
8FC76967-DA5D-4D53-937B-E3EFC6AF0FCB Job History Cleanup Job
62C4F0BD-75EB-4A20-9C43-E3F479AB2F51 Optimize Databases
A4804DCF-4BB6-4109-B61C-E59C2E8A9FF7 Team Foundation Server Event Processing
AD9C60AE-5BF0-4AC0-BE56-F2988088859A Team Foundation Server Activity Logging Administration
81A90003-CA23-4E55-9320-F956F62A2477 Team Foundation Server Data Maintanence

Using the Job Id, you can get the job execution details from the Tfs_Configuration database tbl_JobHistory table

SELECT * FROM [Tfs_Configuration].[dbo].[tbl_JobHistory] where [JobId] = 'XXX'

Following query gets the "Team Foundation Server Send Mail Job"  details

SELECT * FROM [Tfs_Configuration].[dbo].[tbl_JobHistory] where [JobId] = 'B1516502-4633-432B-BDB3-74C802C5F2B7' 

tbl_JobHistory table field details

1) Job ID – Every job in the system has a unique id.

2) Job Agent ID – Every AT/Job Agent has a unique id.  This field is useful if you have multiple application tiers and you want to know which one the job executed on so that you can investigate the event log or performance counters.

3) Result – This is an integer that represents the result of the job. 

   0 = Succeeded

   1 = PartiallySucceeded

   2 = Failed

   3 = Stopped

   4 = Killed

   5 = Blocked

   6 = ExtensionNotFound

   7 = Inactive

   8 = Disabled

4) Queued Reason – This is an integer that represents the way a job was scheduled. 

   0 = No reason to execute the job

   1 = Job has a schedule

   2 = Queued manually

   4 = Queued manually while already in progress

   8 = Queued due to previous result (Blocked, Inactive)

5) Start Time – The local time that the job started executing on a job agent

6) End Time – The local time that the job finished executing on a job agent

7) Duration – The number of minutes that the job was executing for

8) Result Message – Jobs are able to log a status message when they finish executing.


How to process failed Jobs?

TFS Job details.

Tags: , ,

TFS | TFS 2012 | TFS 2013

Not able to connect to TFS cube (Tfs_Analysis - SSAS)

by Xavier Dilip Kumar 13. November 2014 09:20


Login failed for user XXX


I am not able to connect to TFS cube even though, I am in Tfs_Analysis --> TfsWarehouseDataReader's role. 


Make sure that you have enabled the "Read definition" database permission for TfsWarehouseDataReader role


Tags: , ,

SQL Analysis Services | TFS 2012 | TFS 2013

The number of items on your backlog exceeds the configured limit of 500

by Xavier Dilip Kumar 29. April 2014 19:29


The default display limit for the task board is 500 tasks.For performance reasons, the task board is restricted to display a maximum of 500 work items. When you open the task board, all work items are loaded into cache. so changing the limit increases the memory demand on your clients and might cause issues. Limiting the number of work items may yield quicker load times

Work Around:

You can modify the process template to increase the limit.

For TFS 2012, edit Agileprocessconfig.xml

For TFS 2013, edit ProcessConfiguration.xml

Step 1: Export Agileprocessconfig.xml from the team project

witadmin exportagileprocessconfig /collection:"http://tfs:8080/tfs/DefaultCollection"

 /p:DefaultProject /f:"c:\Agileprocessconfig.xml"

Step 2: Add a attribute "workItemCountLimit" to the <IterationBacklog> element as below

<?xml version="1.0" encoding="utf-8"?>
  <IterationBacklog workItemCountLimit="1000">
      <Column width="50" refname="Microsoft.VSTS.Scheduling.Effort" />
      <Column width="400" refname="System.Title" />
      <Column width="100" refname="System.State" />
      <Column width="100" refname="System.AssignedTo" />
      <Column width="50" refname="Microsoft.VSTS.Scheduling.RemainingWork" />
        <Field refname="System.Title" />
      <Column width="400" refname="System.Title" />
      <Column width="100" refname="System.State" />
      <Column width="50" refname="Microsoft.VSTS.Scheduling.Effort" />
      <Column width="200" refname="System.IterationPath" />
      <Column width="200" refname="System.Tags" />

Step 3 : validate your Agileprocessconfig.xml

witadmin importagileprocessconfig /collection:"http://tfs:8080/tfs/DefaultCollection"

 /p:DefaultProject /f:"c:\Agileprocessconfig.xml" /v

Step 4: Import Agileprocessconfig.xml to the team project

witadmin importagileprocessconfig /collection:"http://tfs:8080/tfs/DefaultCollection"

 /p:DefaultProject /f:"c:\Agileprocessconfig.xml"

Tags: ,

TFS | TFS 2012 | TFS 2013

TF400898: An Internal Error Occured.

by Xavier Dilip Kumar 16. April 2014 19:18


Server side exceptions:

System.ArgumentOutOfRangeException: startIndex cannot be larger than length of string.

Parameter name: startIndex

   at System.String.InternalSubStringWithChecks(Int32 startIndex, Int32 length, Boolean fAlwaysCopy)

   at Microsoft.TeamFoundation.Server.WebAccess.Routing.TfsRoute.GetRouteData(HttpContextBase httpContext)

   at System.Web.Routing.RouteCollection.GetRouteData(HttpContextBase httpContext)

   at System.Web.Routing.UrlRoutingModule.PostResolveRequestCache(HttpContextBase context)

   at System.Web.HttpApplication.SyncEventExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute()

   at System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean&amp; completedSynchronously)


This error occurred while trying to access the TFS 2012 update 3 server team project website for viewing boards or creating PBIs, bugs and other work items. The error can be reproduced by clicking back and forth a few times between the home page and CODE, WORK, TEST, etc. The issue was specific to one specific collection in the server. 


One of the team project's shared query with wrong condition clause was trying to load 73000+ WIs which was pinned to the Team Favorites in the home page causing the issue. The issue was resolved after correcting the query.

Tags: ,

TFS | TFS 2012

Work item history display revision change even though no field values were updated

by Xavier Dilip Kumar 15. April 2014 13:36


  1. History displays all changes to Rev field through service account when iteration path nodes are modified
  2. Changed date and Changed by field values are updated automatically


This issue occur when we rename, move, or make any changes to the iteration path nodes in TFS web portal settings.

More Details


TFS 2012 | TFS 2013

Build.targets (19): TF10131: The shelveset name _Build_XXXXX?queueId=XXXX contains more than 64 characters, contains one of the following characters: "/:<>\|*?; or ends with a space. Type a valid name and try again. Build.targets (19): The "Get" task failed unexpectedly.

by Xavier Dilip Kumar 14. April 2014 11:41


This error occurs when attempting a gated checkin following environment:

* TFS 2012 Update 3 or earlier updates application server

* TFS 2010 SP1 Build Server

* "UpgradeTemplate.xaml" used for build process


This is a known issue that has been fixed with TFS 2012 Update 4

Tags: , ,

TFS | TFS 2010 | TFS 2012

How to install TFS update on TFS Servers?

by Xavier Dilip Kumar 9. April 2014 20:32


1. Log on to your TFS App tier

Note : Make sure you had backed up all databases related to TFS before installing the update

2. Use TFSServiceControl quiesce command to ensure that all necessary operations, services, and application pools are stopped for maintenance tasks

  • TFSServiceControl quiesce

3. Install the update.

4. Run the TFS Admin console tool to configure the TFS App Tier for installed update.

5. Use TFSServiceControl unquiesce command to start all necessary operations, services, and application pools for TFS

  • TFSServiceControl unquiesce 

If you have multiple app tier(s), proceed with step 1 to 3 on each app tier one by one first and then proceed with step 4 and 5 on each app tier one by one.

Tags: ,

TFS 2012 | TFS 2013

Could not connect to TFS server within Eclipse plugin from linux OS

by Xavier Dilip Kumar 25. March 2014 07:35


TFS user was not able to connect to TFS through Eclipse plugin from linux box. TFS connection hangs forever. When I tried to debug, I found the user was not able connect to intranet\internet within Eclipse IDE.


Enabled the proxy settings in the Eclipse IDE. Following are the steps

1. Open Eclipse

2. Go to "Windows" --> " Preferences" menu

3. Expand "general"

4. Select  "Network Connections"

5. Select "Active Provider" as manual

6. Select " HTTP " --> click "Edit"  --> Enter Host as "Your proxy server" and port as "Your proxy server port (usually 80)" --> click "ok" --> click "ok" --> click "apply"

7. Restart "Eclipse"

8. Try connecting to TFS Server.



TFS | TFS 2012 | TFS 2013

How to enable the TFS add-in for excel?

by Xavier Dilip Kumar 18. March 2014 11:33


  • Open Excel
  • Click on “File” --> “Option” menu
  • Click on “Add-Ins”
  • Search for “Team Foundation Add-in”
  • If you see “Team Foundation Add-in” under “Disabled Application Add-in”
  • Select “Disabled Items” and click “Go” button  
  • Select “Team Foundation Add-in” and click “Enable”
  • Close and reopen excel


TFS 2010 | TFS 2012 | TFS 2013

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


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