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

Command line too long can cause CreateProcess to fail on Win32

    XMLWordPrintable

    Details

    • Type: Improvement
    • Status: Closed (View Workflow)
    • Priority: Major
    • Resolution: Fixed
    • Component/s: core
    • Labels:
      None
    • Environment:
      Platform: All, OS: All
    • Similar Issues:

      Description

      CVSSCM, in an attempt to compute changelog, can invoke 'cvs' with a very long
      list of file names (if there has been a lot of changes since the last build.)
      This hits the limit of CreateProcess API, in which case a fairly cryptic error
      happens.

      See http://blogs.msdn.com/oldnewthing/archive/2003/12/10/56028.aspx

        Attachments

          Issue Links

            Activity

            kohsuke Kohsuke Kawaguchi created issue -
            Hide
            kohsuke Kohsuke Kawaguchi added a comment -

            Fixed in 1.93.

            Show
            kohsuke Kohsuke Kawaguchi added a comment - Fixed in 1.93.
            kohsuke Kohsuke Kawaguchi made changes -
            Field Original Value New Value
            Resolution Fixed [ 1 ]
            Status Open [ 1 ] Resolved [ 5 ]
            Hide
            jglick Jesse Glick added a comment -

            This change can make big builds much slower. For example, in this build, run
            after about a day's interval from the previous build and on a big codebase,
            there were 600+ files changed, which is pretty normal:

            http://deadlock.nbextras.org/hudson/job/javadoc-nbms/476/changes

            The logging, even against a local repository, took over half an hour of
            server-crushing load, which is far longer than it would have taken in earlier
            versions of Hudson.

            If this bug was only reported for Windows users (and I have never come across
            such a problem on Linux), can we please disable it (or make the limit much
            higher) for non-Windows platforms? The rest of us should not have to pay for
            silly limitations in Win32.

            Show
            jglick Jesse Glick added a comment - This change can make big builds much slower. For example, in this build, run after about a day's interval from the previous build and on a big codebase, there were 600+ files changed, which is pretty normal: http://deadlock.nbextras.org/hudson/job/javadoc-nbms/476/changes The logging, even against a local repository, took over half an hour of server-crushing load, which is far longer than it would have taken in earlier versions of Hudson. If this bug was only reported for Windows users (and I have never come across such a problem on Linux), can we please disable it (or make the limit much higher) for non-Windows platforms? The rest of us should not have to pay for silly limitations in Win32.
            Hide
            kohsuke Kohsuke Kawaguchi added a comment -

            In 1.97, this is only done on Windows.

            Show
            kohsuke Kohsuke Kawaguchi added a comment - In 1.97, this is only done on Windows.
            Hide
            jglick Jesse Glick added a comment -

            Um, no. You changed it to be

            if (size < 100 && windows)

            What you meant was

            if (size < 100 || !windows)

            No wonder deadlock.nbextras.org is taking four hours to run what should be a
            one-hour build. I will fix it.

            By the way, when committing changes, please include a one-line description in
            the commit log, not just a bug number; it is difficult to find the cause of a
            regression in CVS history with just numbers.

            Show
            jglick Jesse Glick added a comment - Um, no. You changed it to be if (size < 100 && windows) What you meant was if (size < 100 || !windows) No wonder deadlock.nbextras.org is taking four hours to run what should be a one-hour build. I will fix it. By the way, when committing changes, please include a one-line description in the commit log, not just a bug number; it is difficult to find the cause of a regression in CVS history with just numbers.
            Hide
            kohsuke Kohsuke Kawaguchi added a comment -

            Thanks. I'll be careful.

            Show
            kohsuke Kohsuke Kawaguchi added a comment - Thanks. I'll be careful.
            Hide
            jglick Jesse Glick added a comment -

            Checking in main/core/src/main/java/hudson/scm/CVSSCM.java;
            /shared/data/ccvs/repository/hudson/hudson/main/core/src/main/java/hudson/scm/CVSSCM.java,v
            <-- CVSSCM.java
            new revision: 1.47; previous revision: 1.46
            done
            Checking in www/changelog.html;
            /shared/data/ccvs/repository/hudson/www/changelog.html,v <-- changelog.html
            new revision: 1.579; previous revision: 1.578
            done

            Show
            jglick Jesse Glick added a comment - Checking in main/core/src/main/java/hudson/scm/CVSSCM.java; /shared/data/ccvs/repository/hudson/hudson/main/core/src/main/java/hudson/scm/CVSSCM.java,v <-- CVSSCM.java new revision: 1.47; previous revision: 1.46 done Checking in www/changelog.html; /shared/data/ccvs/repository/hudson/www/changelog.html,v <-- changelog.html new revision: 1.579; previous revision: 1.578 done
            jglick Jesse Glick made changes -
            Link This issue depends on JENKINS-864 [ JENKINS-864 ]
            abayer Andrew Bayer made changes -
            Status Resolved [ 5 ] Closed [ 6 ]
            ircbot Jenkins IRC Bot made changes -
            Component/s core [ 15593 ]
            Component/s www [ 15484 ]
            rtyler R. Tyler Croy made changes -
            Workflow JNJira [ 130462 ] JNJira + In-Review [ 199837 ]

              People

              Assignee:
              Unassigned Unassigned
              Reporter:
              kohsuke Kohsuke Kawaguchi
              Votes:
              0 Vote for this issue
              Watchers:
              1 Start watching this issue

                Dates

                Created:
                Updated:
                Resolved: