index > Team Foundation Server - Version Control > Rename command is very slow

Rename command is very slow


Hi,

I have to rename thousands of files in TFS. So I wrote a small tool to do it. However I found it performed very poorly. It took 5 minutes to rename 200 files. I have tried using tf.exe command and the VersionControl API. Both of them are very slow. Is it a known issue?

Thanks,
Heng-yi

Heng-yi Liu
Rename is slow but not that
Richard Berg MSFT

Hi,

It's actually a lot worse. I let the rename command run overnight. The following is the result I got back in the morning. I ran 6 batches of tf.exe command.

Rename 353 files: 50 minutes
Rename 353 files: 42 minutes
Rename 353 files: 76 minutes
Rename 388 files: 185 minutes
Rename 388 files: 288 minutes
Rename 388 files: 363 minutes

In the beginning of the rename command I watched the CPU usage in the TFS machine (single machine config). The sqlservr.exe CPU usage is always at 25%. And now after the rename is finished, it's on 50% constantly. (The warehouse status is Idle).

Heng-yi

Heng-yi Liu
Hmm. I've tested some more too and run into some severe slowdowns myself. Rename perf seems to depend heavily on the # of pending changes in the workspace. You might try pending X renames, checkin, then pending the next X renames, checkin, etc. (where X is somewhere between 10-100, based on a few tests I've run) Another option if perf is important would be to create lots of workspaces and split up the work so it can be done in parallel.
Richard Berg MSFT
I've reminded the perf team of the issue -- we had the bug in our database but hadn't revisited it since v1. Hopefully it will be addressed in time for vNext. Thanks for bringing this [back] to our attention.
Richard Berg MSFT

Another problem is once you have 2000 pending rename files in the workspace, the Get Latest command will just hang. I'll try to use your suggestion to rename files. Thanks.

Heng-yi

Heng-yi Liu
reply 6

You can use google to search for other answers

 

More Articles

View file permissions
Source Control Disabled
Trying to get Merged Changesets history between two Team Projects
code migration - mapping users that don't exist any longer
Merge operation created a folder behind TFVC's back
Labeling and local files
distributed development environment
Sourcecode corruption
TF hanging
Determine if there is a label already applied to the latest versi...
Welcome to Bokebb   New Update   Joins the collection  
 

New Articles

How does the OverlayIconIndex property o…
Baseless merge and version conflicts
Using MSSCCI provider with VS 2003
Performing a merge using the API
How to handle TFVC events?
How do I secure a branch?
How to change default My Work Item Query…
During a merge, the "Building Chang…
PendDelete usage and differences between…
get list of files changed after a specif…
TF10121
Undoing exclusive checkouts
Extend version control at time of check in
Sharing project code
TFS + ASP.NET Web Projects + Satellite A…

Hot Articles

Check-in policy errors / suggestions / q…
BizTalk 2006 and Team Foundation Server …
Database Size After Conversion
Is there a Starteam to TFS migration tool?
Mainline Development - label doesn't merge
VSS 2005 as a TFVC Client?
Bug in MSSCCI Provider or in VS2003 ?
Nice tool but small annoyances
Setting source control policies on speci…
Merged directories: How to? Impossible?
New Team Foundation Server MSSCCI Provid…
Starteam branching concepts in TFS
Eval Copy
Team Foundation Version Control WITHOUT …
Filtering in the Add Files dialog

Recommend Articles

many applications sharing framework proj…
How to extract list of changed files
I can't believe I miss SourceSafe!
TFS Proxy returns error in the middle of…
Show all files in a project which are ou…
Rename command is very slow
Can't delete folder from the Source Cont…
Perforce TS convertor
Migration warning (or error?)
Synchronizing TFS and Visual SourceSafe
Check-in policy errors / suggestions / q…
Massive confusion here...
Any exiting tools or method to print out…
Check-in Policy
Corruption in Source control