Hi oliver, 

Yes thats the downside of 'preloading' but it would prevent Jenkins from 
completely freezing at unexpected times . 

There was some talk of writing lock free implementation of queue. 
 Wondering if  that is still on cards . 

On Wednesday, January 18, 2017 at 6:53:03 PM UTC-6, Surya Gaddipati wrote:
>
>
>
>
>
>
> Seems like jenkins lazy loads builds inside a queue lock which in turn 
> freezes jenkins because so many places inside jenkins try to lock queue. 
>
> Is recommended to force lazyload on *all* jobs after jenkins startup to 
> avoid this kind of scenario ? 
>
>
>
>
>
>
> hudson.util.XStream2.unmarshal(XStream2.java:114)
> com.thoughtworks.xstream.XStream.unmarshal(XStream.java:1173)
> hudson.XmlFile.unmarshal(XmlFile.java:158)
> hudson.model.Run.reload(Run.java:329)
> hudson.model.Run.<init>(Run.java:317)
> hudson.model.AbstractBuild.<init>(AbstractBuild.java:175)
> hudson.model.Build.<init>(Build.java:103)
> hudson.model.FreeStyleBuild.<init>(FreeStyleBuild.java:38)
> sun.reflect.GeneratedConstructorAccessor250.newInstance(Unknown Source)
>
> sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
> java.lang.reflect.Constructor.newInstance(Constructor.java:422)
> jenkins.model.lazy.LazyBuildMixIn.loadBuild(LazyBuildMixIn.java:165)
> jenkins.model.lazy.LazyBuildMixIn$1.create(LazyBuildMixIn.java:142)
> hudson.model.RunMap.retrieve(RunMap.java:223)
> hudson.model.RunMap.retrieve(RunMap.java:56)
>
> jenkins.model.lazy.AbstractLazyLoadRunMap.load(AbstractLazyLoadRunMap.java:500)
>
> jenkins.model.lazy.AbstractLazyLoadRunMap.load(AbstractLazyLoadRunMap.java:482)
>
> jenkins.model.lazy.AbstractLazyLoadRunMap.getByNumber(AbstractLazyLoadRunMap.java:380)
>
> jenkins.model.lazy.AbstractLazyLoadRunMap.search(AbstractLazyLoadRunMap.java:345)
>
> jenkins.model.lazy.LazyBuildMixIn$RunMixIn.getPreviousBuild(LazyBuildMixIn.java:362)
> hudson.model.AbstractBuild.getPreviousBuild(AbstractBuild.java:196)
> hudson.model.AbstractBuild.getPreviousBuild(AbstractBuild.java:105)
> hudson.model.Job.getEstimatedDurationCandidates(Job.java:1019)
> hudson.model.Job.getEstimatedDuration(Job.java:1033)
> hudson.model.queue.MappingWorksheet.<init>(MappingWorksheet.java:334)
> hudson.model.queue.MappingWorksheet.<init>(MappingWorksheet.java:317)
> hudson.model.Queue.maintain(Queue.java:1525)
> hudson.model.Queue$1.call(Queue.java:294)
> hudson.model.Queue$1.call(Queue.java:291)
> jenkins.util.AtmostOneTaskExecutor$1.call(AtmostOneTaskExecutor.java:101)
> jenkins.util.AtmostOneTaskExecutor$1.call(AtmostOneTaskExecutor.java:91)
>

-- 
You received this message because you are subscribed to the Google Groups 
"Jenkins Developers" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/jenkinsci-dev/da53026e-a452-45dd-9a89-a27a3e294ab0%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to