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 jenkinsci-dev+unsubscr...@googlegroups.com.
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