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

missing build artifacts

    XMLWordPrintable

Details

    • Bug
    • Status: Closed (View Workflow)
    • Major
    • Resolution: Fixed
    • core
    • None
    • Hudson ver. 1.355
      Red Hat Enterprise Linux ES release 4 (Nahant Update 7)
      java version "1.6.0_12"
      Java(TM) SE Runtime Environment (build 1.6.0_12-b04)
      Java HotSpot(TM) Server VM (build 11.2-b01, mixed mode)


    Description

      My hudson project recently stopped to archive all the build artifacts. I can see all the artifacts are build in workspace directory, but when looking at the project page only couple of them are visible.

      Full project configuration is cited below, as can be seen the build aritfacts configured are:

      syp-parent/syp-lib/lynx1-audit/lynx1-audit-ear/target/lynx1-audit.ear,syp-parent/syp-lib/report-producer/report-producer-ear/target/report-producer.ear,syp-parent/syp-lib/auth/auth-web/target/auth-web.war,syp-parent/syp-lib/lynx-extract/lynx-extract-ui-test/target/lynx-extract-ui-test.war,syp-parent/syp-lib/rich-screen/rich-screen-web/target/rich-screen-web.war,syp-parent/syp-lib/resources/target/resources.war,syp-parent/casePrep/casePrep/target/casePrep.war,syp-parent/casePrep/doc-repo/doc-repo-ws/target/doc-repo-ws.war,syp-parent/ois2/target/ois2.war,syp-parent/casePrep/case-remote-interface/case-remote-interface-ear/target/case-remote-interface-ear.ear,syp-parent/syp-lib/court-diary/court-diary-ear/target/court-diary-ear.ear,syp-parent/casePrep/case-prep-ear/target/case-prep-ear.ear,syp-parent/mip/mip-ws/target/mip-ws.war,syp-parent/sypap-ws-sts/target/sypap-ws-sts.war,syp-parent/system-admin/target/system-admin.war
      

      I can see all those files exists:

      ls -l  $( echo 'syp-parent/syp-lib/lynx1-audit/lynx1-audit-ear/target/lynx1-audit.ear,syp-parent/syp-lib/report-producer/report-producer-ear/target/report-producer.ear,syp-parent/syp-lib/auth/auth-web/target/auth-web.war,syp-parent/syp-lib/lynx-extract/lynx-extract-ui-test/target/lynx-extract-ui-test.war,syp-parent/syp-lib/rich-screen/rich-screen-web/target/rich-screen-web.war,syp-parent/syp-lib/resources/target/resources.war,syp-parent/casePrep/casePrep/target/casePrep.war,syp-parent/casePrep/doc-repo/doc-repo-ws/target/doc-repo-ws.war,syp-parent/ois2/target/ois2.war,syp-parent/casePrep/case-remote-interface/case-remote-interface-ear/target/case-remote-interface-ear.ear,syp-parent/syp-lib/court-diary/court-diary-ear/target/court-diary-ear.ear,syp-parent/casePrep/case-prep-ear/target/case-prep-ear.ear,syp-parent/mip/mip-ws/target/mip-ws.war,syp-parent/sypap-ws-sts/target/sypap-ws-sts.war,syp-parent/system-admin/target/system-admin.war' | tr ',' ' ') 
      -rw-r--r--  1 huds huds 38947225 Apr 27 11:44 syp-parent/casePrep/case-prep-ear/target/case-prep-ear.ear
      -rw-r--r--  1 huds huds 32756047 Apr 27 11:43 syp-parent/casePrep/casePrep/target/casePrep.war
      -rw-r--r--  1 huds huds 20265084 Apr 27 11:44 syp-parent/casePrep/case-remote-interface/case-remote-interface-ear/target/case-remote-interface-ear.ear
      -rw-r--r--  1 huds huds 22901259 Apr 27 11:44 syp-parent/casePrep/doc-repo/doc-repo-ws/target/doc-repo-ws.war
      -rw-r--r--  1 huds huds 27259303 Apr 27 11:45 syp-parent/mip/mip-ws/target/mip-ws.war
      -rw-r--r--  1 huds huds 45235582 Apr 27 11:45 syp-parent/ois2/target/ois2.war
      -rw-r--r--  1 huds huds  1265752 Apr 27 11:45 syp-parent/sypap-ws-sts/target/sypap-ws-sts.war
      -rw-r--r--  1 huds huds 11917076 Apr 27 11:37 syp-parent/syp-lib/auth/auth-web/target/auth-web.war
      -rw-r--r--  1 huds huds 26399563 Apr 27 11:42 syp-parent/syp-lib/court-diary/court-diary-ear/target/court-diary-ear.ear
      -rw-r--r--  1 huds huds 19781865 Apr 27 11:37 syp-parent/syp-lib/lynx1-audit/lynx1-audit-ear/target/lynx1-audit.ear
      -rw-r--r--  1 huds huds 24909060 Apr 27 11:38 syp-parent/syp-lib/lynx-extract/lynx-extract-ui-test/target/lynx-extract-ui-test.war
      -rw-r--r--  1 huds huds 19267891 Apr 27 11:41 syp-parent/syp-lib/report-producer/report-producer-ear/target/report-producer.ear
      -rw-r--r--  1 huds huds   107225 Apr 27 11:41 syp-parent/syp-lib/resources/target/resources.war
      -rw-r--r--  1 huds huds  7813888 Apr 27 11:36 syp-parent/syp-lib/rich-screen/rich-screen-web/target/rich-screen-web.war
      -rw-r--r--  1 huds huds 34725471 Apr 27 11:46 syp-parent/system-admin/target/system-admin.war
      

      but then when I open project page I can see only:

      Build Artifacts
      case-prep-ear.ear 
      case-remote-interface-ear.ear 
      casePrep.war 
      doc-repo-ws.war 
      mip-ws.war 
      ois2.war 
      auth-web.war 
      court-diary-ear.ear 
      lynx-extract-ui-test.war 
      lynx1-audit.ear 
      report-producer.ear 
      

      the following ones are missing:

      • sypap-ws-sts.war
      • resources.war
      • rich-screen-web.war
      • system-admin.war

      Can't see anything wrong with the project configuration, disks are far from being full, there is nothing wrong reported in the hudson.log
      Can you help please?

      The project configuration file:

      <?xml version='1.0' encoding='UTF-8'?>
      <maven2-moduleset>
        <actions/>
        <description>Root parent POM for project.</description>
        <logRotator>
          <daysToKeep>-1</daysToKeep>
          <numToKeep>5</numToKeep>
          <artifactDaysToKeep>-1</artifactDaysToKeep>
          <artifactNumToKeep>-1</artifactNumToKeep>
        </logRotator>
        <keepDependencies>false</keepDependencies>
        <properties/>
        <scm class="hudson.scm.SubversionSCM">
          <locations>
            <hudson.scm.SubversionSCM_-ModuleLocation>
              <remote>http://nssubversion02u.syp.southyorks.police.uk/sub/SYP/trunk/java/syp-parent</remote>
              <local>syp-parent</local>
            </hudson.scm.SubversionSCM_-ModuleLocation>
          </locations>
          <useUpdate>true</useUpdate>
          <doRevert>false</doRevert>
          <excludedRegions></excludedRegions>
          <includedRegions></includedRegions>
          <excludedUsers></excludedUsers>
          <excludedRevprop></excludedRevprop>
          <excludedCommitMessages></excludedCommitMessages>
        </scm>
        <canRoam>true</canRoam>
        <disabled>false</disabled>
        <blockBuildWhenUpstreamBuilding>false</blockBuildWhenUpstreamBuilding>
        <triggers class="vector">
          <hudson.triggers.SCMTrigger>
            <spec>*/15 * * * *</spec>
          </hudson.triggers.SCMTrigger>
        </triggers>
        <concurrentBuild>false</concurrentBuild>
        <rootModule>
          <groupId>uk.police.syp.syp-parent</groupId>
          <artifactId>syp-parent</artifactId>
        </rootModule>
        <goals>clean install</goals>
        <mavenOpts>-Xmx512M -XX:MaxPermSize=512M</mavenOpts>
        <aggregatorStyleBuild>true</aggregatorStyleBuild>
        <incrementalBuild>false</incrementalBuild>
        <usePrivateRepository>false</usePrivateRepository>
        <ignoreUpstremChanges>false</ignoreUpstremChanges>
        <archivingDisabled>false</archivingDisabled>
        <reporters>
          <hudson.plugins.findbugs.FindBugsReporter>
            <threshold></threshold>
            <failureThreshold></failureThreshold>
            <newFailureThreshold></newFailureThreshold>
            <newThreshold></newThreshold>
            <healthy></healthy>
            <unHealthy></unHealthy>
            <pluginName>[FINDBUGS] </pluginName>
            <thresholdLimit>low</thresholdLimit>
          </hudson.plugins.findbugs.FindBugsReporter>
          <hudson.maven.reporters.MavenMailer>
            <recipients>ISD_DEVELOPMENT_JAVA</recipients>
            <dontNotifyEveryUnstableBuild>true</dontNotifyEveryUnstableBuild>
            <sendToIndividuals>false</sendToIndividuals>
          </hudson.maven.reporters.MavenMailer>
        </reporters>
        <publishers>
          <hudson.tasks.ArtifactArchiver>
            <artifacts>syp-parent/syp-lib/lynx1-audit/lynx1-audit-ear/target/lynx1-audit.ear,syp-parent/syp-lib/report-producer/report-producer-ear/target/report-producer.ear,syp-parent/syp-lib/auth/auth-web/target/auth-web.war,syp-parent/syp-lib/lynx-extract/lynx-extract-ui-test/target/lynx-extract-ui-test.war,syp-parent/syp-lib/rich-screen/rich-screen-web/target/rich-screen-web.war,syp-parent/syp-lib/resources/target/resources.war,syp-parent/casePrep/casePrep/target/casePrep.war,syp-parent/casePrep/doc-repo/doc-repo-ws/target/doc-repo-ws.war,syp-parent/ois2/target/ois2.war,syp-parent/casePrep/case-remote-interface/case-remote-interface-ear/target/case-remote-interface-ear.ear,syp-parent/syp-lib/court-diary/court-diary-ear/target/court-diary-ear.ear,syp-parent/casePrep/case-prep-ear/target/case-prep-ear.ear,syp-parent/mip/mip-ws/target/mip-ws.war,syp-parent/sypap-ws-sts/target/sypap-ws-sts.war,syp-parent/system-admin/target/system-admin.war</artifacts>
            <latestOnly>false</latestOnly>
          </hudson.tasks.ArtifactArchiver>
          <hudson.tasks.test.AggregatedTestResultPublisher/>
        </publishers>
        <buildWrappers/>
      </maven2-moduleset>
      

      Attachments

        Activity

          swiety swiety added a comment - - edited

          Thanks Mindless again, that was it.
          I have added the

          -Dhudson.model.Run.ArtifactList.treeCutoff=100

          and now I can see all the artifacts - in the current and in the previous builds.

          There is probably something broken with this treeCutoff calculation, when I have decreased it to 10 I was able to see only 3 artifacts.

          Leaving this issue open then as increasing the treeCutoff parameter seems to be workaround only.

          swiety swiety added a comment - - edited Thanks Mindless again, that was it. I have added the -Dhudson.model.Run.ArtifactList.treeCutoff=100 and now I can see all the artifacts - in the current and in the previous builds. There is probably something broken with this treeCutoff calculation, when I have decreased it to 10 I was able to see only 3 artifacts. Leaving this issue open then as increasing the treeCutoff parameter seems to be workaround only.
          mindless Alan Harder added a comment -

          I'm not able to find a problem.. before you reported this issue, were you setting either listCutoff or treeCutoff? Setting treeCutoff to a value less than listCutoff (defaults to 16) would likely confuse things. Are you able to see any problems when treeCutoff > listCutoff?

          mindless Alan Harder added a comment - I'm not able to find a problem.. before you reported this issue, were you setting either listCutoff or treeCutoff? Setting treeCutoff to a value less than listCutoff (defaults to 16) would likely confuse things. Are you able to see any problems when treeCutoff > listCutoff?
          swiety swiety added a comment -

          before you reported this issue, were you setting either listCutoff or treeCutoff?

          No.

          Setting treeCutoff to a value less than listCutoff (defaults to 16) would likely confuse things.

          Ok, so maybe that's the reason why I see only 3 artefacts when treeCutoff is set to 10.

          Are you able to see any problems when treeCutoff > listCutoff?

          Yes. Although I can see all my 15 artefacts when treeCutoff is set to 100 and listCutoff is not set (so defaults to 16), when treeCutoff is unset (or set explicitly to 40) I can only see 11 artefacts (so 4 are missing), as originally reported.

          Looking at the artifactsList.jelly (http://fisheye.jenkins-ci.org/browse/Hudson/trunk/hudson/main/core/src/main/resources/lib/hudson/artifactList.jelly?r=HEAD) file I can't see any problem either, my only suspection would be that hudson.model.Run.getArtifactsUpTo(int n) (http://fisheye.jenkins-ci.org/browse/Hudson/trunk/hudson/main/core/src/main/java/hudson/model/Run.java?r=30290#l751) method returns less artifacts than requested.

          swiety swiety added a comment - before you reported this issue, were you setting either listCutoff or treeCutoff? No. Setting treeCutoff to a value less than listCutoff (defaults to 16) would likely confuse things. Ok, so maybe that's the reason why I see only 3 artefacts when treeCutoff is set to 10. Are you able to see any problems when treeCutoff > listCutoff? Yes. Although I can see all my 15 artefacts when treeCutoff is set to 100 and listCutoff is not set (so defaults to 16), when treeCutoff is unset (or set explicitly to 40) I can only see 11 artefacts (so 4 are missing), as originally reported. Looking at the artifactsList.jelly ( http://fisheye.jenkins-ci.org/browse/Hudson/trunk/hudson/main/core/src/main/resources/lib/hudson/artifactList.jelly?r=HEAD ) file I can't see any problem either, my only suspection would be that hudson.model.Run.getArtifactsUpTo(int n) ( http://fisheye.jenkins-ci.org/browse/Hudson/trunk/hudson/main/core/src/main/java/hudson/model/Run.java?r=30290#l751 ) method returns less artifacts than requested.
          mindless Alan Harder added a comment -

          ok, think I've found it. There's a double-counting bug when the artifacts are in various subdirectories.. I tested with a bunch of artifacts in one directory and this doesn't trigger the bug. Will fix for 1.357.. thx for the report.

          mindless Alan Harder added a comment - ok, think I've found it. There's a double-counting bug when the artifacts are in various subdirectories.. I tested with a bunch of artifacts in one directory and this doesn't trigger the bug. Will fix for 1.357.. thx for the report.

          Code changed in hudson
          User: : mindless
          Path:
          trunk/hudson/main/core/src/main/java/hudson/model/Run.java
          trunk/hudson/main/core/src/main/resources/lib/hudson/artifactList.jelly
          trunk/hudson/main/test/src/test/java/hudson/model/JobTest.java
          trunk/hudson/main/test/src/test/resources/hudson/model/JobTest/testGetArtifactsUpTo.zip
          trunk/www/changelog.html
          http://jenkins-ci.org/commit/30451
          Log:
          [FIXED JENKINS-6371] Fix getArtifactsUpTo so it doesn't count collapsed-directories
          as artifacts, resulting in too few artifacts returned (since 1.348).
          Also fix limit check so it returns "n" items, not n+1. Added test.

          scm_issue_link SCM/JIRA link daemon added a comment - Code changed in hudson User: : mindless Path: trunk/hudson/main/core/src/main/java/hudson/model/Run.java trunk/hudson/main/core/src/main/resources/lib/hudson/artifactList.jelly trunk/hudson/main/test/src/test/java/hudson/model/JobTest.java trunk/hudson/main/test/src/test/resources/hudson/model/JobTest/testGetArtifactsUpTo.zip trunk/www/changelog.html http://jenkins-ci.org/commit/30451 Log: [FIXED JENKINS-6371] Fix getArtifactsUpTo so it doesn't count collapsed-directories as artifacts, resulting in too few artifacts returned (since 1.348). Also fix limit check so it returns "n" items, not n+1. Added test.

          People

            mindless Alan Harder
            swiety swiety
            Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: