[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
RE: rtag and its locking behavior
From: |
Pyatt, Scott |
Subject: |
RE: rtag and its locking behavior |
Date: |
Tue, 30 Oct 2001 16:07:14 -0800 |
Dean Do wrote:
> Is there a way for me to change this rtag behavior where
> it only locks one directory at a time as it tags the files
> in that directory?
This is new behavior as of 1.11.1p1. Here is a post from Larry Jones
from a couple months back that describes the reason for this behavior.
> It's an important bug fix, implemented sub-optimally. The directory-at-
> a-time locking was seriously flawed in that CVS actually read the RCS
> files and cached some of their contents *before* locking the directory.
> That means that it was possible for a commit to happen between the time
> that tag first read the file and the time it locked the directory; when
> the file was rewritten to apply the tag, the commit would be lost.
>
> Because of the way CVS is architected, the only easy way to solve the
> problem was to lock the whole directory tree up-front, like commit does.
> Fixing the directory-at-a-time locking would be a better fix, but it
> would also require a *lot* of effort.
>
> -Larry Jones
Your repository is locked for 20 minutes, while ours was being locked
for 3 hours (ouch!). I suggest you use some method of walking your
source tree and tagging one directory at a time (see the -l option).
We've done this with a small Perl script run in a workspace. Therefore,
we always use the "tag -l" command now rather than "rtag".
Good luck.
-Scott
-----Original Message-----
From: Dean Do [mailto:address@hidden
Sent: Tuesday, October 30, 2001 3:31 PM
To: address@hidden
Subject: rtag and its locking behavior
Hello,
I have a question concerning the rtag command and its
locking behavior. Whenever I run `cvs rtag` command,
it read/write locks the whole tree [all directories]
from everyone until it is done tagging every file.
Since our sw tree is quite big, this rtag process takes
~20min to complete.
Is there a way for me to change this rtag behavior where
it only locks one directory at a time as it tags the files
in that directory? Once it is done tagging the files in
a directory, it should release the lock in that directory
and moves to the next one. I can't find anything in the
CVS manual on this subject.
I'm currently running CVS 1.11.1p1 on Solaris8. I would
appreciate any assistance in this.
Thanks,
Dean
_______________________________________________
Info-cvs mailing list
address@hidden
http://mail.gnu.org/mailman/listinfo/info-cvs