[ 
https://issues.jenkins-ci.org/browse/JENKINS-5413?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=163670#comment-163670
 ] 

Joe Hansche commented on JENKINS-5413:
--------------------------------------

[~wolfgang]: by "plugin" you're referring to the clearcase plugin, right?  So 
that was the issue with your plugin, but not necessarily the issue with the 
slaves hanging in general?  Although potentially related, I guess?

So if the SCM polling plugin raises a RuntimeException, the slave thread will 
die off without notifying the master, and therefore the master continues 
waiting for it to finish, even though it never will?
                
> SCM polling on slaves getting hung
> ----------------------------------
>
>                 Key: JENKINS-5413
>                 URL: https://issues.jenkins-ci.org/browse/JENKINS-5413
>             Project: Jenkins
>          Issue Type: Bug
>          Components: master-slave
>    Affects Versions: current
>            Reporter: Dean Yu
>         Attachments: hung_scm_pollers_02.PNG, threads.vetted.txt, 
> thread_dump_02.txt
>
>
> This is to track the problem originally reported here: 
> http://n4.nabble.com/Polling-hung-td1310838.html#a1310838
> The referenced thread is relocated to 
> http://jenkins.361315.n4.nabble.com/Polling-hung-td1310838.html
> What the problem boils down to is that many remote operations are performed 
> synchronously causing the channel object to be locked while a response 
> returns. In situations where a lengthy remote operations is using the 
> channel, SCM polling can be blocked waiting for the monitor on the channel to 
> be released. In extreme situations, all the polling threads can wind up 
> waiting on object monitors for the channel objects, preventing further 
> processing of polling tasks.
> Furthermore, if the slave dies, the locked channel object still exists in the 
> master JVM. If no IOException is thrown to indicate the termination of the 
> connection to the pipe, the channel can never be closed because 
> Channel.close() itself is a sychronized operation.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.jenkins-ci.org/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Reply via email to