Issue 319 - checkout from anancvs.openoffice.org fails
Summary: checkout from anancvs.openoffice.org fails
Status: CLOSED FIXED
Alias: None
Product: Infrastructure
Classification: Infrastructure
Component: _openoffice.org CVS (obsolete) (show other issues)
Version: current
Hardware: Sun Solaris
: P1 (highest) Trivial (vote)
Target Milestone: ---
Assignee: Unknown
QA Contact: issues@www
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2001-01-24 18:22 UTC by sander_traveling
Modified: 2003-12-06 14:52 UTC (History)
2 users (show)

See Also:
Issue Type: DEFECT
Latest Confirmation in: ---
Developer Difficulty: ---


Attachments

Note You need to log in before you can comment on or make changes to this issue.
Description sander_traveling 2001-01-24 18:22:45 UTC
This is *REALLY* important - we cannot make source tarballs until this starts to
work.

Right now runsocks cvs co -r OpenOffice614 OpenOffice fails with:

cvs: lock.c:177: lock_name: Assertion `(__extension__ (__builtin_constant_p (
strlen (CVSroot_directory)) && ((__builtin_constant_p (repository) && strlen
(repository) < ((size_t) ( strlen (CVSroot_directory)))) ||
(__builtin_constant_p ( CVSroot_directory) && strlen ( CVSroot_directory) <
((size_t) ( strlen (CVSroot_directory))))) ? __extension__ ({ size_t __s1_len,
__s2_len; (__builtin_constant_p (repository) && __builtin_constant_p (
CVSroot_directory) && (__s1_len = strlen (repository), __s2_len = strlen (
CVSroot_directory), (!((size_t)(const void *)((repository) + 1) - (size_t)(const
void *)(repository) == 1) || __s1_len >= 4) && (!((size_t)(const void *)((
CVSroot_directory) + 1) - (size_t)(const void *)( CVSroot_directory) == 1) ||
__s2_len >= 4)) ? memcmp ((__const char *) (repository), (__const char *) (
CVSroot_directory), (__s1_len < __s2_len ? __s1_len : __s2_len) + 1) :
(__builtin_constant_p (repository) && ((size_t)(const void *)((repository) + 1)
- (size_t)(const void *)(repository) == 1) && (__s1_len = strlen (repository),
__s1_len < 4) ? (__builtin_constant_p ( CVSroot_directory) && ((size_t)(const
void *)(( CVSroot_directory) + 1) - (size_t)(const void *)( CVSroot_directory)
== 1) ? (__extension__ ({ register int __result = (((__const unsigned char *)
(__const char *) (repository))[0] - ((__const unsigned char *) (__const char *)(
CVSroot_directory))[0]); if ( __s1_len > 0 && __result == 0) { __result =
(((__const unsigned char *) (__const char *) (repository))[1] - ((__const
unsigned char *) (__const char *) ( CVSroot_directory))[1]); if ( __s1_len > 1
&& __result == 0) { __result = (((__const unsigned char *) (__const char *)
(repository))[2] - ((__const unsigned char *) (__const char *) (
CVSroot_directory))[2]); if ( __s1_len > 2 && __result == 0) __result =
(((__const unsigned char *) (__const char *) (repository))[3] - ((__const
unsigned char *) (__const char *) ( CVSroot_directory))[3]); } } __result; })) :
(__extension__ ({ __const unsigned char *__s2 = (__const unsigned char *)
(__const char *) ( CVSroot_directory); register int __result = (((__const
unsigned char *) (__const char *) (repository))[0] - __s2[0]); if ( __s1_len > 0
&& __result == 0) { __result = (((__const unsigned char *) (__const char *)
(repository))[1] - __s2[1]); if ( __s1_len > 1 && __result == 0) { __result =
(((__const unsigned char *) (__const char *) (repository))[2] - __s2[2]); if (
__s1_len > 2 && __result == 0) __result = (((__const unsigned char *) (__const
char *) (repository))[3] - __s2[3]); } } __result; }))) : (__builtin_constant_p
( CVSroot_directory) && ((size_t)(const void *)(( CVSroot_directory) + 1) -
(size_t)(const void *)( CVSroot_directory) == 1) && (__s2_len = strlen (
CVSroot_directory), __s2_len < 4) ? (__builtin_constant_p (repository) &&
((size_t)(const void *)((repository) + 1) - (size_t)(const void *)(repository)
== 1) ? (__extension__ ({ register int __result = (((__const unsigned char *)
(__const char *) (repository))[0] - ((__const unsigned char *) (__const char *)(
CVSroot_directory))[0]); if ( __s2_len > 0 && __result == 0) { __result =
(((__const unsigned char *) (__const char *) (repository))[1] - ((__const
unsigned char *) (__const char *) ( CVSroot_directory))[1]); if ( __s2_len > 1
&& __result == 0) { __result = (((__const unsigned char *) (__const char *)
(repository))[2] - ((__const unsigned char *) (__const char *) (
CVSroot_directory))[2]); if ( __s2_len > 2 && __result == 0) __result =
(((__const unsigned char *) (__const char *) (repository))[3] - ((__const
unsigned char *) (__const char *) ( CVSroot_directory))[3]); } } __result; })) :
(__extension__ ({ __const unsigned char *__s1 = (__const unsigned char *)
(__const char *) (repository); register int __result = __s1[0] - ((__const
unsigned char *) (__const char *) ( CVSroot_directory))[0]; if ( __s2_len > 0 &&
__result == 0) { __result = (__s1[1] - ((__const unsigned char *) (__const char
*) ( CVSroot_directory))[1]); if ( __s2_len > 1 && __result == 0) { __result =
(__s1[2] - ((__const unsigned char *) (__const char *) (
CVSroot_directory))[2]); if ( __s2_len > 2 && __result == 0) __result = (__s1[3]
- ((__const unsigned char *) (__const char *) ( CVSroot_directory))[3]); } }
__result; }))) : strcmp (repository, CVSroot_directory)))); }) : strncmp
(repository, CVSroot_directory, strlen (CVSroot_directory)))) == 0' failed.
Terminated with fatal signal 6
Comment 1 Unknown 2001-01-24 19:54:54 UTC
From my investigation it looks like this file:

lrwxrwxrwx    1 root     root           24 Oct 12 19:35 val-tags ->
/cvs/oo/CVSROOT/val-tags

isn't being synced from the master server correctly.

To fix this problem I could manually copy over the
val-tags file, but that would only be a temporary fix....and
not one which would fix the underlying problem of why that
file isn't being correctly synced from the master CVS server.

NPM, originally setup the syncing mechanism so it would be best
to have him take a look and understand why that file isn't
correctly syncing.

My $.03
Shane
Comment 2 Unknown 2001-01-24 19:55:23 UTC
Added npm to cc list.
Comment 3 Unknown 2001-01-24 19:57:52 UTC
I wasn't on this issue...so I added myself.
Comment 4 bill.roth 2001-01-24 20:03:23 UTC
added broth as cc
Comment 5 Unknown 2001-01-24 20:12:46 UTC
If this needs to be a quick fix for OO to get the next
release out the door then I can try to get one working, but
for the long run we need to get to the underlying problem.

Please update this issue with the Sun decision.

Thanks
Shane
Comment 6 sander_traveling 2001-01-24 20:16:48 UTC
OpenOffice614 snapshot cannot hapopen before it is fixed. 
Comment 7 stx123 2001-01-24 20:18:00 UTC
Yes, please, apply the short term solution so that Sander can create the source
tarball.
After checking out, Sander should synchronize with the appropriate persons
(Shane,Niels).
Comment 8 Unknown 2001-01-24 22:04:38 UTC
I had this problem initially, but after CVSUP ran to update the anoncvs mirror,
everything worked again. The problem is that normally CVS on
anoncvs.openoffice.org is updated once per hour via CVSUP from
mastercvs.openoffice.org. The CVSROOT/val-tags file, which keeps a cache of
valid tags is one of the files which is updated by CVSUP. The file itself is
not writable by anoncvs (for security purposes, cvs -d
':pserver:anoncvs@anoncvs.openoffice.org:/cvs' co -r OpenOffice614 OpenOffice
anoncvs can't write anything
at all in CVSROOT).

What happened is that doing "cvs co -r OpenOffice614 ..." failed because
tag "OpenOffice614" had not propagated to the anoncvs machine. The assertion
output you saw was a separate bug in our version of cvs/pserver on anoncvs
which arose because anoncvs couldn't find the tag in CVSROOT/valid-tags. That
is a bug, which we will fix next time we upgrade the machine.

Here is what needs to happen in order to repeat this problem:

	(1) do "cvs -d ':pserver:<user>@mastercvs.openoffice.org:/cvs' -r <tagname>
OpenOffice"
		 -- this will ensure that the new tag name is setup on
                    mastercvs's CVSROOT/val-tags
	(2) CVSUP will propagate the new tag to anoncvs.openoffice.org
            once an hour, on the hour.
        (3) at a few minutes past the hour, you will be able to issue
            on anoncvs.openoffice.org
            "cvs -d ':pserver:anoncvs@anoncvs.openoffice.org:/cvs' -r <tagname>
OpenOffice"

I'm changing this issue to WORKSFORME because it worked for me:	

shell> cvs -d ':pserver:anoncvs@anoncvs.openoffice.org:/cvs' login
(Logging in to anoncvs@anoncvs.openoffice.org)
CVS password:
shell> cvs -d ':pserver:anoncvs@anoncvs.openoffice.org:/cvs' co -r OpenOffice614
OpenOffice
cvs server: Updating transex3
U transex3/makefile.rc
cvs server: Updating transex3/prj
U transex3/prj/d.lst
cvs server: Updating transex3/source
U transex3/source/cfglex.l
U transex3/source/cfgmerge.cxx
U transex3/source/cfgmerge.hxx
U transex3/source/export.cxx
U transex3/source/export.hxx
U transex3/source/export2.cxx
U transex3/source/gsicheck.cxx
U transex3/source/gsiconv.cxx
U transex3/source/lngex.cxx
...

Independent of this issue, we should investigate:

(1) updating cvs/pserver on anoncvs so that it doesn't give assertion
failures when it can't find a tag.

(2) making 'anoncvs' val-tags not be updated via CVSUP and to work and be
written locally via 'anoncvs'. This will eliminate needing to first do
a checkout with the new tagname on mastercvs, waiting for the tags file to
propagate to anoncvs via CVSUP, etc.

Comment 9 Unknown 2001-01-24 23:01:11 UTC
Sander, 

To follow-up on my email, 
please verify resolution for you, 
regarding the OpenOffice614 build, 
and advise whether this issue has been closed. 

Added bphipps to Cc: 
Comment 10 sander_traveling 2001-01-25 10:28:10 UTC
The checkout seems to be working now.
Comment 11 stx123 2002-01-16 10:33:26 UTC
closing (to have it excluded from queries :-)