Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
Re: [incquery-dev] tooling issues (contd)

Hi,

Issue 1.: I don't know exactly what is executed on the UI thread; but if this is a recent degradation, I would guess the QuerySpecification is built on the user interface, and that causes some slowdowns. However, I don't know, and changed nothing about the UI/background thread handling in QE in general.

Issue 2.: Again, I don't know exactly what happened, but seems like a bug.

If it is not much a problem, a bug would be very nice of these issues.

Cheers,
Zoli
-- Zoltán Ujhelyi
https://www.inf.mit.bme.hu/en/members/ujhelyiz

Fault Tolerant Systems Research Group
Budapest University of Technology and Economics

On 2014.03.06., at 21:28, Istvan Rath <rath@xxxxxxxxxx> wrote:

> Hi all,
> 
> thankfully, issues https://bugs.eclipse.org/bugs/show_bug.cgi?id=429704 and https://bugs.eclipse.org/bugs/show_bug.cgi?id=429703 seem to be fixed.
> I haven’t seen https://bugs.eclipse.org/bugs/show_bug.cgi?id=419475 in action, but I assume it is also fixed. We are slowly getting there.
> 
> I have encountered two further issues.
> 
> 1. The QE exhibits a (short) UI freeze when edit-saving EIQs that have been loaded. On a Mac, this is indicated by a beachball. What are we running on the UI thread that can take a long time to complete?
> 
> 2. While playing with Viewers, I noticed that a typo in the “label” parameter can lead to a deep exception as follows:
> 
> !ENTRY org.eclipse.core.databinding.observable 4 2 2014-03-06 21:03:52.970
> !MESSAGE Problems occurred when invoking code from plug-in: "org.eclipse.core.databinding.observable".
> !STACK 0
> java.lang.IllegalArgumentException: Inconsistent model references - a $ character is missing.
> 	at org.eclipse.incquery.databinding.runtime.observables.ObservableLabelFeature.calculate(ObservableLabelFeature.java:91)
> 	at org.eclipse.core.databinding.observable.value.ComputedValue$PrivateInterface.run(ComputedValue.java:134)
> 	at org.eclipse.core.databinding.observable.ObservableTracker.runAndMonitor(ObservableTracker.java:110)
> 	at org.eclipse.core.databinding.observable.value.ComputedValue.doGetValue(ComputedValue.java:159)
> 	at org.eclipse.core.databinding.observable.value.AbstractObservableValue.getValue(AbstractObservableValue.java:76)
> 	at org.eclipse.core.databinding.observable.value.ComputedValue$2.run(ComputedValue.java:273)
> 	at org.eclipse.core.databinding.observable.Realm$1.run(Realm.java:148)
> 	at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42)
> 	at org.eclipse.core.databinding.observable.Realm.safeRun(Realm.java:152)
> 	at org.eclipse.core.databinding.observable.Realm.exec(Realm.java:170)
> 	at org.eclipse.core.databinding.observable.value.ComputedValue.computeValueForListeners(ComputedValue.java:265)
> 	at org.eclipse.core.databinding.observable.value.ComputedValue.addChangeListener(ComputedValue.java:252)
> 	at org.eclipse.incquery.viewers.runtime.model.ViewerStateList.initializeItemList(ViewerStateList.java:210)
> 	at org.eclipse.incquery.viewers.runtime.model.ViewerStateList.initializeViewerState(ViewerStateList.java:163)
> 	at org.eclipse.incquery.viewers.runtime.model.ViewerStateList.<init>(ViewerStateList.java:39)
> 	at org.eclipse.incquery.viewers.runtime.model.IncQueryViewerDataModel.newViewerState(IncQueryViewerDataModel.java:385)
> 	at org.eclipse.incquery.viewers.runtime.model.IncQueryViewerDataModel.newViewerState(IncQueryViewerDataModel.java:363)
> 	at org.eclipse.incquery.viewers.tooling.ui.views.ViewersMultiSandboxViewComponent.doSetContents(ViewersMultiSandboxViewComponent.java:291)
> 	at org.eclipse.incquery.viewers.tooling.ui.views.ViewersMultiSandboxViewComponent.initializeContents(ViewersMultiSandboxViewComponent.java:281)
> 	at org.eclipse.incquery.viewers.tooling.ui.views.ViewersMultiSandboxView.initializeContents(ViewersMultiSandboxView.java:97)
> 	at org.eclipse.incquery.viewers.tooling.ui.views.ViewersToolingViewsUtil.initializeContentsOnView(ViewersToolingViewsUtil.java:32)
> 	at org.eclipse.incquery.viewers.tooling.ui.handlers.InitializeViewersHandler.execute(InitializeViewersHandler.java:65)
> 
> Is this normal? Shouldn’t this be caught by a validator much earlier?
> 
> Another variant of probably the same issue:
> 
> !ENTRY org.eclipse.ui 4 0 2014-03-06 21:03:52.989
> !MESSAGE Unhandled event loop exception
> !STACK 0
> org.eclipse.e4.core.di.InjectionException: org.eclipse.core.commands.ExecutionException: Invalid selrection
> 	at org.eclipse.e4.core.internal.di.MethodRequestor.execute(MethodRequestor.java:63)
> 	at org.eclipse.e4.core.internal.di.InjectorImpl.invokeUsingClass(InjectorImpl.java:243)
> 	at org.eclipse.e4.core.internal.di.InjectorImpl.invoke(InjectorImpl.java:224)
> 	at org.eclipse.e4.core.contexts.ContextInjectionFactory.invoke(ContextInjectionFactory.java:132)
> 	at org.eclipse.e4.core.commands.internal.HandlerServiceHandler.execute(HandlerServiceHandler.java:167)
> 	at org.eclipse.core.commands.Command.executeWithChecks(Command.java:499)
> 	at org.eclipse.core.commands.ParameterizedCommand.executeWithChecks(ParameterizedCommand.java:508)
> 	at org.eclipse.e4.core.commands.internal.HandlerServiceImpl.executeHandler(HandlerServiceImpl.java:213)
> 	at org.eclipse.e4.ui.workbench.renderers.swt.HandledContributionItem.executeItem(HandledContributionItem.java:850)
> 	at org.eclipse.e4.ui.workbench.renderers.swt.HandledContributionItem.handleWidgetSelection(HandledContributionItem.java:743)
> 	at org.eclipse.e4.ui.workbench.renderers.swt.HandledContributionItem.access$7(HandledContributionItem.java:727)
> 	at org.eclipse.e4.ui.workbench.renderers.swt.HandledContributionItem$4.handleEvent(HandledContributionItem.java:662)
> 	at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:84)
> 	at org.eclipse.swt.widgets.Display.sendEvent(Display.java:4166)
> 	at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1466)
> 	at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1489)
> 	at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1474)
> 	at org.eclipse.swt.widgets.Widget.notifyListeners(Widget.java:1279)
> 	at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:4012)
> 	at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3651)
> 	at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$9.run(PartRenderingEngine.java:1113)
> 	at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332)
> 	at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:997)
> 	at org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:138)
> 	at org.eclipse.ui.internal.Workbench$5.run(Workbench.java:610)
> 	at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332)
> 	at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:567)
> 	at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:150)
> 	at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:124)
> 	at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:196)
> 	at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:110)
> 	at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:79)
> 	at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:354)
> 	at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:181)
> 	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 org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:636)
> 	at org.eclipse.equinox.launcher.Main.basicRun(Main.java:591)
> 	at org.eclipse.equinox.launcher.Main.run(Main.java:1450)
> 	at org.eclipse.equinox.launcher.Main.main(Main.java:1426)
> Caused by: org.eclipse.core.commands.ExecutionException: Invalid selrection
> 	at org.eclipse.incquery.viewers.tooling.ui.handlers.InitializeViewersHandler.execute(InitializeViewersHandler.java:71)
> 	at org.eclipse.ui.internal.handlers.HandlerProxy.execute(HandlerProxy.java:290)
> 	at org.eclipse.ui.internal.handlers.E4HandlerProxy.execute(E4HandlerProxy.java:90)
> 	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 org.eclipse.e4.core.internal.di.MethodRequestor.execute(MethodRequestor.java:56)
> 	... 41 more
> Caused by: java.lang.IllegalArgumentException: Inconsistent model references - a $ character is missing.
> 	at org.eclipse.incquery.databinding.runtime.observables.ObservableLabelFeature.calculate(ObservableLabelFeature.java:91)
> 	at org.eclipse.core.databinding.observable.value.ComputedValue$PrivateInterface.run(ComputedValue.java:134)
> 	at org.eclipse.core.databinding.observable.ObservableTracker.runAndMonitor(ObservableTracker.java:110)
> 	at org.eclipse.core.databinding.observable.value.ComputedValue.doGetValue(ComputedValue.java:159)
> 	at org.eclipse.core.databinding.observable.value.AbstractObservableValue.getValue(AbstractObservableValue.java:76)
> 	at hu.bme.mit.incquery.viewers.yfiles.ui.viewer.YFilesViewer.bindNodes(YFilesViewer.java:352)
> 	at hu.bme.mit.incquery.viewers.yfiles.ui.viewer.YFilesViewer.bindViewerStateInternal(YFilesViewer.java:324)
> 	at hu.bme.mit.incquery.viewers.yfiles.ui.viewer.YFilesViewer.bindViewerState(YFilesViewer.java:286)
> 	at hu.bme.mit.incquery.viewers.yfiles.ui.viewer.YFilesViewer.bindViewerState(YFilesViewer.java:266)
> 	at hu.bme.mit.incquery.viewers.yfiles.ui.tooling.YFilesViewersTab.bindState(YFilesViewersTab.java:36)
> 	at org.eclipse.incquery.viewers.tooling.ui.views.ViewersMultiSandboxViewComponent.doSetContents(ViewersMultiSandboxViewComponent.java:293)
> 	at org.eclipse.incquery.viewers.tooling.ui.views.ViewersMultiSandboxViewComponent.initializeContents(ViewersMultiSandboxViewComponent.java:281)
> 	at org.eclipse.incquery.viewers.tooling.ui.views.ViewersMultiSandboxView.initializeContents(ViewersMultiSandboxView.java:97)
> 	at org.eclipse.incquery.viewers.tooling.ui.views.ViewersToolingViewsUtil.initializeContentsOnView(ViewersToolingViewsUtil.java:32)
> 	at org.eclipse.incquery.viewers.tooling.ui.handlers.InitializeViewersHandler.execute(InitializeViewersHandler.java:65)
> 	... 48 more
> 
> (invalid selrection lol)
> 
> Should I file bugzillas?
> 
> cheers
> 
> Istvan
> 
> 
> Istvan Rath, PhD
> Research Fellow
> Fault Tolerant Systems Research Group
> Budapest University of Technology and Economics
> rath@xxxxxxxxxx
> 
> 
> 
> _______________________________________________
> incquery-dev mailing list
> incquery-dev@xxxxxxxxxxx
> https://dev.eclipse.org/mailman/listinfo/incquery-dev



Back to the top