Hello Amenel,
I recently moved to the newest MercurialEclipse version along with an os
upgrade (mac), and am now experiencing heavy performance problems with
MercurialEclipse. The managed repository is on the larger side ( ~ 20.000 files
), and many actions ( such as right-clicking the repository in the Mercurial
Repositories view ) cause a complete UI freeze for up to 6 minutes.
A thread dump (see below) seems to suggest that at least one item in the
popup-menu is a bit needy when calculating enablement status, although the
duration of the freeze probably means the entire repository is iterated over
multiple times.
Kind regards,
Paul
Thread dump has the main thread during these times:
"main" #1 prio=6 os_prio=31 tid=0x00007fac4c826000 nid=0x307 runnable
[0x00007ffee5b91000]
java.lang.Thread.State: RUNNABLE
at java.io.UnixFileSystem.getBooleanAttributes0(Native Method)
at java.io.UnixFileSystem.getBooleanAttributes(UnixFileSystem.java:242)
at java.io.File.isFile(File.java:882)
at
com.vectrace.MercurialEclipse.model.resources.HgContainerAdapter.getChild(HgContainerAdapter.java:147)
at
com.vectrace.MercurialEclipse.model.resources.HgContainerAdapter.getChild(HgContainerAdapter.java:161)
at
com.vectrace.MercurialEclipse.model.resources.HgContainerAdapter.getChild(HgContainerAdapter.java:161)
at
com.vectrace.MercurialEclipse.model.resources.HgContainerAdapter.getChild(HgContainerAdapter.java:161)
at
com.vectrace.MercurialEclipse.model.resources.HgContainerAdapter.getChild(HgContainerAdapter.java:161)
at
com.vectrace.MercurialEclipse.model.resources.HgContainerAdapter.getChild(HgContainerAdapter.java:161)
at
com.vectrace.MercurialEclipse.model.resources.HgContainerAdapter.getChild(HgContainerAdapter.java:161)
at
com.vectrace.MercurialEclipse.model.resources.HgContainerAdapter.getChild(HgContainerAdapter.java:161)
at
com.vectrace.MercurialEclipse.model.resources.HgContainerAdapter.getChild(HgContainerAdapter.java:161)
at
com.vectrace.MercurialEclipse.model.resources.HgContainerAdapter.getFile(HgContainerAdapter.java:120)
at
com.vectrace.MercurialEclipse.team.cache.MercurialStatusCache.getLocalMembers(MercurialStatusCache.java:1419)
at
com.vectrace.MercurialEclipse.menu.FlagPropertyTester.testAnyChildStatus(FlagPropertyTester.java:175)
at
com.vectrace.MercurialEclipse.menu.FlagPropertyTester.test(FlagPropertyTester.java:94)
at org.eclipse.core.internal.expressions.Property.test(Property.java:61)
at
org.eclipse.core.internal.expressions.TestExpression.evaluate(TestExpression.java:103)
at
org.eclipse.core.internal.expressions.CompositeExpression.evaluateAnd(CompositeExpression.java:55)
at
org.eclipse.core.internal.expressions.AdaptExpression.evaluate(AdaptExpression.java:118)
at
org.eclipse.core.internal.expressions.CompositeExpression.evaluateAnd(CompositeExpression.java:55)
at
org.eclipse.core.internal.expressions.IterateExpression.evaluate(IterateExpression.java:165)
at
org.eclipse.core.internal.expressions.ReferenceExpression.evaluate(ReferenceExpression.java:74)
at
org.eclipse.core.internal.expressions.CompositeExpression.evaluateOr(CompositeExpression.java:69)
at
org.eclipse.core.internal.expressions.OrExpression.evaluate(OrExpression.java:25)
at
org.eclipse.ui.internal.handlers.HandlerProxy.setEnabled(HandlerProxy.java:228)
at
org.eclipse.ui.internal.handlers.E4HandlerProxy.setEnabled(E4HandlerProxy.java:134)
at sun.reflect.GeneratedMethodAccessor3.invoke(Unknown Source)
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at
org.eclipse.e4.core.internal.di.MethodRequestor.execute(MethodRequestor.java:58)
at
org.eclipse.e4.core.internal.di.InjectorImpl.invokeUsingClass(InjectorImpl.java:320)
at
org.eclipse.e4.core.internal.di.InjectorImpl.invoke(InjectorImpl.java:254)
at
org.eclipse.e4.core.contexts.ContextInjectionFactory.invoke(ContextInjectionFactory.java:164)
at
org.eclipse.e4.core.commands.internal.HandlerServiceHandler.setEnabled(HandlerServiceHandler.java:84)
at org.eclipse.core.commands.Command.setEnabled(Command.java:865)
at
org.eclipse.e4.core.commands.internal.HandlerServiceImpl.canExecute(HandlerServiceImpl.java:179)
at
org.eclipse.e4.ui.workbench.renderers.swt.HandledContributionItem.canExecuteItem(HandledContributionItem.java:451)
at
org.eclipse.e4.ui.workbench.renderers.swt.AbstractContributionItem$1.run(AbstractContributionItem.java:516)
at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:45)
at
org.eclipse.e4.ui.workbench.renderers.swt.AbstractContributionItem.updateItemEnablement(AbstractContributionItem.java:557)
at
org.eclipse.e4.ui.workbench.renderers.swt.ToolItemUpdater.updateContributionItems(ToolItemUpdater.java:40)
at
org.eclipse.e4.ui.workbench.renderers.swt.ToolBarManagerRenderer$1.changed(ToolBarManagerRenderer.java:355)
at
org.eclipse.e4.core.internal.contexts.TrackableComputationExt.update(TrackableComputationExt.java:117)
at
org.eclipse.e4.core.internal.contexts.EclipseContext.processScheduled(EclipseContext.java:365)
at
org.eclipse.e4.core.internal.contexts.EclipseContext.dispose(EclipseContext.java:189)
at
org.eclipse.e4.ui.internal.workbench.swt.ShellActivationListener.lambda$0(ShellActivationListener.java:186)
at
org.eclipse.e4.ui.internal.workbench.swt.ShellActivationListener$$Lambda$479/1994004868.widgetDisposed(Unknown
Source)
at
org.eclipse.swt.widgets.TypedListener.handleEvent(TypedListener.java:127)
at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:89)
at org.eclipse.swt.widgets.Display.sendEvent(Display.java:4292)
at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1512)
at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1535)
at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1516)
at org.eclipse.swt.widgets.Widget.release(Widget.java:1353)
at org.eclipse.swt.widgets.Control.release(Control.java:2961)
at org.eclipse.swt.widgets.Widget.dispose(Widget.java:694)
at org.eclipse.jface.window.Window.close(Window.java:333)
at org.eclipse.jface.dialogs.Dialog.close(Dialog.java:993)
at org.eclipse.jface.dialogs.Dialog.cancelPressed(Dialog.java:485)
at org.eclipse.jface.dialogs.Dialog.buttonPressed(Dialog.java:471)
at org.eclipse.jface.dialogs.Dialog.lambda$0(Dialog.java:622)
at
org.eclipse.jface.dialogs.Dialog$$Lambda$597/1475167719.accept(Unknown Source)
at
org.eclipse.swt.events.SelectionListener$1.widgetSelected(SelectionListener.java:84)
at
org.eclipse.swt.widgets.TypedListener.handleEvent(TypedListener.java:252)
at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:89)
at org.eclipse.swt.widgets.Display.sendEvent(Display.java:4292)
at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1512)
at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1535)
at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1520)
at org.eclipse.swt.widgets.Widget.notifyListeners(Widget.java:1324)
at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:4116)
at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3733)
at
org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$5.run(PartRenderingEngine.java:1173)
at
org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:339)
at
org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:1062)
at
org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:156)
at org.eclipse.ui.internal.Workbench.lambda$3(Workbench.java:628)
at org.eclipse.ui.internal.Workbench$$Lambda$22/351249017.run(Unknown
Source)
at
org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:339)
at
org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:563)
at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:151)
at
org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:155)
at
org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:199)
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:391)
at
org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:246)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:659)
at org.eclipse.equinox.launcher.Main.basicRun(Main.java:595)
at org.eclipse.equinox.launcher.Main.run(Main.java:1501)
--
You received this message because you are subscribed to the Google Groups
"MercurialEclipse" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
For more options, visit https://groups.google.com/d/optout.