TeamCity/CVS - Checking for changes take forever

I am having problems with TeamCity (3.1)/CVS, with TC running on a Window box. The step "Checking for changes" could take forever. Also, I tried to click on Test Connection button after configuring VCS on ssh CVS, it seemed to never finish. Doing a cvs checkout and then a maven build from the command line take less than 3 minutes (less than two minutes to checkout and less than a minute to build), while TC takes up 15-20 minutes. Any one knows where the problem potentially be? I have tried to configure "Automatically on agent" or "Automatically on server" for checkout mode. It does not really make a difference. Only one time the build went smoothly on "Automatically on agent". However, I cannot repeat such a smooth build process. Anybody have any clue on how to configure the TC to do an efficient build? Please help!!! Any tips are welcome. Thanks.

Edited by: susan on Mar 26, 2008 10:19 PM

4 comments

Hello,

Please describe configuration of your VCS root in more details, or maybe provide a screenshot of VCS root page.

--
Pavel Sher

0

Thanks for the reply. Here is the CVS configuration detail:

VCS root name: My project
Type of VCS: CVS
Module name: MyProjectModuleName (as in CVS)
CVS root: :ssh:myname@ipAddress:2401/home/cvs (where ipaddress is: xxx.xxx.xxx.xxx)
x Checkout HEAD revision
Quiet period: 3
SSH port : 22
SSH password: .....mypassword to cvs
checking interval: 30

Actually the behavior of "Checking for changes" changes. Sometime it takes around 10 minutes before maven build; other times it takes forever.

If you give me your email address I can attach a screenshot to you. Feel free if you need more information for the investigation such as the agent log and config files, etc.

Susan

0

Hi Pavel,

Also what I have noticed is that when the "Checking changes" is hanging the stdout_xxx.log shows the following exception, indicating that the socket is closed for cvs connection which I think it should not be. I have used ssh to connect to our cvs it never had any problem. Not so sure how the server command is executed in the buildServer - should it keep the socket open while checking for changes? Let me know if any other configuration style would help. Configuration with pserver was also experimented but no benefit either. Hope that the following log could aid a bit into your investigation
Thanks.

java.io.EOFException: Unexpected termination of connection: Socket closed
at com.maverick.ssh2.C.C(Unknown Source)
at com.maverick.ssh2.A.B(Unknown Source)
at com.maverick.ssh2.Ssh2Channel$_A.close(Unknown Source)
at jetbrains.buildServer.buildTriggers.vcs.cvs.CvsCommandSessionBase$2.close(CvsCommandSessionBase.java:4)
at org.netbeans.lib.cvsclient.ConnectionStreams.close(ConnectionStreams.java:124)
at org.netbeans.lib.cvsclient.RequestProcessor.processRequests(RequestProcessor.java:84)
at jetbrains.buildServer.buildTriggers.vcs.cvs.RlogCommand.execute(RlogCommand.java:49)
at jetbrains.buildServer.buildTriggers.vcs.cvs.CvsCommandExecutor.executeServerCommand(CvsCommandExecutor.java:60)
at jetbrains.buildServer.buildTriggers.vcs.cvs.RLogCommandExecutor.executeRLogCommand(RLogCommandExecutor.java:39)
at jetbrains.buildServer.buildTriggers.vcs.cvs.CvsChangesProvider.collectChanges(CvsChangesProvider.java:4)
at jetbrains.buildServer.buildTriggers.vcs.cvs.CvsSupport.collectRowChanges(CvsSupport.java:75)
at jetbrains.buildServer.buildTriggers.vcs.cvs.CvsSupport.extractCompletedChanges(CvsSupport.java:215)
at jetbrains.buildServer.buildTriggers.vcs.cvs.CvsSupport.collectBuildChanges(CvsSupport.java:78)
at jetbrains.buildServer.vcs.VcsSupportUtil.collectBuildChanges(VcsSupportUtil.java:19)
at jetbrains.buildServer.buildTriggers.vcs.cvs.CvsSupport.collectBuildChanges(CvsSupport.java:110)
at jetbrains.buildServer.buildTriggers.vcs.VcsChangesLoader.collectBuildChanges(VcsChangesLoader.java:73)
at jetbrains.buildServer.buildTriggers.vcs.VcsChangesLoader.loadChanges(VcsChangesLoader.java:33)
at jetbrains.buildServer.vcs.impl.VcsManagerImpl.loadChanges(VcsManagerImpl.java:61)
at jetbrains.buildServer.vcs.impl.VcsManagerImpl.checkForModifications(VcsManagerImpl.java:134)
at jetbrains.buildServer.serverSide.impl.auth.SecuredVcsManager.checkForModifications(SecuredVcsManager.java:34)
at jetbrains.buildServer.serverSide.impl.VcsModificationChecker$1.run(VcsModificationChecker.java:11)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:417)
at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:269)
at java.util.concurrent.FutureTask.run(FutureTask.java:123)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:650)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:675)
at java.lang.Thread.run(Thread.java:595)

0

Hello,

Could you please start TeamCity server with the following system property: -Dcvs.log.commands=true
Then try to reproduce the same problem and submit issue to our tracker (http://jetbrains.net/tracker/workspace/TW) with all server logs attached.

--
Pavel Sher

0

Please sign in to leave a comment.