[cvsnt] Re: Incompatibility with "plain" CVS server?

Bo Berglund bo.berglund at telia.com
Sat Feb 5 10:16:07 GMT 2005


Just from the top of my head:
The contents of the RCS files is the realm of the *server* so I don't
think that a client can cause the RCS files to become corrupt unless
you are accessing the repository using :local: from the Tortoise
client. In that case there will be definite problems like these.
So what was your connection protocol? (Which connection string did you
use?).

/Bo


On 05 Feb 2005 09:29:27 +0100, Johan Holmberg <holmberg at iar.se> wrote:

>
>Hi!
>
>I suspect that I have found a compatibility problem between CVSNT as a
>client, and a "plain" CVS server. I asked the following questions
>first on the TortoiseCVS mailing list, but was asked to repost it here
>since it probably has to do with CVSNT rather than TortoiseCVS itself.
>
>/Johan Holmberg
>
>----------------------------------------------------------------------
> Date: Fri, 4 Feb 2005 14:36:02 +0100 (MET)
> To: tortoisecvs-users at lists.sourceforge.net
> Subject: Incompatibility with "plain" CVS server?
>
>Hi!
>
>We are using TortoiseCVS on our Windows clients (XP) and a "plain" 
>CVS server running on a UN*X server.
>
>Until recently I have believed that TortoiseCVS (using CVSNT under 
>the hood) was compatible with "plain" CVS, and that this setup would 
>work.
>
>But right now I have some archive files on my CVS server that can't 
>be checked out under certain circumstances. I believe this is caused 
>by the CVS client (TortoiseCVS and/or CVSNT). Somehow the client has 
>managed to store information on the server, that later can't be 
>processed in a correct way (probably be the server).
>
>On my XP box I do:
>
>     $
>     $ cvs co -rMY_BRANCH -d SOME_DIR MODULE_NAME
>     U SOME_DIR/file1
>     U SOME_DIR/file2
>     ...
>     Assertion failed: rev == NULL || isdigit ((unsigned char) *rev), \
>                       file rcs.c, line 4123
>     cvs [checkout aborted]: received abort signal
>     $
>
>I think this error is caused by the following line in one of the RCS
>files on the server:
>
>     head    1.1;
>     access;
>     symbols
> 	    MY_BRANCH:_H_:1.1.0.2;           <--- note the "_H_"
>     locks; strict;
>     comment @// @;
>
>
>I don't know what this extra ":_H_:" sequence means. I searched the
>CVSNT sources for "_H_" and found that several such changes were
>applied between version 2.0.42 and 2.0.43.
>
>As far as I know the ":_H_:" is *not* allowed in the RCS format.
>That would explain my crash, when my "plain" CVS server tries to
>process the RCS archive file.
>
>I have tried to ask the developer using TortoiseCVS what sequence of 
>operations he did, but I have not found out the exact circumstances 
>when the ":_H_:" is written to the server. We suspect it has to do 
>with merging to/from the branch.
>
>I would like to hear the opinion of others about this problem.
>I'm afraid it is a real incompatibility between TortoiseCVS/CVSNT and a
>"plain" CVS server, and that it makes it impossible to run such a
>setup.
>
>Is it as serious as I think?
>
>/Johan Holmberg


/Bo
(Bo Berglund, developer in Sweden)



More information about the cvsnt mailing list