Bugs item #3020805, was opened at 2010-06-24 06:41
Message generated for change (Settings changed) made by freyther
You can respond by visiting: 
https://sourceforge.net/tracker/?func=detail&atid=843359&aid=3020805&group_id=167540

Please note that this message will contain a full copy of the comment thread,
including the initial issue submission, for this request,
not just the latest update.
Category: Performance
Group: None
Status: Closed
Resolution: Fixed
>Priority: 6
Private: No
Submitted By: Christophe (csokol)
Assigned to: Karl Beecher (k_beecher)
Summary: SWTError: No more handles

Initial Comment:
Hi,

after 10-15 minutes eclipse gets very sluggish and finally freezes.

Windows 7 Professional
Java(TM) SE Runtime Environment (build 1.6.0_19-b04)
Java HotSpot(TM) 64-Bit Server VM (build 16.2-b04, mixed mode)
Eclipse Platform Version: 3.5.2
Saros 10.6.25 r2245

Lots of error messages:

org.eclipse.swt.SWTError: No more handles
        at org.eclipse.swt.SWT.error(SWT.java:3910)
        at org.eclipse.swt.SWT.error(SWT.java:3799)
        at org.eclipse.swt.SWT.error(SWT.java:3770)
        at org.eclipse.swt.graphics.Image.init(Image.java:1803)
        at org.eclipse.swt.graphics.Image.init(Image.java:1949)
        at org.eclipse.swt.graphics.Image.<init>(Image.java:450)
        at de.fu_berlin.inf.dpp.ui.SarosUI.getImage(SarosUI.java:251)
        at 
de.fu_berlin.inf.dpp.ui.RosterView$AbstractGroupItem.<init>(RosterView.java:395)
        at 
de.fu_berlin.inf.dpp.ui.RosterView$UnfiledGroupItem.<init>(RosterView.java:479)
        at 
de.fu_berlin.inf.dpp.ui.RosterView$TreeContentProvider.getElements(RosterView.java:545)
        at 
org.eclipse.jface.viewers.StructuredViewer.getRawChildren(StructuredViewer.java:959)
        at 
org.eclipse.jface.viewers.ColumnViewer.getRawChildren(ColumnViewer.java:703)
        at 
org.eclipse.jface.viewers.AbstractTreeViewer.getRawChildren(AbstractTreeViewer.java:1330)
        at 
org.eclipse.jface.viewers.TreeViewer.getRawChildren(TreeViewer.java:390)
        at 
org.eclipse.jface.viewers.AbstractTreeViewer.getFilteredChildren(AbstractTreeViewer.java:636)
        at 
org.eclipse.jface.viewers.AbstractTreeViewer.getSortedChildren(AbstractTreeViewer.java:602)
        at 
org.eclipse.jface.viewers.AbstractTreeViewer.updateChildren(AbstractTreeViewer.java:2578)
        at 
org.eclipse.jface.viewers.AbstractTreeViewer.internalRefreshStruct(AbstractTreeViewer.java:1863)
        at 
org.eclipse.jface.viewers.TreeViewer.internalRefreshStruct(TreeViewer.java:716)
        at 
org.eclipse.jface.viewers.AbstractTreeViewer.internalRefresh(AbstractTreeViewer.java:1838)
        at 
org.eclipse.jface.viewers.AbstractTreeViewer.internalRefresh(AbstractTreeViewer.java:1794)
        at 
org.eclipse.jface.viewers.StructuredViewer$8.run(StructuredViewer.java:1484)
        at 
org.eclipse.jface.viewers.StructuredViewer.preservingSelection(StructuredViewer.java:1392)
        at 
org.eclipse.jface.viewers.TreeViewer.preservingSelection(TreeViewer.java:402)
        at 
org.eclipse.jface.viewers.StructuredViewer.preservingSelection(StructuredViewer.java:1353)
        at 
org.eclipse.jface.viewers.StructuredViewer.refresh(StructuredViewer.java:1482)
        at org.eclipse.jface.viewers.ColumnViewer.refresh(ColumnViewer.java:548)
        at 
org.eclipse.jface.viewers.StructuredViewer.refresh(StructuredViewer.java:1439)
        at de.fu_berlin.inf.dpp.ui.RosterView$4.run(RosterView.java:724)
        at de.fu_berlin.inf.dpp.util.Util$6.run(Util.java:417)
        at org.eclipse.swt.widgets.RunnableLock.run(RunnableLock.java:35)
        at 
org.eclipse.swt.widgets.Synchronizer.runAsyncMessages(Synchronizer.java:134)
        at org.eclipse.swt.widgets.Display.runAsyncMessages(Display.java:3885)
        at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3506)
        at org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.java:2405)
        at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:2369)
        at org.eclipse.ui.internal.Workbench.access$4(Workbench.java:2221)
        at org.eclipse.ui.internal.Workbench$5.run(Workbench.java:500)
        at 
org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332)
        at 
org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:493)
        at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:149)
        at 
org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:113)
        at 
org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:194)
        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:368)
        at 
org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:179)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
        at java.lang.reflect.Method.invoke(Unknown Source)
        at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:559)
        at org.eclipse.equinox.launcher.Main.basicRun(Main.java:514)
        at org.eclipse.equinox.launcher.Main.run(Main.java:1311)
        at org.eclipse.equinox.launcher.Main.main(Main.java:1287)


----------------------------------------------------------------------

Comment By: Karl Beecher (k_beecher)
Date: 2010-07-28 05:39

Message:
Tested using the multiple-window technique.

----------------------------------------------------------------------

Comment By: Karl Beecher (k_beecher)
Date: 2010-07-09 04:48

Message:
Images are now created only once when the RosterView and SessionView are
created.

----------------------------------------------------------------------

Comment By: A. Haferburg (ahaferburg)
Date: 2010-07-04 12:16

Message:
One way to speed things up a little when it comes to reproducing this bug
is to open multiple windows in Eclipse. Make sure Roster View is open, then
use Window->New Window ~10 times. Now keep going on- and offline for a bit,
and voilĂ , there's your crash.

I think it might be because we never use Image.dispose():

http://help.eclipse.org/help32/index.jsp?topic=/org.eclipse.platform.doc.isv/reference/api/org/eclipse/swt/graphics/Image.html
Application code must explicitly invoke the Image.dispose() method to
release the operating system resources managed by each instance when those
instances are no longer required. 

----------------------------------------------------------------------

Comment By: Karl Beecher (k_beecher)
Date: 2010-06-24 07:47

Message:
What appears to be common when this happens is the 

de.fu_berlin.inf.dpp.ui.SarosUI.getImage(SarosUI.java:251)

Are we using getting and managing handles responsibly?

----------------------------------------------------------------------

Comment By: Christophe (csokol)
Date: 2010-06-24 06:45

Message:
Windows 7 was running inside a Virtualbox VM

----------------------------------------------------------------------

You can respond by visiting: 
https://sourceforge.net/tracker/?func=detail&atid=843359&aid=3020805&group_id=167540

------------------------------------------------------------------------------
Live Security Virtual Conference
Exclusive live event will cover all the ways today's security and 
threat landscape has changed and how IT managers can respond. Discussions 
will include endpoint security, mobile security and the latest in malware 
threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
_______________________________________________
Dpp-robot mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/dpp-robot

Reply via email to