• Icon: Bug Bug
    • Resolution: Unresolved
    • Icon: Critical Critical
    • remoting
    • None

      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.

        1. DUMP1.txt
          57 kB
        2. hung_scm_pollers_02.PNG
          hung_scm_pollers_02.PNG
          145 kB
        3. thread_dump_02.txt
          92 kB
        4. threads.vetted.txt
          163 kB

          [JENKINS-5413] SCM polling getting hung

          Dean Yu created issue -
          mdillon made changes -
          Attachment New: threads.vetted.txt [ 19185 ]
          lkishalmi made changes -
          Component/s New: master-slave [ 15489 ]
          Component/s Original: subversion [ 15485 ]
          Summary Original: SVN polling on slaves getting hung New: SCM polling on slaves getting hung
          jpshackelford made changes -
          Attachment New: thread_dump_02.txt [ 19535 ]
          Attachment New: hung_scm_pollers_02.PNG [ 19536 ]
          lkishalmi made changes -
          Link New: This issue is related to JENKINS-5760 [ JENKINS-5760 ]
          Lars Kruse made changes -
          Description Original: This is to track the problem originally reported here: http://n4.nabble.com/Polling-hung-td1310838.html#a1310838

          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.
          New: 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.
          Jes Struck made changes -
          Assignee New: Jes Struck [ jstruck ]
          Jes Struck made changes -
          Status Original: Open [ 1 ] New: In Progress [ 3 ]
          Jes Struck made changes -
          Status Original: In Progress [ 3 ] New: Open [ 1 ]
          Jes Struck made changes -
          Assignee Original: Jes Struck [ jstruck ]
          Markus made changes -
          Link New: This issue is related to JENKINS-12302 [ JENKINS-12302 ]

            Unassigned Unassigned
            dty Dean Yu
            Votes:
            141 Vote for this issue
            Watchers:
            147 Start watching this issue

              Created:
              Updated: