On Apr 22, 12:07pm, [EMAIL PROTECTED] (Larry Jones) wrote: -- Subject: Re: (no subject)
| Christos Zoulas writes: | > | > Unfortunately, I don't have a choice here. The directory is automounted | > using amd(8) | | That means you're using an NFS-mounted repository, which is an extremely | bad idea. We have received numerous reports of repository corruption | caused by NFS bugs. I strongly suggest switching to client/server CVS | with the server running on the machine where the repository is. I am not using nfs to access the repository. As my bug report mentions, this problem appears only with the client-server code. If I run the code on the local server, it works. On the server the repository is mounted via amd as a local mount: % amq | grep /src/twosigma /src/twosigma ufs /dev/sda9 /net/fsdv1/src-1/twosigma It is just that I don't want to give out /net/fsdv1/src-1/twosigma as the repository name, and I want to keep the logical name /src/twosigma as the advertised repository path, so that I can move things around when I want to. Now, the problem is that cvs does not distinguish between logical [paths containing symlinks] and physical names [paths that do not]. It would be simple to find all the places where the client passes a pathname to the server and then use realpath(3) to convert it to the physical path before doing any further processing to it. Then my fix would not be needed. Eventually somebody will need to go and fix the cvs code to deal with symlinks. Saying don't do this because it does not work is only applicable when one has the choice. It is not like symbolic links were invented yesterday; they've been around for 20 years now. Regards, christos _______________________________________________ Bug-cvs mailing list [EMAIL PROTECTED] http://mail.gnu.org/mailman/listinfo/bug-cvs