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

Background Support Bundles not garbage collected in certain cases

XMLWordPrintable

    • Icon: Improvement Improvement
    • Resolution: Fixed
    • Icon: Critical Critical
    • support-core-plugin
    • None
    • support-core:2.70
    • support-core-2.73

      When a support bundle reaches the size limit of 4GB (compressed) it fails with an exception like the following:

      Could not save support bundle
      Also: java.io.IOException: This archive contains unclosed entries.
        at org.apache.commons.compress.archivers.zip.ZipArchiveOutputStream.finish(ZipArchiveOutputStream.java:467)
        at org.apache.commons.compress.archivers.zip.ZipArchiveOutputStream.close(ZipArchiveOutputStream.java:966)
        at com.cloudbees.jenkins.support.SupportPlugin.writeBundle(SupportPlugin.java:389)
      org.apache.commons.compress.archivers.zip.Zip64RequiredException: <file> size exceeds the limit of 4GByte.
        at org.apache.commons.compress.archivers.zip.ZipArchiveOutputStream.checkIfNeedsZip64(ZipArchiveOutputStream.java:653)
        at org.apache.commons.compress.archivers.zip.ZipArchiveOutputStream.handleSizesAndCrc(ZipArchiveOutputStream.java:641)
        at org.apache.commons.compress.archivers.zip.ZipArchiveOutputStream.closeArchiveEntry(ZipArchiveOutputStream.java:514)
        at com.cloudbees.jenkins.support.SupportPlugin.writeBundle(SupportPlugin.java:366)
        at com.cloudbees.jenkins.support.SupportPlugin.writeBundle(SupportPlugin.java:298)
        at com.cloudbees.jenkins.support.SupportPlugin.writeBundle(SupportPlugin.java:294)
        at com.cloudbees.jenkins.support.SupportPlugin$PeriodicWorkImpl.lambda$doRun$0(SupportPlugin.java:886)
        at java.lang.Thread.run(Thread.java:748)
      

      While this says "Could not save support bundle" *a file is actually saved and the bundle cleanup method is never called*.

      The problem is that if this fails over and over, the bundle directory is growing and never garbage collected. The bundle cleanup process should always be run upon generation.

            allan_burdajewicz Allan BURDAJEWICZ
            allan_burdajewicz Allan BURDAJEWICZ
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

              Created:
              Updated:
              Resolved: