Possible bug when cvs checking out changelogs using a tag

classic Classic list List threaded Threaded
4 messages Options
Reply | Threaded
Open this post in threaded view
|

Possible bug when cvs checking out changelogs using a tag

paul oswald
I may have found another bug with cvs. We currently manage our differing builds by Tagging the platform in CVS. For example, our stage build is everything that has the Stage tag on it. While setting up a build for a given tag I got the exception at the end of this message. I think that it is failing while trying to compute the change log. Is this a possibility? I am still on version 1.75. I turned on logging of CVS using the script interface and it didn't really give more information. Anything else I should look for?

started
[STAGE-Build] $ cvs -t -z9 -d :pserver:user@192.168.0.1 :/cvs/aoma co -r STAGE -d workspace -D Wednesday, January 31, 2007 1:15:12 AM UTC moduleName
cvs checkout: notice: main loop with CVSROOT=:pserver:user@192.168.0.1:/cvs/moduleName

... snip ...

FATAL: No such directory exists. Did you specify the correct branch?: /apps/hudson/jobs/STAGE-Build/workspace
java.io.IOException: No such directory exists. Did you specify the correct branch?: /apps/hudson/jobs/STAGE-Build/workspace
at hudson.scm.CVSSCM.archive(CVSSCM.java:281)
at hudson.scm.CVSSCM.access$200(CVSSCM.java:85)
at hudson.scm.CVSSCM$1.invoke(CVSSCM.java:198)
at hudson.scm.CVSSCM$1.invoke(CVSSCM.java:193)
at hudson.FilePath.act (FilePath.java:191)
at hudson.scm.CVSSCM.checkout(CVSSCM.java:193)
at hudson.model.AbstractProject.checkout(AbstractProject.java:250)
at hudson.model.AbstractBuild$AbstractRunner.run(AbstractBuild.java:103)
at hudson.model.Run.run(Run.java:533)
at hudson.model.Build.run(Build.java:203)
at hudson.model.Executor.run(Executor.java:61)

Reply | Threaded
Open this post in threaded view
|

Re: Possible bug when cvs checking out changelogs using a tag

Kohsuke Kawaguchi-2
Paul Oswald wrote:
> I may have found another bug with cvs. We currently manage our differing
> builds by Tagging the platform in CVS. For example, our stage build is
> everything that has the Stage tag on it. While setting up a build for a
> given tag I got the exception at the end of this message. I think that it is
> failing while trying to compute the change log. Is this a possibility? I am
> still on version 1.75. I turned on logging of CVS using the script interface
> and it didn't really give more information. Anything else I should look for?

The error is complaining that the directory
"/apps/hudson/jobs/STAGE-Build/workspace" doesn't exist.

I changed the error message slightly, but this problem usually happens
if you specify a wrong branch name because CVS ends up checking out
nothing. Does your 'moduleName' module really has the 'STAGE' tag?

You can probably check the cvs trace output and tell if it checked out
any files.

>
> started
> [STAGE-Build] $ cvs -t -z9 -d :pserver:user@192.168.0.1:/cvs/aoma co
> -r STAGE -d workspace -D Wednesday, January 31, 2007 1:15:12 AM UTC
> moduleName
> cvs checkout: notice: main loop with
> CVSROOT=:pserver:user@192.168.0.1:/cvs/moduleName
>
>
> .. snip ...
>
> FATAL: No such directory exists. Did you specify the correct branch?:
> /apps/hudson/jobs/STAGE-Build/workspace
> java.io.IOException: No such directory exists. Did you specify the
> correct branch?: /apps/hudson/jobs/STAGE-Build/workspace
> at hudson.scm.CVSSCM.archive(CVSSCM.java:281)
> at hudson.scm.CVSSCM.access$200(CVSSCM.java:85)
> at hudson.scm.CVSSCM$1.invoke(CVSSCM.java:198)
> at hudson.scm.CVSSCM$1.invoke(CVSSCM.java:193)
> at hudson.FilePath.act(FilePath.java:191)
> at hudson.scm.CVSSCM.checkout(CVSSCM.java:193)
> at hudson.model.AbstractProject.checkout(AbstractProject.java:250)
> at hudson.model.AbstractBuild$AbstractRunner.run(AbstractBuild.java:103)
> at hudson.model.Run.run(Run.java:533)
> at hudson.model.Build.run(Build.java:203)
> at hudson.model.Executor.run(Executor.java:61)
>

--
Kohsuke Kawaguchi
Sun Microsystems                   [hidden email]

smime.p7s (4K) Download Attachment
Reply | Threaded
Open this post in threaded view
|

Re: Possible bug when cvs checking out changelogs using a tag

paul oswald
In reply to this post by paul oswald
The error is complaining that the directory 
"/apps/hudson/jobs/STAGE-Build/workspace" doesn't exist.

I changed the error message slightly, but this problem usually happens
if you specify a wrong branch name because CVS ends up checking out
nothing. Does your 'moduleName' module really has the 'STAGE' tag?

You can probably check the cvs trace output and tell if it checked out
any files.

Yes it does... I'm looking at it more closely now and it seems to behaving very strangely. I turned on verbose debugging on the CVSSCM class and the log file and console show all of the files I would expect to be there getting checked out. Furthermore, while it is building I can do a ls -l on the workspace directory and see files and folders getting added into there. Then, once it is just about done, it give a bunch of unlinking output and does this:
-> unlink_file_dir(workspace/.settings)
-> unlink_file_dir(workspace/.externalToolBuilders)
-> unlink_file_dir(workspace)
cvs checkout: dying gasps from -- snip -- unexpected
FATAL: No such directory exists. Did you specify the correct branch?: /apps/hudson/jobs/STAGE-Build/workspace
java.io.IOException: No such directory exists. Did you specify the correct branch?: /apps/hudson/jobs/STAGE-Build/workspace
at hudson.scm.CVSSCM.archive(CVSSCM.java:281)
at hudson.scm.CVSSCM.access$200(CVSSCM.java :85)
at hudson.scm.CVSSCM$1.invoke(CVSSCM.java:198)
at hudson.scm.CVSSCM$1.invoke(CVSSCM.java:193)

I was doing ls -l repeatedly on the directory when it got to this last bit and I saw files disappearing from workspace. Finally the workspace directory itself was deleted.

I cloned this configuration from a working build of our trunk. I know this repository has a STAGE tag for sure. Perhaps it has something to do with how cvs handles branches and tags differently? I'm stumped.

Reply | Threaded
Open this post in threaded view
|

Re: Possible bug when cvs checking out changelogs using a tag

Kohsuke Kawaguchi-2
Paul Oswald wrote:

>>
>> The error is complaining that the directory
>> "/apps/hudson/jobs/STAGE-Build/workspace" doesn't exist.
>>
>> I changed the error message slightly, but this problem usually happens
>> if you specify a wrong branch name because CVS ends up checking out
>> nothing. Does your 'moduleName' module really has the 'STAGE' tag?
>>
>> You can probably check the cvs trace output and tell if it checked out
>> any files.
>>
>>
> Yes it does... I'm looking at it more closely now and it seems to behaving
> very strangely. I turned on verbose debugging on the CVSSCM class and the
> log file and console show all of the files I would expect to be there
> getting checked out. Furthermore, while it is building I can do a ls -l on
> the workspace directory and see files and folders getting added into there.
> Then, once it is just about done, it give a bunch of unlinking output and
> does this:
>
> -> unlink_file_dir(workspace/.settings)
> -> unlink_file_dir(workspace/.externalToolBuilders)
> -> unlink_file_dir(workspace)
> cvs checkout: dying gasps from -- snip -- unexpected
Hmm. It sounds like cvs is then indeed removing all those files. I don't
know what that "dying gasps from ..." means.

cvs -t does give you a lot of information, so be warned. Even if you see
the file names it should have checked out, that doesn't necessarily mean
cvs is checking files out. Maybe I need an option to do inbetween -t and
-Q so that you can see normal output.

I recommend you run cvs manually on the server with the same command
line (except -Q or -t, maybe) to see what you'll see.

> FATAL: No such directory exists. Did you specify the correct branch?:
> /apps/hudson/jobs/STAGE-Build/workspace
> java.io.IOException: No such directory exists. Did you specify the
> correct branch?: /apps/hudson/jobs/STAGE-Build/workspace
> at hudson.scm.CVSSCM.archive(CVSSCM.java:281)
> at hudson.scm.CVSSCM.access$200(CVSSCM.java:85)
> at hudson.scm.CVSSCM$1.invoke(CVSSCM.java:198)
> at hudson.scm.CVSSCM$1.invoke(CVSSCM.java:193)
>
>
> I was doing ls -l repeatedly on the directory when it got to this last bit
> and I saw files disappearing from workspace. Finally the workspace directory
> itself was deleted.
>
> I cloned this configuration from a working build of our trunk. I know this
> repository has a STAGE tag for sure. Perhaps it has something to do with how
> cvs handles branches and tags differently? I'm stumped.
>

--
Kohsuke Kawaguchi
Sun Microsystems                   [hidden email]

smime.p7s (4K) Download Attachment