Community
Participate
Working Groups
For several minutes Eclipse was very unresponsive, sometimes completely frozen, and was using all the CPU it could get. It only returned to normal after I closed the history view in every perspective. I'll attach a series of jstack traces that suggest @GitHistoryPage.setWarningText@ is the culprit.
Created attachment 240829 [details] stack traces captured with jstack
Still relevant, I'm experiencing it during perspective switching (plugin/debug), in case when on one "history" tab is active and on second not. Stack Trace at org.eclipse.swt.internal.cocoa.OS.objc_msgSend_stret(Native Method) at org.eclipse.swt.internal.cocoa.NSLayoutManager.glyphRangeForTextContainer(NSLayoutManager.java:88) at org.eclipse.swt.graphics.TextLayout.computeRuns(TextLayout.java:334) at org.eclipse.swt.graphics.TextLayout.getTabWidth(TextLayout.java:2393) at org.eclipse.swt.graphics.TextLayout.setDefaultTabWidth(TextLayout.java:2384) at org.eclipse.swt.custom.StyledTextRenderer.getTextLayout(StyledTextRenderer.java:1194) at org.eclipse.swt.custom.StyledTextRenderer.getTextLayout(StyledTextRenderer.java:899) at org.eclipse.swt.custom.StyledTextRenderer.calculate(StyledTextRenderer.java:298) at org.eclipse.swt.custom.StyledText.redraw(StyledText.java:7613) at org.eclipse.jface.text.WhitespaceCharacterPainter.redrawAll(WhitespaceCharacterPainter.java:478) at org.eclipse.jface.text.WhitespaceCharacterPainter.paint(WhitespaceCharacterPainter.java:156) at org.eclipse.jface.text.PaintManager.paint(PaintManager.java:305) at org.eclipse.jface.text.PaintManager.inputDocumentChanged(PaintManager.java:364) at org.eclipse.jface.text.TextViewer.fireInputDocumentChanged(TextViewer.java:2769) at org.eclipse.jface.text.TextViewer.setDocument(TextViewer.java:2810) at org.eclipse.jface.text.source.SourceViewer.setDocument(SourceViewer.java:663) at org.eclipse.jface.text.source.projection.ProjectionViewer.setDocument(ProjectionViewer.java:368) at org.eclipse.jface.text.source.SourceViewer.setDocument(SourceViewer.java:603) at org.eclipse.egit.ui.internal.history.GitHistoryPage$9$1.runInUIThread(GitHistoryPage.java:2825) at org.eclipse.ui.progress.UIJob.lambda$0(UIJob.java:95) at org.eclipse.ui.progress.UIJob$$Lambda$653/0x00000008015cc440.run(Unknown Source) at org.eclipse.swt.widgets.RunnableLock.run(RunnableLock.java:40) at org.eclipse.swt.widgets.Synchronizer.runAsyncMessages(Synchronizer.java:185) at org.eclipse.swt.widgets.Display.runAsyncMessages(Display.java:4126) at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3793) at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$5.run(PartRenderingEngine.java:1160) at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:338) at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:1049) at org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:155) at org.eclipse.ui.internal.Workbench.lambda$3(Workbench.java:658) at org.eclipse.ui.internal.Workbench$$Lambda$131/0x0000000800e01c40.run(Unknown Source) at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:338) at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:557) at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:154) at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:150) at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:203) at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:137) at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:107) at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:401) at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:255) at java.base@13.0.1/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base@13.0.1/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at java.base@13.0.1/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.base@13.0.1/java.lang.reflect.Method.invoke(Method.java:567) at app//org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:657) at app//org.eclipse.equinox.launcher.Main.basicRun(Main.java:594) at app//org.eclipse.equinox.launcher.Main.run(Main.java:1447) Stack Trace at org.eclipse.swt.internal.cocoa.OS.objc_msgSend(Native Method) at org.eclipse.swt.internal.cocoa.NSMutableAttributedString.setAttributedString(NSMutableAttributedString.java:55) at org.eclipse.swt.graphics.TextLayout.computeRuns(TextLayout.java:330) at org.eclipse.swt.graphics.TextLayout.getTabWidth(TextLayout.java:2393) at org.eclipse.swt.graphics.TextLayout.setDefaultTabWidth(TextLayout.java:2384) at org.eclipse.swt.custom.StyledTextRenderer.getTextLayout(StyledTextRenderer.java:1194) at org.eclipse.swt.custom.StyledTextRenderer.getTextLayout(StyledTextRenderer.java:899) at org.eclipse.swt.custom.StyledText.computeSize(StyledText.java:1730) at org.eclipse.swt.layout.GridData.computeSize(GridData.java:493) at org.eclipse.swt.layout.GridLayout.layout(GridLayout.java:225) at org.eclipse.swt.layout.GridLayout.layout(GridLayout.java:201) at org.eclipse.swt.widgets.Composite.updateLayout(Composite.java:1266) at org.eclipse.swt.widgets.Composite.layout(Composite.java:743) at org.eclipse.swt.widgets.Composite.layout(Composite.java:695) at org.eclipse.swt.widgets.Composite.layout(Composite.java:651) at org.eclipse.egit.ui.internal.history.CommitAndDiffComponent.resizeCommentAndDiffScrolledComposite(CommitAndDiffComponent.java:390) at org.eclipse.egit.ui.internal.history.CommitAndDiffComponent.lambda$3(CommitAndDiffComponent.java:230) at org.eclipse.egit.ui.internal.history.CommitAndDiffComponent$$Lambda$2186/0x0000000802862040.textChanged(Unknown Source) at org.eclipse.jface.text.TextViewer.updateTextListeners(TextViewer.java:2709) at org.eclipse.jface.text.TextViewer.invalidateTextPresentation(TextViewer.java:3329) at org.eclipse.jface.text.TextViewer.initializeWidgetContents(TextViewer.java:3377) at org.eclipse.jface.text.TextViewer.setVisibleDocument(TextViewer.java:3416) at org.eclipse.jface.text.source.projection.ProjectionViewer.setVisibleDocument(ProjectionViewer.java:694) at org.eclipse.jface.text.TextViewer.setDocument(TextViewer.java:2805) at org.eclipse.jface.text.source.SourceViewer.setDocument(SourceViewer.java:663) at org.eclipse.jface.text.source.projection.ProjectionViewer.setDocument(ProjectionViewer.java:368) at org.eclipse.jface.text.source.SourceViewer.setDocument(SourceViewer.java:603) at org.eclipse.egit.ui.internal.history.GitHistoryPage$9$1.runInUIThread(GitHistoryPage.java:2825) at org.eclipse.ui.progress.UIJob.lambda$0(UIJob.java:95) at org.eclipse.ui.progress.UIJob$$Lambda$653/0x00000008015cc440.run(Unknown Source) at org.eclipse.swt.widgets.RunnableLock.run(RunnableLock.java:40) at org.eclipse.swt.widgets.Synchronizer.runAsyncMessages(Synchronizer.java:185) at org.eclipse.swt.widgets.Display.runAsyncMessages(Display.java:4126) at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3793) at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$5.run(PartRenderingEngine.java:1160) at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:338) at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:1049) at org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:155) at org.eclipse.ui.internal.Workbench.lambda$3(Workbench.java:658) at org.eclipse.ui.internal.Workbench$$Lambda$131/0x0000000800e01c40.run(Unknown Source) at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:338) at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:557) at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:154) at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:150) at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:203) at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:137) at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:107) at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:401) at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:255) at java.base@13.0.1/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base@13.0.1/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at java.base@13.0.1/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.base@13.0.1/java.lang.reflect.Method.invoke(Method.java:567) at app//org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:657) at app//org.eclipse.equinox.launcher.Main.basicRun(Main.java:594) at app//org.eclipse.equinox.launcher.Main.run(Main.java:1447)
*** Bug 562840 has been marked as a duplicate of this bug. ***
New Gerrit change created: https://git.eclipse.org/r/c/egit/egit/+/191078
Gerrit change https://git.eclipse.org/r/c/egit/egit/+/191078 was merged to [master]. Commit: http://git.eclipse.org/c/egit/egit.git/commit/?id=4841b9f04419be9c5dfaf50ff89c5d8287bdac2d