[JIRA] [core] (JENKINS-22050) All extension classes are loaded at once when any is called

2016-03-28 Thread jgl...@cloudbees.com (JIRA)
Title: Message Title
 
 
 
 
 
 
 
 
 
 
  
 
 Jesse Glick commented on  JENKINS-22050 
 
 
 
 
 
 
 
 
 
 

 
 
 
 
 
 
 
  Re: All extension classes are loaded at once when any is called  
 
 
 
 
 
 
 
 
 
 

I thought loading extensions is usually a tiny part of it
 
My preliminary results suggest something around 40% given a small $JENKINS_HOME. 
Obviously a production instance is going to spend a lot more time loading configuration files, especially jobs. But this is very significant when running tests with JenkinsRule. 
 
 
 
 
 
 
 
 
 
 
 
 

 
 Add Comment 
 
 
 
 
 
 
 
 
 
 

 
 
 
 
 
 
 
 
 
 

 This message was sent by Atlassian JIRA (v6.4.2#64017-sha1:e244265) 
 
 
 
 
  
 
 
 
 
 
 
 
 
   





-- 
You received this message because you are subscribed to the Google Groups "Jenkins Issues" group.
To unsubscribe from this group and stop receiving emails from it, send an email to jenkinsci-issues+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


[JIRA] [core] (JENKINS-22050) All extension classes are loaded at once when any is called

2016-03-28 Thread k...@kohsuke.org (JIRA)
Title: Message Title
 
 
 
 
 
 
 
 
 
 
  
 
 Kohsuke Kawaguchi commented on  JENKINS-22050 
 
 
 
 
 
 
 
 
 
 

 
 
 
 
 
 
 
  Re: All extension classes are loaded at once when any is called  
 
 
 
 
 
 
 
 
 
 
But you get the point, right? As an user, I'd rather find problems earlier than later. If one of the extension points do not load, have a problem initializing, or whatever, I'd rather see that error during the boot, not when some code actually attempts to use it. 
 
 
 
 
 
 
 
 
 
 
 
 

 
 Add Comment 
 
 
 
 
 
 
 
 
 
 

 
 
 
 
 
 
 
 
 
 

 This message was sent by Atlassian JIRA (v6.4.2#64017-sha1:e244265) 
 
 
 
 
  
 
 
 
 
 
 
 
 
   





-- 
You received this message because you are subscribed to the Google Groups "Jenkins Issues" group.
To unsubscribe from this group and stop receiving emails from it, send an email to jenkinsci-issues+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


[JIRA] [core] (JENKINS-22050) All extension classes are loaded at once when any is called

2016-03-28 Thread jgl...@cloudbees.com (JIRA)
Title: Message Title
 
 
 
 
 
 
 
 
 
 
  
 
 Jesse Glick commented on  JENKINS-22050 
 
 
 
 
 
 
 
 
 
 

 
 
 
 
 
 
 
  Re: All extension classes are loaded at once when any is called  
 
 
 
 
 
 
 
 
 
 
I am concerned here about startup performance, not diagnosability. 

when I run a matrix project, it blows up trying to list Axis extension points
 
Well it should not “blow up”, it should simply skip over unloadable extension points with a warning, as currently happens during startup. 

one of the plugins I have is missing a dependency
 
That issue is better handled directly by the plugin manager. 
 
 
 
 
 
 
 
 
 
 
 
 

 
 Add Comment 
 
 
 
 
 
 
 
 
 
 

 
 
 
 
 
 
 
 
 
 

 This message was sent by Atlassian JIRA (v6.4.2#64017-sha1:e244265) 
 
 
 
 
  
 
 
 
 
 
 
 
 
   





-- 
You received this message because you are subscribed to the Google Groups "Jenkins Issues" group.
To unsubscribe from this group and stop receiving emails from it, send an email to jenkinsci-issues+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


[JIRA] [core] (JENKINS-22050) All extension classes are loaded at once when any is called

2016-03-28 Thread k...@kohsuke.org (JIRA)
Title: Message Title
 
 
 
 
 
 
 
 
 
 
  
 
 Kohsuke Kawaguchi commented on  JENKINS-22050 
 
 
 
 
 
 
 
 
 
 

 
 
 
 
 
 
 
  Re: All extension classes are loaded at once when any is called  
 
 
 
 
 
 
 
 
 
 
To me, the fact that all extensions are loaded & instantiated is a feature that brings predictability to the boot sequence. Given that Jenkins is a server application, I like that when Jenkins boots up I know all the components are functioning. Imagine the opposite; Jenkins claims it came up OK, but when I run a matrix project, it blows up trying to list Axis extension points, because one of the plugins I have is missing a dependency. 
The problem IMHO is that we have this unnecessary unpredictability today that we don't load extensions until someone tries to look at some extensions for the first time. This is a significant enough event that it should be even explicitly defined as an InitMilestone. 
Also, the bug description lacks what the problem is. The performance tag seems to tell me that Jesse thinks this is a startup performance problem, but I thought loading extensions is usually a tiny part of it. Isn't this more of a diagnosability problem? 
 
 
 
 
 
 
 
 
 
 
 
 

 
 Add Comment 
 
 
 
 
 
 
 
 
 
 

 
 
 
 
 
 
 
 
 
 

 This message was sent by Atlassian JIRA (v6.4.2#64017-sha1:e244265) 
 
 
 
 
  
 
 
 
 
 
 
 
 
   





-- 
You received this message because you are subscribed to the Google Groups "Jenkins Issues" group.
To unsubscribe from this group and stop receiving emails from it, send an email to jenkinsci-issues+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


[JIRA] [core] (JENKINS-22050) All extension classes are loaded at once when any is called

2015-11-18 Thread jgl...@cloudbees.com (JIRA)
Title: Message Title
 
 
 
 
 
 
 
 
 
 
  
 
 Jesse Glick commented on  JENKINS-22050 
 
 
 
 
 
 
 
 
 
 

 
 
 
 
 
 
 
  Re: All extension classes are loaded at once when any is called  
 
 
 
 
 
 
 
 
 
 
I think some plugins rely on this unfortunate behavior, making changing it a potential compatibility issue. 
 
 
 
 
 
 
 
 
 
 
 
 

 
 Add Comment 
 
 
 
 
 
 
 
 
 
 

 
 
 
 
 
 
 
 
 
 

 This message was sent by Atlassian JIRA (v6.4.2#64017-sha1:e244265) 
 
 
 
 
  
 
 
 
 
 
 
 
 
   





-- 
You received this message because you are subscribed to the Google Groups "Jenkins Issues" group.
To unsubscribe from this group and stop receiving emails from it, send an email to jenkinsci-issues+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


[JIRA] [core] (JENKINS-22050) All extension classes are loaded at once when any is called

2014-03-05 Thread jgl...@cloudbees.com (JIRA)














































Jesse Glick
 commented on  JENKINS-22050


All extension classes are loaded at once when any is called















Because ExtensionFinder.SezPoz.scout calls Class.forName(…, true, …).



























This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators.
For more information on JIRA, see: http://www.atlassian.com/software/jira







-- 
You received this message because you are subscribed to the Google Groups "Jenkins Issues" group.
To unsubscribe from this group and stop receiving emails from it, send an email to jenkinsci-issues+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.


[JIRA] [core] (JENKINS-22050) All extension classes are loaded at once when any is called

2014-03-05 Thread jgl...@cloudbees.com (JIRA)














































Jesse Glick
 created  JENKINS-22050


All extension classes are loaded at once when any is called















Issue Type:


Bug



Assignee:


Unassigned


Components:


core



Created:


05/Mar/14 8:27 PM



Description:



Mar 05, 2014 12:10:01 PM jenkins.InitReactorRunner$1 onAttained
INFO: Loaded all jobs
java.lang.Exception: Stack trace
	at java.lang.Thread.dumpStack(Thread.java:1364)
	at MyThing$DescriptorImpl.(MyThing.java:...)
	at java.lang.Class.forName0(Native Method)
	at java.lang.Class.forName(Class.java:270)
	at hudson.ExtensionFinder$Sezpoz.scout(ExtensionFinder.java:680)
	at hudson.ClassicPluginStrategy.findComponents(ClassicPluginStrategy.java:310)
	at hudson.ExtensionList.load(ExtensionList.java:295)
	at hudson.ExtensionList.ensureLoaded(ExtensionList.java:248)
	at hudson.ExtensionList.iterator(ExtensionList.java:138)
	at hudson.ClassicPluginStrategy.findComponents(ClassicPluginStrategy.java:309)
	at hudson.ExtensionList.load(ExtensionList.java:295)
	at hudson.ExtensionList.ensureLoaded(ExtensionList.java:248)
	at hudson.ExtensionList.get(ExtensionList.java:153)
	at hudson.PluginManager$PluginUpdateMonitor.getInstance(PluginManager.java:1097)
	at hudson.maven.PluginImpl.init(PluginImpl.java:54)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:606)
	at hudson.init.TaskMethodFinder.invoke(TaskMethodFinder.java:105)
	at hudson.init.TaskMethodFinder$TaskImpl.run(TaskMethodFinder.java:169)
	at org.jvnet.hudson.reactor.Reactor.runTask(Reactor.java:282)
	at jenkins.model.Jenkins$7.runTask(Jenkins.java:899)
	at org.jvnet.hudson.reactor.Reactor$2.run(Reactor.java:210)
	at org.jvnet.hudson.reactor.Reactor$Node.run(Reactor.java:117)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
	at java.lang.Thread.run(Thread.java:744)
Mar 05, 2014 12:10:05 PM org.jenkinsci.main.modules.sshd.SSHD start
INFO: Started SSHD at port 58096
Mar 05, 2014 12:10:05 PM jenkins.InitReactorRunner$1 onAttained
INFO: Completed initialization


The Maven plugin is trying to load a random AdministrativeMonitor type, and all static initializers are getting called.




Project:


Jenkins



Labels:


performance
startup




Priority:


Major



Reporter:


Jesse Glick

























This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators.
For more information on JIRA, see: http://www.atlassian.com/software/jira







-- 
You received this message because you are subscribed to the Google Groups "Jenkins Issues" group.
To unsubscribe from this group and stop receiving emails from it, send an email to jenkinsci-issues+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.