Hi Tim,
On 3/18/2015 6:08 PM, Timothy Vogel wrote:
I have a long delay (approximately 16 seconds)
during start-up of my application. To debug, I enabled logging
of all bundle events. I have attached the full log but the
lines below lead me to believe that the delay is part of RSA
starup.
Hmm. I see that 16 seconds elapses between the PACKAGES REFRESHED
event and the RSA ServiceEvent Registered, but I'm at a complete
loss to explain what would take that time in RSA startup. Is it
possible that the package refresh is taking a long time for some
reason (weaving)? The amount of code executed in the
o.e.e.osgi.services.remoteserviceadmin Activator is
negligible...especially before the RemoteServiceAdmin service
registration (which is reported as the ServiceEvent Registered).
Any suggestions on how to determine if it is RSA and how to
reduce the startup time?
One way would be to run in Eclipse debugger and turn on
tracing...especially for the
org.eclipse.ecf.osgi.services.remoteserviceadmin bundle tracing
options.
Again in the debugger you could pause the app during the 16 second
delay (after the PACKAGES message presumably there would be a
pause), and look at the threads to see where they were/what they
were doing during that delay. Or you could put a breakpoint in the
o.e.e.osgi.services.remoteserviceadmin activator and see if the
bundle event 16 sec pause occurred before the breakpoint or after.
A few questions:
1) Are you auto-starting all bundles in this client?...as opposed to
the usual Eclipse/RCP lazy start?
2) Which bundle(s) contains the (4?) edef files?
3) When are these edef bundles started?...relative to the
o.e.e.osgi.services.remoteserviceadmin bundle? (i.e. prior to or
after the long delay?);
4) Is there any network discovery mechanism (e.g. zeroconf, etc?)
present?
5) Is what you've provided below the entire bundle event log?
6) Does this client discover, connect to, and import the remote
services during it's startup? (or is it triggered later?).
Thanks,
Scott
|