problem on OSX with repository in network shared partition

Mads Kiilerich mads at kiilerich.com
Mon Nov 29 09:56:31 CST 2010


On 11/29/2010 04:10 PM, sbarex sbarex wrote:
> Hi, I'm starting to experience a few days mercurial but I have a big
> problem:
> I'm on a mac with OSX 10.6 with a remote disk mounted from a XServe (OSX
> 10.4) with afs protocol.

Apparently not directly relevant, but note the warning on the hg man 
page and in "hg help clone":

For efficiency, hardlinks are used for cloning whenever the source and 
destination are on the same filesystem (note this applies only to the 
repository data, not to the working directory). Some filesystems, such 
as AFS, implement hardlinking incorrectly, but do not report errors. In 
these cases, use the --pull option to avoid hardlinking.

(Someone with interest in AFS could perhaps implement some automatic 
detection of this case, similar to what is used on Windows network 
shares now.)

> If I clone a repository form a local path (of directory inside a
> usb/firewire HD) to a path in the network drive I get a defective copy:

Is the copy really defect or is it "just" that you can't use it with 
Mercurial over AFS? Does it work if you copy it back to your local disk?

> - on the root of the repository I found a symlink named like
> hg-checklink-Z0jTkj cross linked with current directory:

That indicates that this shell command sequence also fails on AFS:

ln -s . hg-checklink-xxx && unlink hg-checklink-xxx

or

python -c 'import os; os.symlink(".", "x"); os.unlink("x")'

Can you test that?

> - if I try to remove a file, hg say me:
> $ hg remove file.txt
> waiting for lock on working directory of
> /Volumes/XRAID/Developer/repository held by 'Mac-Pro-di-sbarex.local:45849'
> and in .hg folder many wlock files are created...

Mercurial uses symlinks for locking - if symlinks works. But it seems 
like symlinks and symlink detection doesn't work.

/Mads


More information about the Mercurial mailing list