I was recently working at a client’s site where they were using TFS 2008 in a dual server setup. When getting large numbers of files (e.g. a Get Latest for the whole solution of 20+ projects) they were intermittently see ‘Invalid file handle’ errors. However, if they selected a smaller set of files, or just retried it would often work. We could spot no major pattern other than volume of files.
Interestingly remote users, via a relatively slow ADSL based VPN, did not see the problem at all.
Due to the VPN users working we thought the problem might be due to the Application Tier (AT) being overloaded by the high-speed local LAB; so we tried throttling the IIS IO, but this had no effect.
Now the one different thing about this site was that the AT was running in a virtual environment. At Black Marble we run our AT on Virtual Server with no problem, but at this site they were using Parallels’ Virtuozzo, which is a somewhat different style of product to VMWare or VirtualPC.
The AT was showing no errors (other than the logged File Handle error) to suggest a loading problem. However when Virtuozzo was told to given more resource by default to the AT the errors were greatly reduced. I don’t think this is a complete solution yet but certainly a step in the right direction.