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

Large file downloads aborted with no error message

    • Icon: Bug Bug
    • Resolution: Fixed
    • Icon: Minor Minor
    • core
    • Jenkins ver. 2.19.4

      I administrate a Jenkins server hosted in the UK, with some users in the US, who access it via a VPN connection. When these users try to download large build artifacts (about 100MB plus) via the Web UI, the downloads fail inconsistently. I was able to reproduce the problem via both Firefox and curl, though it only happens about half of the time.

      In Firefox the download is simply marked as "Failed", but Curl reports:

      curl: (18) transfer closed with 230849563 bytes remaining to read

      Unfortunately neither the amount of time elapsed or the bytes read or remaining are consistent between failures, so I haven't spotted any pattern.

      I am able to download the same and much larger files hosted by nginx over the same connection without issue, so it appears to be a problem with the Jenkins server. I haven't been able to find any log entries related to the failures. Does Jenkins log web server access and errors? The nginx reverse proxy in front of it doesn't spot anything amiss.

          [JENKINS-42058] Large file downloads aborted with no error message

          Daniel Beck added a comment -

          Does Jenkins log web server access and errors?

          Probably related to our aggressive default timeouts. Try increasing as described on https://github.com/jenkinsci/winstone/#command-line-options

          Daniel Beck added a comment - Does Jenkins log web server access and errors? Probably related to our aggressive default timeouts. Try increasing as described on https://github.com/jenkinsci/winstone/#command-line-options

          Increasing httpKeepAliveTimeout appears to have fixed the problem, thanks.

          Philip Douglas added a comment - Increasing httpKeepAliveTimeout appears to have fixed the problem, thanks.

          Daniel Beck added a comment -

          pdouglas I filed JENKINS-42513 to address this. What timeout values did you choose?

          Daniel Beck added a comment - pdouglas I filed JENKINS-42513 to address this. What timeout values did you choose?

          I raised it from 5000 to 10000ms on my test server and that seems to have fixed it. I haven't had a chance to put it on the live server yet, so the load there might require a higher value.

          Philip Douglas added a comment - I raised it from 5000 to 10000ms on my test server and that seems to have fixed it. I haven't had a chance to put it on the live server yet, so the load there might require a higher value.

            Unassigned Unassigned
            pdouglas Philip Douglas
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

              Created:
              Updated:
              Resolved: