I'm currently investigating a problem with my company's build server; roughly 1/10 of the builds fail due to a file being locked. It's a Windows 2003 virtual server running on top of VMWare. The server is not alone in the issue, with other servers experiencing similar problems, but it's the most pronounced as the build system accesses vastly more files more frequently than most others.

Attempts to identify the process locking the files have failed; by the time we run a program like Process Explorer, there are no locks present on the files in question.

I've tried running Process Monitor, but there's such a volume of information over the thousands of files used by the build system and it's not easy to identify what specifically has locked a file at the time the error occurs.

Are there any tools or techniques that we can use to identify the process locking these files?

  • Is the file locked or just opened ? Have you tried disabling your AV ? – Stephane Nov 11 '11 at 8:18
  • AV has been disabled. As for the error, we simply get a message that the file is locked. – Paul Turner Nov 11 '11 at 10:00
  • Are the locked files in any sort of pattern like always in a specific directory or always a specific type? What tools(s) are you using to run the build? – Top__Hat Nov 11 '11 at 13:44
  • No pattern than I can observe; the locks appear totally at random. Sometimes it's the publishing step (pushing built assemblies into an output folder), sometimes it's in prepare step (deleting logs and artifacts from the last build). We're using MSBuild and a little NAnt to perform file manipulation. – Paul Turner Nov 11 '11 at 13:47
  • It really, really sounds like an AV issue or, at least, a problem with a file system filter. Can you double-check it, please ? Specially on the server itself (and make sure the AV doesn't get re-enabled by a policy push) – Stephane Nov 11 '11 at 15:41

You are right on in thinking processmon is the answer. It now contains the functionality of the old filemon tool. The key is to set a filter targeting the files in question to reduce the overwhelming noise. Here's an example of usage:


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.