It's not just merge jobs with random failures. Can anyone explain why this AR job failed: https://jenkins.opendaylight.org/releng/job/openflowplugin-validate-autorelease-oxygen/227/console ?
13:49:24 [INFO] ------------------------------------------------------------------------ 13:49:24 [INFO] Reactor Summary: 13:49:24 [INFO] 13:49:24 [INFO] mdsal-artifacts .................................... SUCCESS [ 35.062 s] 13:49:24 [INFO] mdsal-model-artifacts .............................. SUCCESS [ 34.991 s] 13:49:24 [INFO] config-artifacts ................................... SUCCESS [ 42.971 s] 13:49:24 [INFO] yang-test-plugin ................................... SUCCESS [01:13 min] 13:49:24 [INFO] mdsal-artifacts .................................... SUCCESS [ 43.020 s] 13:49:24 [INFO] autorelease-validate-projects ...................... SUCCESS [ 35.985 s] 13:49:24 [INFO] ------------------------------------------------------------------------ 13:49:24 [INFO] BUILD SUCCESS 13:49:24 [INFO] ------------------------------------------------------------------------ 13:49:24 [INFO] Total time: 01:41 min (Wall Clock) 13:49:24 [INFO] Finished at: 2018-02-06T13:49:24+00:00 13:49:24 [INFO] Final Memory: 51M/309M It all indicates success but still mysteriously fails. I don't see any reason why in the output. On Tue, Feb 6, 2018 at 8:45 AM, Thanh Ha <thanh...@linuxfoundation.org> wrote: > On Tue, Feb 6, 2018 at 5:20 AM, Robert Varga <n...@hq.sk> wrote: > >> On 06/02/18 06:53, Thanh Ha wrote: >> > The old-style mdsal-merge job deployed and I kicked off a build: >> > >> > https://jenkins.opendaylight.org/releng/view/Merge-Jobs/job/ >> mdsal-merge-oxygen/1/console >> > >> > It takes about 50 minutes for mdsal to build so we'll know in ~50 >> > minutes if that fixed the issue. >> >> Hello Thanh, >> >> the one thing I found is a difference in file upload strategy in the two >> jobs: >> >> old: >> >> > Deploying the main artifact iana-afn-safi-2013.07.04.12.0-SNAPSHOT.jar >> > Downloading: https://nexus.opendaylight.org >> /content/repositories/opendaylight.snapshot/org/opendaylight >> /mdsal/model/iana-afn-safi/2013.07.04.12.0-SNAPSHOT/maven-metadata.xml >> > Downloaded: https://nexus.opendaylight.org >> /content/repositories/opendaylight.snapshot/org/opendaylight >> /mdsal/model/iana-afn-safi/2013.07.04.12.0-SNAPSHOT/maven-metadata.xml >> (2 KB at 20.8 KB/sec) >> > Uploading: https://nexus.opendaylight.org/content/repositories/opendayl >> ight.snapshot/org/opendaylight/mdsal/model/iana-afn-safi/ >> 2013.07.04.12.0-SNAPSHOT/iana-afn-safi-2013.07.04.12.0- >> 20180206.071107-112.jar >> > Uploaded: https://nexus.opendaylight.org/content/repositories/opendayl >> ight.snapshot/org/opendaylight/mdsal/model/iana-afn-safi/ >> 2013.07.04.12.0-SNAPSHOT/iana-afn-safi-2013.07.04.12.0- >> 20180206.071107-112.jar (23 KB at 2.4 KB/sec) >> > Uploading: https://nexus.opendaylight.org/content/repositories/opendayl >> ight.snapshot/org/opendaylight/mdsal/model/iana-afn-safi/ >> 2013.07.04.12.0-SNAPSHOT/iana-afn-safi-2013.07.04.12.0- >> 20180206.071107-112.pom >> > Uploaded: https://nexus.opendaylight.org/content/repositories/opendayl >> ight.snapshot/org/opendaylight/mdsal/model/iana-afn-safi/ >> 2013.07.04.12.0-SNAPSHOT/iana-afn-safi-2013.07.04.12.0- >> 20180206.071107-112.pom (2 KB at 7.5 KB/sec) >> > Downloading: https://nexus.opendaylight.org >> /content/repositories/opendaylight.snapshot/org/opendaylight >> /mdsal/model/iana-afn-safi/maven-metadata.xml >> > Downloaded: https://nexus.opendaylight.org >> /content/repositories/opendaylight.snapshot/org/opendaylight >> /mdsal/model/iana-afn-safi/maven-metadata.xml (481 B at 31.3 KB/sec) >> > Uploading: https://nexus.opendaylight.org/content/repositories/opendayl >> ight.snapshot/org/opendaylight/mdsal/model/iana-afn-safi/ >> 2013.07.04.12.0-SNAPSHOT/maven-metadata.xml >> > Uploaded: https://nexus.opendaylight.org/content/repositories/opendayl >> ight.snapshot/org/opendaylight/mdsal/model/iana-afn-safi/ >> 2013.07.04.12.0-SNAPSHOT/maven-metadata.xml (2 KB at 4.3 KB/sec) >> > Uploading: https://nexus.opendaylight.org/content/repositories/opendayl >> ight.snapshot/org/opendaylight/mdsal/model/iana-afn-safi/ >> maven-metadata.xml >> > Uploaded: https://nexus.opendaylight.org/content/repositories/opendayl >> ight.snapshot/org/opendaylight/mdsal/model/iana-afn-safi/ >> maven-metadata.xml (481 B at 0.6 KB/sec) >> > Deploying the main artifact iana-afn-safi-2013.07.04.12.0- >> SNAPSHOT-javadoc.jar >> > Uploading: https://nexus.opendaylight.org/content/repositories/opendayl >> ight.snapshot/org/opendaylight/mdsal/model/iana-afn-safi/ >> 2013.07.04.12.0-SNAPSHOT/iana-afn-safi-2013.07.04.12.0- >> 20180206.071107-112-javadoc.jar >> > Uploaded: https://nexus.opendaylight.org/content/repositories/opendayl >> ight.snapshot/org/opendaylight/mdsal/model/iana-afn-safi/ >> 2013.07.04.12.0-SNAPSHOT/iana-afn-safi-2013.07.04.12.0- >> 20180206.071107-112-javadoc.jar (50 KB at 58.1 KB/sec) >> > Uploading: https://nexus.opendaylight.org/content/repositories/opendayl >> ight.snapshot/org/opendaylight/mdsal/model/iana-afn-safi/ >> 2013.07.04.12.0-SNAPSHOT/maven-metadata.xml >> > Uploaded: https://nexus.opendaylight.org/content/repositories/opendayl >> ight.snapshot/org/opendaylight/mdsal/model/iana-afn-safi/ >> 2013.07.04.12.0-SNAPSHOT/maven-metadata.xml (2 KB at 2.7 KB/sec) >> > Deploying the main artifact iana-afn-safi-2013.07.04.12.0- >> SNAPSHOT-sources.jar >> > Uploading: https://nexus.opendaylight.org/content/repositories/opendayl >> ight.snapshot/org/opendaylight/mdsal/model/iana-afn-safi/ >> 2013.07.04.12.0-SNAPSHOT/iana-afn-safi-2013.07.04.12.0- >> 20180206.071107-112-sources.jar >> > Uploaded: https://nexus.opendaylight.org/content/repositories/opendayl >> ight.snapshot/org/opendaylight/mdsal/model/iana-afn-safi/ >> 2013.07.04.12.0-SNAPSHOT/iana-afn-safi-2013.07.04.12.0- >> 20180206.071107-112-sources.jar (13 KB at 13.0 KB/sec) >> > Uploading: https://nexus.opendaylight.org/content/repositories/opendayl >> ight.snapshot/org/opendaylight/mdsal/model/iana-afn-safi/ >> 2013.07.04.12.0-SNAPSHOT/maven-metadata.xml >> > Uploaded: https://nexus.opendaylight.org/content/repositories/opendayl >> ight.snapshot/org/opendaylight/mdsal/model/iana-afn-safi/ >> 2013.07.04.12.0-SNAPSHOT/maven-metadata.xml (2 KB at 1.9 KB/sec) >> >> new: >> >> > Uploading org/opendaylight/mdsal/model/iana-afn-safi/2013.07.04.12.0-S >> NAPSHOT/maven-metadata.xml >> > Uploading org/opendaylight/mdsal/model/iana-afn-safi/2013.07.04.12.0-S >> NAPSHOT/iana-afn-safi-2013.07.04.12.0-20180206.034156-111.jar.sha1 >> > Uploading org/opendaylight/mdsal/model/iana-afn-safi/2013.07.04.12.0-S >> NAPSHOT/iana-afn-safi-2013.07.04.12.0-20180206.034156-111.jar >> > Uploading org/opendaylight/mdsal/model/iana-afn-safi/2013.07.04.12.0-S >> NAPSHOT/iana-afn-safi-2013.07.04.12.0-20180206.034156-111.jar.md5 >> > Uploading org/opendaylight/mdsal/model/iana-afn-safi/2013.07.04.12.0-S >> NAPSHOT/iana-afn-safi-2013.07.04.12.0-20180206.034156-111.pom >> > Uploading org/opendaylight/mdsal/model/iana-afn-safi/2013.07.04.12.0-S >> NAPSHOT/iana-afn-safi-2013.07.04.12.0-20180206.034156-111.pom.sha1 >> > Uploading org/opendaylight/mdsal/model/iana-afn-safi/2013.07.04.12.0-S >> NAPSHOT/iana-afn-safi-2013.07.04.12.0-20180206.034156-111.pom.md5 >> > Uploading org/opendaylight/mdsal/model/iana-afn-safi/2013.07.04.12.0-S >> NAPSHOT/maven-metadata.xml.sha1 >> > Uploading org/opendaylight/mdsal/model/iana-afn-safi/2013.07.04.12.0-S >> NAPSHOT/maven-metadata.xml.md5 >> > Uploading org/opendaylight/mdsal/model/iana-afn-safi/2013.07.04.12.0-S >> NAPSHOT/iana-afn-safi-2013.07.04.12.0-20180206.034156-111-javadoc.jar >> > Uploading org/opendaylight/mdsal/model/iana-afn-safi/2013.07.04.12.0-S >> NAPSHOT/iana-afn-safi-2013.07.04.12.0-20180206.034156-111- >> javadoc.jar.sha1 >> > Uploading org/opendaylight/mdsal/model/iana-afn-safi/2013.07.04.12.0-S >> NAPSHOT/iana-afn-safi-2013.07.04.12.0-20180206.034156-111-javadoc.jar.md5 >> > Uploading org/opendaylight/mdsal/model/iana-afn-safi/2013.07.04.12.0-S >> NAPSHOT/iana-afn-safi-2013.07.04.12.0-20180206.034156-111-sources.jar >> > Uploading org/opendaylight/mdsal/model/iana-afn-safi/2013.07.04.12.0-S >> NAPSHOT/iana-afn-safi-2013.07.04.12.0-20180206.034156-111- >> sources.jar.sha1 >> > Uploading org/opendaylight/mdsal/model/iana-afn-safi/2013.07.04.12.0-S >> NAPSHOT/iana-afn-safi-2013.07.04.12.0-20180206.034156-111-sources.jar.md5 >> > Uploading org/opendaylight/mdsal/model/iana-afn-safi/maven-metadata.xml >> > Uploading org/opendaylight/mdsal/model/iana-afn-safi/maven-metadata.xm >> l.sha1 >> > Uploading org/opendaylight/mdsal/model/iana-afn-safi/maven-metadata.xm >> l.md5 >> >> It seems we are doing things in different order, old: >> - download artifact-$VERSION metadata >> - upload artifact-$VERSION content (jar, pom) >> - download artifact metadata >> - upload artifact-$VERSION metadata >> - upload artifact metadata >> >> Whereas new does not seem to do any sort of ordering -- and uploads also >> checksums, etc. >> >> Now I don't know if nexus is doing anything the the metadata it has or >> how it reacts to parallel deployment of related artifacts. I would >> suggest creating a smarter strategy: >> >> - group files by their artifact name (i.e. directory) >> >> for each artifact file group: >> - upload content (jars, pom, javadoc, sources, etc. etc.) for an >> artifact in a serial manner first >> - upload versioned metadata >> - upload metadata >> >> Never use parallelism inside a group, use parallelism across groups -- >> i.e. deploy multiple artifacts concurrently while retaining file upload >> ordering matching how the old job does things within each artifact. >> >> Regards, >> Robert >> > > Hi Robert, > > So how the new maven merge job works is as follows: > > 1. Download maven-metadata.xml using wget recursive and copies it to > $WORKSPACE/m2repo and $WORKSPACE/m2repo-backup in the same structure as a > maven repo. > 2. Perform mvn clean deploy -DaltDeploymentRepository= > staging::default::file:$WORKSPACE/m2repo in this case Maven considers > this directory a m2repo and updates maven-metadata.xml as if the deployment > repo was on a webserver > 3. Diff the 2 repos m2repo and m2repo-backup and delete all files that > were not modified > 4. Use cURL + gnu-parallel to upload the artifacts to Nexus > > The issue is not with step 4 (Although uploading metadata last is a good > idea) but with step 2 (and I realize now why the validation tool in 3 > didn't catch some errors) when `mvn clean deploy` is running, for some mvn > occasionally produces artifacts and maven-metadata.xml that have the > different timestamps. This is is a known issue for sure with mvn 3.5.0 and > fixed in 3.5.2 I'm not sure if 3.3.9 had the issue or not. > > Last night Luis found a job that consistently always generated the wrong > metadata, when I switched that job to mvn35 it passed, would need more data > to confirm if 3.5.2 really solves the issue or we got lucky but it seems > like perhaps Maven 3.3.9 has issues with deploying to a local maven repo. > > As for why the validation tool failed to catch the issue was, we were only > checking for consistency inside of maven-metadata.xml so did not catch when > the maven-metadata.xml was consistent inside the file but still had > different filenames. > > This unfortunately puts us back on the old merge job which causes Jenkins > instability but considering our crunch time now, a little instability with > Jenkins is better than having bad metadata. > > Thanh > > _______________________________________________ > controller-dev mailing list > controller-dev@lists.opendaylight.org > https://lists.opendaylight.org/mailman/listinfo/controller-dev > >
_______________________________________________ controller-dev mailing list controller-dev@lists.opendaylight.org https://lists.opendaylight.org/mailman/listinfo/controller-dev