• Icon: Bug Bug
    • Resolution: Fixed
    • Icon: Major Major
    • mercurial-plugin
    • None
    • Platform: All, OS: All

      If the hg process for e.g. 'hg incoming' hangs for whatever reason (network
      issues?), Hudson will just cease to build that job. The only indication is the
      "There are more SCM polling activities scheduled than handled" warning.

      Probably there should be some timeout on polling operations, such as 1 hour.
      Builds can already be set to timeout so these probably need no special handling.

          [JENKINS-4461] Hg polling can hang indefinitely

          Jesse Glick added a comment -

          Example:

          http://deadlock.netbeans.org/hudson/job/NB-Core-Build/scmPollLog/

          says

          Last Mercurial Polling Log

          Started on Sep 11, 2009 11:31:31 PM [three days ago!]
          [workspace] $ hg incoming --style
          /hudson/workdir/jobs/NB-Core-Build/workspace/tmp92283style

          Jesse Glick added a comment - Example: http://deadlock.netbeans.org/hudson/job/NB-Core-Build/scmPollLog/ says Last Mercurial Polling Log Started on Sep 11, 2009 11:31:31 PM [three days ago!] [workspace] $ hg incoming --style /hudson/workdir/jobs/NB-Core-Build/workspace/tmp92283style

          Jesse Glick added a comment -

          FWIW I captured the Hg 1.0.1 / Python 2.5 stack trace:
          $PYTHON_HOME/socket.py (332): readline
          $PYTHON_HOME/httplib.py (344): _read_status
          $PYTHON_HOME/httplib.py (386): begin
          $PYTHON_HOME/httplib.py (925): getresponse
          $PYTHON_HOME/site-packages/mercurial/keepalive.py (243): do_open
          $PYTHON_HOME/site-packages/mercurial/httprepo.py (107): http_open
          $PYTHON_HOME/urllib2.py (354): _call_chain
          $PYTHON_HOME/urllib2.py (393): _open
          $PYTHON_HOME/urllib2.py (377): open
          $PYTHON_HOME/urllib2.py (121): urlopen
          $PYTHON_HOME/site-packages/mercurial/httprepo.py (305): do_cmd
          $PYTHON_HOME/site-packages/mercurial/httprepo.py (351): do_read
          $PYTHON_HOME/site-packages/mercurial/httprepo.py (367): heads
          $PYTHON_HOME/site-packages/mercurial/localrepo.py (1305): findincoming
          $PYTHON_HOME/site-packages/mercurial/commands.py (1598): incoming
          $PYTHON_HOME/site-packages/mercurial/dispatch.py (356): <lambda>
          $PYTHON_HOME/site-packages/mercurial/dispatch.py (374): checkargs
          $PYTHON_HOME/site-packages/mercurial/dispatch.py (417): _runcommand
          $PYTHON_HOME/site-packages/mercurial/dispatch.py (366): _dispatch
          $PYTHON_HOME/site-packages/mercurial/dispatch.py (47): _runcatch
          $PYTHON_HOME/site-packages/mercurial/dispatch.py (29): dispatch
          $PYTHON_HOME/site-packages/mercurial/dispatch.py (20): run
          bin/hg (20): <module>

          Jesse Glick added a comment - FWIW I captured the Hg 1.0.1 / Python 2.5 stack trace: $PYTHON_HOME/socket.py (332): readline $PYTHON_HOME/httplib.py (344): _read_status $PYTHON_HOME/httplib.py (386): begin $PYTHON_HOME/httplib.py (925): getresponse $PYTHON_HOME/site-packages/mercurial/keepalive.py (243): do_open $PYTHON_HOME/site-packages/mercurial/httprepo.py (107): http_open $PYTHON_HOME/urllib2.py (354): _call_chain $PYTHON_HOME/urllib2.py (393): _open $PYTHON_HOME/urllib2.py (377): open $PYTHON_HOME/urllib2.py (121): urlopen $PYTHON_HOME/site-packages/mercurial/httprepo.py (305): do_cmd $PYTHON_HOME/site-packages/mercurial/httprepo.py (351): do_read $PYTHON_HOME/site-packages/mercurial/httprepo.py (367): heads $PYTHON_HOME/site-packages/mercurial/localrepo.py (1305): findincoming $PYTHON_HOME/site-packages/mercurial/commands.py (1598): incoming $PYTHON_HOME/site-packages/mercurial/dispatch.py (356): <lambda> $PYTHON_HOME/site-packages/mercurial/dispatch.py (374): checkargs $PYTHON_HOME/site-packages/mercurial/dispatch.py (417): _runcommand $PYTHON_HOME/site-packages/mercurial/dispatch.py (366): _dispatch $PYTHON_HOME/site-packages/mercurial/dispatch.py (47): _runcatch $PYTHON_HOME/site-packages/mercurial/dispatch.py (29): dispatch $PYTHON_HOME/site-packages/mercurial/dispatch.py (20): run bin/hg (20): <module>

          Code changed in hudson
          User: : jglick
          Path:
          trunk/hudson/plugins/mercurial/src/main/java/hudson/plugins/mercurial/MercurialSCM.java
          http://fisheye4.cenqua.com/changelog/hudson/?cs=21786
          Log:
          [FIXED JENKINS-4461] Kill Hg polling process after one hour, assuming it is stuck on a bad network connection.

          SCM/JIRA link daemon added a comment - Code changed in hudson User: : jglick Path: trunk/hudson/plugins/mercurial/src/main/java/hudson/plugins/mercurial/MercurialSCM.java http://fisheye4.cenqua.com/changelog/hudson/?cs=21786 Log: [FIXED JENKINS-4461] Kill Hg polling process after one hour, assuming it is stuck on a bad network connection.

          Code changed in hudson
          User: : jglick
          Path:
          trunk/hudson/plugins/mercurial/src/main/java/hudson/plugins/mercurial/MercurialSCM.java
          http://fisheye4.cenqua.com/changelog/hudson/?cs=21911
          Log:
          JENKINS-4461 Prevent thread leak from previous fix.

          SCM/JIRA link daemon added a comment - Code changed in hudson User: : jglick Path: trunk/hudson/plugins/mercurial/src/main/java/hudson/plugins/mercurial/MercurialSCM.java http://fisheye4.cenqua.com/changelog/hudson/?cs=21911 Log: JENKINS-4461 Prevent thread leak from previous fix.

          Code changed in hudson
          User: : jglick
          Path:
          trunk/hudson/plugins/mercurial/src/main/java/hudson/plugins/mercurial/MercurialSCM.java
          http://fisheye4.cenqua.com/changelog/hudson/?cs=22014
          Log:
          [FIXED JENKINS-4513] Improper implementation of timeout (JENKINS-4461).

          SCM/JIRA link daemon added a comment - Code changed in hudson User: : jglick Path: trunk/hudson/plugins/mercurial/src/main/java/hudson/plugins/mercurial/MercurialSCM.java http://fisheye4.cenqua.com/changelog/hudson/?cs=22014 Log: [FIXED JENKINS-4513] Improper implementation of timeout ( JENKINS-4461 ).

          Jesse Glick added a comment -

          See also JENKINS-5296.

          Jesse Glick added a comment - See also JENKINS-5296 .

            jglick Jesse Glick
            jglick Jesse Glick
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

              Created:
              Updated:
              Resolved: