Uploaded image for project: 'Jenkins'
  1. Jenkins
  2. JENKINS-23234

cvs update hang when recursive symlink in directory

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Fixed
    • Icon: Major Major
    • cvs-plugin
    • None
    • redhat fc19
      jenkins 1.562
      cvs_plugin 2.11
      cvs ssh

      Jenkins job hangs forever doing cvs update.

      A recursive directory causes job to hang forever.
      The cvs command shown in console log is:
      'cvs update -d -P -r <branchtag> <mod>'
      A previous build job created symlinks to . in some directories in checkout area.

      Using strace can see process is recursing into directory to multiple levels . . . it is hitting an error but just seems to take forever . . . not sure if jobs will ever end by selves . . . posting stop to jenkins job doesn't work, the job remains running until jenkins itself is restarted OR process killed (which brings down jenkins).

      The error: ELOOP (Too many levels of symbolic links)

      strace fragment: (misc is a symlink to .)

      stat64("/var/lib/jenkins/jobs/buildjobname/workspace/work/projectname/module/something/misc/misc/misc/misc/misc/misc/misc/misc/misc/misc/misc/misc/misc/misc/misc/misc/misc/misc/misc/misc/misc/misc/misc/misc/misc/misc/misc/misc/misc/misc/python/python/misc/java/java/python/java/inc/misc/inc/something.py",

      {st_mode=S_IFREG|0664, st_size=3749, ...}

      ) = 0
      stat64("/var/lib/jenkins/jobs/buildjobname/workspace/work/projectname/module/something/misc/misc/misc/misc/misc/misc/misc/misc/misc/misc/misc/misc/misc/misc/misc/misc/misc/misc/misc/misc/misc/misc/misc/misc/misc/misc/misc/misc/misc/misc/python/python/misc/java/java/python/java/inc/misc/inc/something",

      {st_mode=S_IFREG|0644, st_size=345, ...}

      ) = 0
      stat64("/var/lib/jenkins/jobs/buildjobname/workspace/work/projectname/module/something/misc/misc/misc/misc/misc/misc/misc/misc/misc/misc/misc/misc/misc/misc/misc/misc/misc/misc/misc/misc/misc/misc/misc/misc/misc/misc/misc/misc/misc/misc/python/python/misc/java/java/python/java/inc/misc/inc/somethingelse",

      {st_mode=S_IFREG|0644, st_size=227, ...}

      ) = 0
      stat64("/var/lib/jenkins/jobs/buildjobname/workspace/work/projectname/module/something/misc/misc/misc/misc/misc/misc/misc/misc/misc/misc/misc/misc/misc/misc/misc/misc/misc/misc/misc/misc/misc/misc/misc/misc/misc/misc/misc/misc/misc/misc/python/python/misc/java/java/python/java/inc/misc/inc/misc", 0x66b18060) = -1 ELOOP (Too many levels of symbolic links)

      CVS Plugin 2.11
      http://wiki.jenkins-ci.org/display/JENKINS/CVS+Plugin
      Jenkins ver. 1.562

      This problem with git plugin seems to have been a similar problem:
      https://issues.jenkins-ci.org/browse/JENKINS-17186
      Linux: if there is a recursive directory within the git repo you're building, the initial checkout will fail badly

            mc1arke Michael Clarke
            jamesco James Coleman
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

              Created:
              Updated:
              Resolved: