The Action Can’t Be Completed Because the File is Open in NodeRunner.exe

On an Exchange Server 2013 server that is installed with the Mailbox server role, when you attempt to delete the files and folders for a database or database copy that has been removed, you may receive an error.

exchange-2010-removing-database-files-01

exchange-2010-removing-database-files-02

The action can’t be completed because the file is open in noderunner.exe

Inside the folders that previously contained the database you will see various subfolders and index files relating to search services.

exchange-2010-removing-database-files-03

The issue is that even though the database has been removed the search/index files are still locked by the noderunner.exe process and can’t be deleted.

Using Process Explorer we can see that noderunner.exe is a child process of the Microsoft Exchange Search Host Controller (HostControllerService) service.

exchange-2010-removing-database-files-04

exchange-2010-removing-database-files-05

To clear the file lock you can restart the HostControllerService service using PowerShell.

PS C:\> Restart-Service HostControllerService

You should now be able to delete the files and folders successfully.

In my own scenario the HostControllerService began consuming a large amount of CPU for a short period of time after the restart, but then calmed down to normal levels again after a few moments.

Comments

  1. Aakash says

    Thanks. This was useful.
    So what is the right way to delete the Exchange files after we remove the MB Database? Do you suggest restarting the host controller service all the time.

  2. Tim says

    But you know what, the files will be generated later again!

    Pretty scary…I believe the FAST cache should be cleared somewhere but MS just didn’t release any information about it…

      • Simon says

        Hi Paul,
        I’m afraid those files will be generated again even if you do NOT create a database in that path again… It seems to me the Search Service creates those files again even if the db is deleted.

        This looks like a Microsoft bug to me.

  3. Vant Seto says

    The problem exists with the final release of Exchange 2013 Enterprise. Stop the service, delete the entire folder, start the service and the folder is recreated. You can’t get rid of these files.

  4. JeanLuc says

    It appears with Exchange 2013 SP1..
    I deleted when the service was stopped. I’m afraid to look for process monitor.. may be it search these files again….

  5. Tom says

    Paul, I’ve run into a similar issue, but I can’t perform a database reseed because it’s showing that a process has locked the edb file. The process that seems to have it locked is microsoft.exchange.store.worker.exe. I can’t seem to find a way to remove that lock. Tried restarting the service mentioned above, tried to restart the information store (after failing all DBs over), but it’s still showing it’s locked by the same process. I tried to rename the EDB file since it’s only 4GB, but it said the microsoft.exchange.store.worker.exe process had it locked. Any thoughts on removing that lock?

      • Tom says

        I just tried your suggestion and it still wouldn’t reseed – the file remained locked by the store.worker.exe process. Bizarre! I finally got a reseed going by failing over all DBs and rebooting the server. Not much of a long term fix, but at least it’s something for now.

  6. Shawn says

    Looks like this is still an issue with SP1. I’ve stopped FastSearch, Host Controller and Store and once they’re started again, the files and file structure reappear.

    Any news on this?

Leave a Reply

Your email address will not be published. Required fields are marked *