Jenkins is building an iOS project with five similarly-sized targets.
The git repository is 251 MB, of which the .git dir is 130 MB. A
pipeline stage handles the checkout, injects build numbers, and stashes
the modified sources, minus the unnecessary .git dir, for the other
build nodes to consume. 

stage ("Checkout and modify") {
        agent { label 'xcode-9' }
        steps {
                checkout scm
                sh ("agvtool new-version -all $BUILD_ID")
                stash (excludes: '.git', name: "modified-sources")
        }
}

This stash operation consistently takes 15 minutes. Unstashing it on any
of the build nodes then takes about ten minutes per node. Something is
wrong, but I'm not sure what steps to take.

The build environment is vsphere on an older mac pro, with some Mac VMs
for Xcode and a (dockerized) jenkins master in a linux VM. The storage
is all SSD, and we're not seeing any issues with I/O performance other
than this stash/unstash problem. Zipping this same source directory
takes six seconds, and tar+bzip2 takes 15 seconds.

An individual build of this project runs in under three minutes, so the
unstash alone quadruples our build times. Any suggestions for how to
investigate?

Thanks,

  -nat

-- 
You received this message because you are subscribed to the Google Groups 
"Jenkins Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to jenkinsci-users+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/jenkinsci-users/1513293192.3586726.1205509440.0B960302%40webmail.messagingengine.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to