MacOS – .afpDeleted* files, who’s making them

filesystemmacos

When I use ls, I get the following message.

ls: .afpDeleted38045157: No such file or directory

My svn fails in this directory with

svn: E070008: Can't read directory 'current path': Partial results are valid but processing is incomplete

Apparently, these .afpDeleted files are some form of deleted files that are still open according to http://lists.apple.com/archives/macos-x-server/2004/Jun/msg01271.html

How do I know which program generated this file? I can't even access what's in the file, nor can I remove it arbitrarily.

I'm using Mac OS 10.8.4.

EDIT: After killing several suspected processes, I found out it was my MATLAB. I still want to understand more about this afpDeleted* business though.

Best Answer

In the 2004 words of Leland Wallace, an Apple employee in the Core Servers group:

There is a unix programming "pattern" of creating a temp file, opening it, then deleting it, keeping it open. This allows the application to have a private scratch file that cannot be accessed by any other process (the file will to be completely deleted when it is closed). AFP does not have direct support for "open-delete" so we need to fake it by renaming the "deleted" file to .afpDeletedXXX and deferring the delete until it is closed.

Source: http://lists.apple.com/archives/macos-x-server/2004/Jun/msg01271.html