You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@subversion.apache.org by Jim Lawton <ji...@gmail.com> on 2005/07/08 09:04:01 UTC

[1.2.0, FSFS] db/locks subdirs not inheriting g+s bit?

Hi, 

Apologies in advance for this but I've searched the manual, faq, 
Google and browsed the sources and still can't figure out what I'm 
doing wrong. 

I'm running SVN 1.2.0 on a Linux box (RH7.3, 2.4.20 kernel), with the 
repos stored on an NFS filer. Access to the repos is via svn+ssh:// or 
file://. My umask is 022. 

Everything works fine until I started to use the lock command. When 
I try to lock a file, the svn lock command fails, because the g+s bit is
not set on a subdirectory it has just created in db/locks. The repos 
itself, repos/db and repos/db/locks all have g+s. Commits continue
to work to other files. 

The main reason that the lock command is failing is because our 
admins have implemented disk quotas and so if the g+s bit is not 
set on a directory, any files I try to create in it do not inherit the 
correct quota. The underlying reason seems to be that the db/locks
subdirs do not inherit the g+s bit correctly. 

I've appended a recipe below which demonstrates the problem. If I 
run this on a Linux 2.4 machine, subdirectories of db/locks are created 
without the g+s bit. If I run it on a 2.6 machine, it works fine. 

Any ideas would be appreciated.
/regards/jim

#########################################################
#!/bin/sh
rm -rf wc repos
REPOS=$(pwd)/repos
echo "Create repos at ${REPOS}"
svnadmin create ${REPOS}
echo "Check out repos"
svn co file://${REPOS} wc
cd wc
touch file.txt
ls -l file.txt
svn add file.txt
svn ps svn:needs-lock '' file.txt
echo "Check in file"
svn ci -m ''
ls -l file.txt
echo "Before lock, db dir:"
ls -al ${REPOS}/db
echo "Lock file"
svn lock file.txt
echo "After lock, db dir:"
ls -al ${REPOS}/db
echo "After lock, locks dir:"
ls -al ${REPOS}/db/locks  # 2.4: g-s; 2.6: g+s
echo "Unlock file"
svn unlock file.txt
echo "After unlock, db dir:"
ls -al ${REPOS}/db
echo "After unlock, locks dir:"
ls -al ${REPOS}/db/locks
echo "Check in file"
svn ci -m '' file.txt
ls -l file.txt
#########################################################

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@subversion.tigris.org
For additional commands, e-mail: users-help@subversion.tigris.org


Re: [1.2.0, FSFS] db/locks subdirs not inheriting g+s bit?

Posted by Jim Lawton <ji...@gmail.com>.
Just in case anyone else experiences similar problems, the solution was
arrived at by building SVN from source (I had been using RPM packages). 
The build process is straightforward. 

/regards/jim

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@subversion.tigris.org
For additional commands, e-mail: users-help@subversion.tigris.org