This is the mail archive of the gcc@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

Re: Inconsistance in snapshots repository



  In message <199804162331.TAA25018@melange.gnu.org>you write:
  > I'm CVS-unaware, but, generally, is this really guaranteed to provide
  > a coherent snapshot to anyone, anytime, including if they try using
  > it while a snapshot is being produced (and the "moving tag" updated)?
Nope.  But what it does do for the CVS folks is allow them to 
upgrade to whatever the current snapshot happens to be without
knowing the exact name of the tag.  I think that was the idea
behind the suggestion.  The tag doesn't move until I make the
snapshot available.

And the window where things can get out of sync is relatively small;
directories are locked as the tag is added/moved.

[ I'm not a CVS expert - there may or may not be things in CVS to
  prevent the following "problems". ]

To get an out of sync tree you'd have to start after the tag process
and somehow get ahead of the tag process (might be able to happen if
for example you don't have some subdirs and can "leap frog" over
the tag process while the tag process walks through the subdirs.

Another possibility would be an update starting after tagging, then
both the update & tag block waiting on the same lock.  The updater
might be able to get the lock before the tagger and get an inconsistent
tree.

The opposite of those cases might be able to happen too.

In both situations another cvs update ought to fix any
inconsistencies.


I don't consider these serious prolems (if they exist at all), but
others may disagree.

jeff


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]