Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read this important communication.

Bug 459388

Summary: IllegalArgumentException: Argument not valid
Product: [Eclipse Project] Platform Reporter: Stephan Herrmann <stephan.herrmann>
Component: UIAssignee: Platform-UI-Inbox <Platform-UI-Inbox>
Status: CLOSED WORKSFORME QA Contact:
Severity: critical    
Priority: P3 CC: alkazako, bsd, daniel_megert, eclipse.sprigogin, konstantin, Lars.Vogel, loskutov, manderse, pwebster, scabanovich
Version: 4.5   
Target Milestone: ---   
Hardware: All   
OS: Linux   
Whiteboard:

Description Stephan Herrmann CLA 2015-02-08 13:11:19 EST
Recently I've been seeing exceptions like this in various situations (judging similarity from memory). Most recent occurrence was while running org.eclipse.jdt.ui.tests.search.FileAdapterTest.testGetFile

Here's what I get in the logs:

java.lang.IllegalArgumentException: Argument not valid
        at org.eclipse.swt.SWT.error(SWT.java:4458)
        at org.eclipse.swt.SWT.error(SWT.java:4392)
        at org.eclipse.swt.SWT.error(SWT.java:4363)
        at org.eclipse.swt.widgets.Widget.error(Widget.java:477)
        at org.eclipse.swt.widgets.Tree.showItem(Tree.java:3559)
        at org.eclipse.swt.widgets.Tree.setVisible(Tree.java:3627)
        at org.eclipse.swt.widgets.Composite.setVisible(Composite.java:1676)
        at org.eclipse.ui.part.PageBook.showPage(PageBook.java:104)
        at org.eclipse.search.ui.text.AbstractTextSearchViewPage.showBusyLabel(AbstractTextSearchViewPage.java:648)
        at org.eclipse.search.ui.text.AbstractTextSearchViewPage.updateBusyLabel(AbstractTextSearchViewPage.java:641)
        at org.eclipse.search.ui.text.AbstractTextSearchViewPage.setInput(AbstractTextSearchViewPage.java:841)
        at org.eclipse.search2.internal.ui.SearchView.internalShowSearchPage(SearchView.java:421)
        at org.eclipse.search2.internal.ui.SearchView.showSearchResult(SearchView.java:386)
        at org.eclipse.search2.internal.ui.SearchViewManager.showNewSearchQuery(SearchViewManager.java:71)
        at org.eclipse.search2.internal.ui.SearchViewManager$1.queryAdded(SearchViewManager.java:48)
        at org.eclipse.search2.internal.ui.QueryManager.fireAdded(QueryManager.java:93)
        at org.eclipse.search2.internal.ui.QueryManager.addQuery(QueryManager.java:70)
        at org.eclipse.search2.internal.ui.InternalSearchUI.addQuery(InternalSearchUI.java:309)
        at org.eclipse.search2.internal.ui.InternalSearchUI.runSearchInForeground(InternalSearchUI.java:203)
        at org.eclipse.search.ui.NewSearchUI.runQueryInForeground(NewSearchUI.java:187)
        at org.eclipse.search.ui.NewSearchUI.runQueryInForeground(NewSearchUI.java:158)
        at org.eclipse.jdt.ui.tests.search.SearchTestHelper.runTypeRefQuery(SearchTestHelper.java:53)
        at org.eclipse.jdt.ui.tests.search.FileAdapterTest.testGetFile(FileAdapterTest.java:45)
Comment 1 Stephan Herrmann CLA 2015-02-11 18:30:30 EST
Search view is not necessary for the exception, see (in Mars M5):

java.lang.IllegalArgumentException: Argument not valid
	at org.eclipse.swt.SWT.error(SWT.java:4458)
	at org.eclipse.swt.SWT.error(SWT.java:4392)
	at org.eclipse.swt.SWT.error(SWT.java:4363)
	at org.eclipse.swt.widgets.Widget.error(Widget.java:477)
	at org.eclipse.swt.widgets.Tree.showItem(Tree.java:3559)
	at org.eclipse.swt.widgets.Tree.setVisible(Tree.java:3627)
	at org.eclipse.ui.part.PageBook.showPage(PageBook.java:104)
	at org.eclipse.ui.part.PageBookView.showPageRec(PageBookView.java:1018)
	at org.eclipse.ui.views.contentoutline.ContentOutline.showPageRec(ContentOutline.java:228)
	at org.eclipse.ui.part.PageBookView.partActivated(PageBookView.java:773)
	at org.eclipse.ui.views.contentoutline.ContentOutline.partBroughtToTop(ContentOutline.java:194)
	at org.eclipse.ui.part.PageBookView$4.partBroughtToTop(PageBookView.java:1081)
	at org.eclipse.ui.internal.WorkbenchPage$22.run(WorkbenchPage.java:4942)
	at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42)
	at org.eclipse.ui.internal.WorkbenchPage.firePartBroughtToTop(WorkbenchPage.java:4939)
	at org.eclipse.ui.internal.WorkbenchPage.access$14(WorkbenchPage.java:4923)
	at org.eclipse.ui.internal.WorkbenchPage$E4PartListener.partBroughtToTop(WorkbenchPage.java:206)
	at org.eclipse.e4.ui.internal.workbench.PartServiceImpl$7.run(PartServiceImpl.java:306)
	at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42)
	at org.eclipse.e4.ui.internal.workbench.PartServiceImpl.firePartBroughtToTop(PartServiceImpl.java:303)
	at org.eclipse.e4.ui.internal.workbench.PartServiceImpl.access$4(PartServiceImpl.java:301)
	at org.eclipse.e4.ui.internal.workbench.PartServiceImpl$1.handleEvent(PartServiceImpl.java:98)
	at org.eclipse.e4.ui.services.internal.events.UIEventHandler$1.run(UIEventHandler.java:40)
	at org.eclipse.swt.widgets.Synchronizer.syncExec(Synchronizer.java:187)
	at org.eclipse.ui.internal.UISynchronizer.syncExec(UISynchronizer.java:145)
	at org.eclipse.swt.widgets.Display.syncExec(Display.java:4634)
	at org.eclipse.e4.ui.internal.workbench.swt.E4Application$1.syncExec(E4Application.java:212)
	at org.eclipse.e4.ui.services.internal.events.UIEventHandler.handleEvent(UIEventHandler.java:36)
	at org.eclipse.equinox.internal.event.EventHandlerWrapper.handleEvent(EventHandlerWrapper.java:197)
	at org.eclipse.equinox.internal.event.EventHandlerTracker.dispatchEvent(EventHandlerTracker.java:197)
	at org.eclipse.equinox.internal.event.EventHandlerTracker.dispatchEvent(EventHandlerTracker.java:1)
	at org.eclipse.osgi.framework.eventmgr.EventManager.dispatchEvent(EventManager.java:230)
	at org.eclipse.osgi.framework.eventmgr.ListenerQueue.dispatchEventSynchronous(ListenerQueue.java:148)
	at org.eclipse.equinox.internal.event.EventAdminImpl.dispatchEvent(EventAdminImpl.java:135)
	at org.eclipse.equinox.internal.event.EventAdminImpl.sendEvent(EventAdminImpl.java:78)
	at org.eclipse.equinox.internal.event.EventComponent.sendEvent(EventComponent.java:39)
	at org.eclipse.e4.ui.services.internal.events.EventBroker.send(EventBroker.java:85)
	at org.eclipse.e4.ui.internal.workbench.UIEventPublisher.notifyChanged(UIEventPublisher.java:59)
	at org.eclipse.emf.common.notify.impl.BasicNotifierImpl.eNotify(BasicNotifierImpl.java:374)
	at org.eclipse.e4.ui.model.application.ui.impl.ElementContainerImpl.setSelectedElement(ElementContainerImpl.java:171)
	at org.eclipse.e4.ui.internal.workbench.ModelServiceImpl.showElementInWindow(ModelServiceImpl.java:488)
	at org.eclipse.e4.ui.internal.workbench.ModelServiceImpl.bringToTop(ModelServiceImpl.java:454)
	at org.eclipse.e4.ui.internal.workbench.PartServiceImpl.delegateBringToTop(PartServiceImpl.java:715)
	at org.eclipse.e4.ui.internal.workbench.PartServiceImpl.bringToTop(PartServiceImpl.java:393)
	at org.eclipse.ui.internal.WorkbenchPage.bringToTop(WorkbenchPage.java:1044)
	at org.eclipse.debug.internal.ui.sourcelookup.SourceLookupFacility.openEditor(SourceLookupFacility.java:483)
	at org.eclipse.debug.internal.ui.sourcelookup.SourceLookupFacility.display(SourceLookupFacility.java:417)
	at org.eclipse.debug.internal.ui.sourcelookup.SourceLookupFacility$SourceDisplayJob.runInUIThread(SourceLookupFacility.java:788)
	at org.eclipse.ui.progress.UIJob$1.run(UIJob.java:97)
	at org.eclipse.swt.widgets.RunnableLock.run(RunnableLock.java:35)
	at org.eclipse.swt.widgets.Synchronizer.runAsyncMessages(Synchronizer.java:136)
	at org.eclipse.swt.widgets.Display.runAsyncMessages(Display.java:3793)
	at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3431)
	at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$9.run(PartRenderingEngine.java:1151)
	at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:337)
	at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:1032)
	at org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:156)
	at org.eclipse.ui.internal.Workbench$5.run(Workbench.java:648)
	at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:337)
	at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:592)
	at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:150)
	at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:138)
	at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:196)
	at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:134)
	at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:104)
	at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:380)
	at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:235)
	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:648)
	at org.eclipse.equinox.launcher.Main.basicRun(Main.java:603)
	at org.eclipse.equinox.launcher.Main.run(Main.java:1465)
