[jbosstools-issues] [JBoss JIRA] (JBIDE-16856) UI Freeze at startup (wakes up later)

Mickael Istria (JIRA) issues at jboss.org
Wed Mar 26 04:09:13 EDT 2014


    [ https://issues.jboss.org/browse/JBIDE-16856?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12956396#comment-12956396 ] 

Mickael Istria commented on JBIDE-16856:
----------------------------------------

I have the impression that the slow startup is caused by activation of Central page. Here is a stack I could get when I found startup slow
{code}
Thread [main] (Suspended)	
	owns: RunnableLock  (id=68)	
	RefreshIndicator.<init>(Composite, String, int) line: 51	
	GettingStartedPage(AbstractJBossCentralPage).createLoadingComposite(FormToolkit, Composite) line: 75	
	GettingStartedPage.createSamplesSection(FormToolkit, Composite) line: 413	
	GettingStartedPage.createFormContent(IManagedForm) line: 213	
	FormPage$1.run() line: 152	
	BusyIndicator.showWhile(Display, Runnable) line: 70	
	GettingStartedPage(FormPage).createPartControl(Composite) line: 150	
	JBossCentralEditor(FormEditor).pageChange(int) line: 471	
	JBossCentralEditor(MultiPageEditorPart).setActivePage(int) line: 1083	
	JBossCentralEditor(FormEditor).setActivePage(int) line: 603	
	JBossCentralEditor(SharedHeaderFormEditor).createPages() line: 103	
	JBossCentralEditor(MultiPageEditorPart).createPartControl(Composite) line: 358	
	CompatibilityEditor(CompatibilityPart).createPartControl(IWorkbenchPart, Composite) line: 138	
	CompatibilityEditor.createPartControl(IWorkbenchPart, Composite) line: 96	
	CompatibilityEditor(CompatibilityPart).create() line: 319	
	NativeMethodAccessorImpl.invoke0(Method, Object, Object[]) line: not available [native method]	
	NativeMethodAccessorImpl.invoke(Object, Object[]) line: 57	
	DelegatingMethodAccessorImpl.invoke(Object, Object[]) line: 43	
	Method.invoke(Object, Object...) line: 606	
	MethodRequestor.execute() line: 56	
	InjectorImpl.processAnnotated(Class<Annotation>, Object, Class<?>, PrimaryObjectSupplier, PrimaryObjectSupplier, ArrayList<Class<?>>) line: 877	
	InjectorImpl.processAnnotated(Class<Annotation>, Object, Class<?>, PrimaryObjectSupplier, PrimaryObjectSupplier, ArrayList<Class<?>>) line: 857	
	InjectorImpl.inject(Object, PrimaryObjectSupplier, PrimaryObjectSupplier) line: 119	
	InjectorImpl.internalMake(Class<?>, PrimaryObjectSupplier, PrimaryObjectSupplier) line: 333	
	InjectorImpl.make(Class<T>, PrimaryObjectSupplier) line: 254	
	ContextInjectionFactory.make(Class<T>, IEclipseContext) line: 162	
	ReflectionContributionFactory.createFromBundle(Bundle, IEclipseContext, IEclipseContext, URI) line: 102	
	ReflectionContributionFactory.doCreate(String, IEclipseContext, IEclipseContext) line: 71	
	ReflectionContributionFactory.create(String, IEclipseContext) line: 53	
	ContributedPartRenderer.createWidget(MUIElement, Object) line: 129	
	PartRenderingEngine.createWidget(MUIElement, Object) line: 958	
	PartRenderingEngine.safeCreateGui(MUIElement, Object, IEclipseContext) line: 642	
	PartRenderingEngine.safeCreateGui(MUIElement) line: 744	
	PartRenderingEngine.access$2(PartRenderingEngine, MUIElement) line: 715	
	PartRenderingEngine$7.run() line: 709	
	SafeRunner.run(ISafeRunnable) line: 42	
	PartRenderingEngine.createGui(MUIElement) line: 694	
	StackRenderer.showTab(MUIElement) line: 1219	
	LazyStackRenderer$1.handleEvent(Event) line: 65	
	UIEventHandler$1.run() line: 41	
	UISynchronizer(Synchronizer).syncExec(Runnable) line: 185	
	UISynchronizer.syncExec(Runnable) line: 150	
	Display.syncExec(Runnable) line: 4559	
	E4Application$1.syncExec(Runnable) line: 208	
	UIEventHandler.handleEvent(Event) line: 38	
	EventHandlerWrapper.handleEvent(Event, Permission) line: 197	
	EventHandlerTracker.dispatchEvent(EventHandlerWrapper, Permission, int, Event) line: 197	
	EventHandlerTracker.dispatchEvent(Object, Object, int, Object) line: 1	
	EventManager.dispatchEvent(Set<Entry<K,V>>, EventDispatcher<K,V,E>, int, E) line: 230	
	ListenerQueue<K,V,E>.dispatchEventSynchronous(int, E) line: 148	
	EventAdminImpl.dispatchEvent(Event, boolean) line: 135	
	EventAdminImpl.sendEvent(Event) line: 78	
	EventComponent.sendEvent(Event) line: 39	
	EventBroker.send(String, Object) line: 80	
	UIEventPublisher.notifyChanged(Notification) line: 58	
	PartStackImpl(BasicNotifierImpl).eNotify(Notification) line: 374	
	PartStackImpl(ElementContainerImpl<T>).setSelectedElement(T) line: 171	
	ModelServiceImpl.showElementInWindow(MWindow, MUIElement) line: 499	
	ModelServiceImpl.bringToTop(MUIElement) line: 466	
	PartServiceImpl.delegateBringToTop(MPart) line: 657	
	PartServiceImpl.bringToTop(MPart) line: 369	
	PartServiceImpl.showPart(MPart, EPartService$PartState) line: 1085	
	WorkbenchPage.busyOpenEditor(IEditorInput, String, boolean, int, IMemento, boolean) line: 3103	
	WorkbenchPage.access$21(WorkbenchPage, IEditorInput, String, boolean, int, IMemento, boolean) line: 3025	
	WorkbenchPage$8.run() line: 3007	
	BusyIndicator.showWhile(Display, Runnable) line: 70	
	WorkbenchPage.openEditor(IEditorInput, String, boolean, int, IMemento, boolean) line: 3003	
	WorkbenchPage.openEditor(IEditorInput, String, boolean, int) line: 2967	
	WorkbenchPage.openEditor(IEditorInput, String) line: 2950	
	JBossCentralActivator.openJBossCentralEditor(IWorkbenchPage) line: 386	
	JBossCentralActivator.getJBossCentralEditor(boolean) line: 374	
	ShowJBossCentral$2.run() line: 110	
	RunnableLock.run() line: 35	
	UISynchronizer(Synchronizer).runAsyncMessages(boolean) line: 136	
	Display.runAsyncMessages(boolean) line: 3746	
	Display.readAndDispatch() line: 3394	
	PartRenderingEngine$9.run() line: 1122	
	Realm.runWithDefault(Realm, Runnable) line: 332	
	PartRenderingEngine.run(MApplicationElement, IEclipseContext) line: 1006	
	E4Workbench.createAndRunUI(MApplicationElement) line: 146	
	Workbench$5.run() line: 615	
	Realm.runWithDefault(Realm, Runnable) line: 332	
	Workbench.createAndRunWorkbench(Display, WorkbenchAdvisor) line: 566	
	PlatformUI.createAndRunWorkbench(Display, WorkbenchAdvisor) line: 150	
	IDEApplication.start(IApplicationContext) line: 125	
	EclipseAppHandle.run(Object) line: 196	
	EclipseAppLauncher.runApplication(Object) line: 109	
	EclipseAppLauncher.start(Object) line: 80	
	EclipseStarter.run(Object) line: 372	
	EclipseStarter.run(String[], Runnable) line: 226	
	NativeMethodAccessorImpl.invoke0(Method, Object, Object[]) line: not available [native method]	
	NativeMethodAccessorImpl.invoke(Object, Object[]) line: 57	
	DelegatingMethodAccessorImpl.invoke(Object, Object[]) line: 43	
	Method.invoke(Object, Object...) line: 606	
	Main.invokeFramework(String[], URL[]) line: 636	
	Main.basicRun(String[]) line: 591	
	Main.run(String[]) line: 1450	
	Main.main(String[]) line: 1426	
{code}
                
> UI Freeze at startup (wakes up later)
> -------------------------------------
>
>                 Key: JBIDE-16856
>                 URL: https://issues.jboss.org/browse/JBIDE-16856
>             Project: Tools (JBoss Tools)
>          Issue Type: Bug
>          Components: central
>    Affects Versions: 4.2.0.Beta1
>            Reporter: Mickael Istria
>            Priority: Critical
>              Labels: respin-a
>             Fix For: 4.2.0.Beta1
>
>         Attachments: eclipse.jstack
>
>
> On Ubuntu 12.04 x86, I used Eclipse Luna M6 JEE package, installed JBoss Tools "Abbriged" category. Next startup has UI thread frozen for several minutes.
> It looks like a long operation is running in UI Thread instead of being in a job.
> I've put this in Central component, but I don't know what component is actually responsible of this latency.

--
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


More information about the jbosstools-issues mailing list