Comment 2 Stephan Herrmann CLA 2015-02-12 05:32:10 EST
Quoting myself to make this part better visible:

(In reply to Stephan Herrmann from comment #1)
> Search view is not necessary for the exception
Comment 3 Konstantin Komissarchik CLA 2015-02-18 20:25:26 EST
Changing title to make this more generic. This exception crops up all over the place in m5a.
Comment 4 Konstantin Komissarchik CLA 2015-02-18 20:26:06 EST
*** Bug 460286 has been marked as a duplicate of this bug. ***
Comment 5 Dani Megert CLA 2015-02-19 04:54:32 EST
*** Bug 458870 has been marked as a duplicate of this bug. ***
Comment 6 Slava Kabanovich CLA 2015-02-24 14:55:01 EST
This issue is not marked as critical and urgent, but it is so for JBossTools (see https://issues.jboss.org/browse/JBIDE-19270), as it blocks the development process of new editors. Could you please patch this issue asap?
Comment 7 Konstantin Komissarchik CLA 2015-02-24 14:58:47 EST
Any update on this issue? This is affecting a large number of areas. Has it been determined what change in M5 introduced this regression?
Comment 8 Lars Vogel CLA 2015-02-24 14:59:58 EST
Can someone add a description how to trigger this exception in the IDE?
Comment 9 Konstantin Komissarchik CLA 2015-02-24 15:02:16 EST
I can provide a repro involving Sapphire, but before we go there, try the repro in Bug 458870.
Comment 10 Max Rydahl Andersen CLA 2015-02-25 06:43:45 EST
btw. I don't see this exception on OSX - i'm wondering if linux only issue ?
Comment 11 Konstantin Komissarchik CLA 2015-02-25 16:37:17 EST
> I don't see this exception on OSX - i'm wondering if linux only issue ?

That might right. I am not seeing this exception on Windows either.
Comment 12 Alexey Kazakov CLA 2015-03-10 19:42:51 EDT
Looks like a serious bug but still doesn't have Target Milestone set :( When can we expect this bug to be fixed?
Comment 13 Sergey Prigogin CLA 2015-03-10 19:53:02 EDT
(In reply to Lars Vogel from comment #8)
I see this exception regularly when debugging Java code in Eclipse on Linux.
Comment 14 Brian de Alwis CLA 2015-03-23 20:52:42 EDT
Konstantin, you marked this as applying to all platforms.  It sounds like it may be a GTK3-related event ordering issue similar to bug 460286.
Comment 15 Konstantin Komissarchik CLA 2015-03-23 20:55:10 EDT
Feel free to adjust it as appropriate now that it's in Platform UI inbox. This started out in Sapphire inbox, where there are no platform-specific issues.
Comment 16 Brian de Alwis CLA 2015-03-23 21:26:47 EDT
If you have some definite steps to reproduce with Sapphire, that would also be helpful.
Comment 17 Konstantin Komissarchik CLA 2015-03-23 23:03:14 EDT
Sorry, I confused this issue with Bug 460286, which started in Sapphire.
Comment 18 Brian de Alwis CLA 2015-03-24 11:41:03 EDT
(In reply to Konstantin Komissarchik from comment #15)
> Feel free to adjust it as appropriate now that it's in Platform UI inbox.
> This started out in Sapphire inbox, where there are no platform-specific
> issues.

The Platform is ideally platform-agnostic too, though as you're finding we still hit platform-specific bugs.  It is better to leave the platform as-is.

What Linux distributions are you typically using?  I'm happy to try to reproduce, but I don't keep up with distro/gtk versions.
Comment 19 Lars Vogel CLA 2015-05-26 06:10:48 EDT
I do not see this error in 4.5.0.I20150525-2000 under Ubuntu 15.04. Maybe fixed with Bug 460286?

Please reopen with instructions how to reproduce it.