Skip to main content


Eclipse Community Forums
Forum Search:

Search      Help    Register    Login    Home
Home » Eclipse Projects » Eclipse 4 » A lot of elements kept in UISynchronizer.pendingStartup attribute
A lot of elements kept in UISynchronizer.pendingStartup attribute [message #1572831] Mon, 19 January 2015 11:09 Go to next message
Aurélien Pupier is currently offline Aurélien PupierFriend
Messages: 637
Registered: July 2009
Location: Grenoble, FRANCE
Senior Member

Hi,

After migration from Eclipse 4.3 to Eclipse 4.4.1, I encounter sometimes Out Of Memory error in one test suite (1 out of 3 times).
Analyzing Heap dump I can notice that a lot of memory is consumed by UISynchronizer (Problem suspect 2 and 3 are caused by UISynchronizer too)
/*** planned to insert an image but not found a working Free Hosting site yet...***/

There is a lot of Objects kept in pendingStartup list attribute (almost 2000), mostly of 3 types:
- org.eclipse.ui.plugin.AbstractUIPlugin$1
- org.eclipse.gmf.runtime.diagram.ui.editparts.ShapeCompartmentEditPart$2
- org.eclipse.draw2d.DeferredUpdateManager$UpdateRequest

If I look to the Threads stack I didn't notice any lock which could explain that all these "pendind startup" Runnables are kept in memory. I suppose that it means that all these Runnables were not executed yet.

Which threads/Which objects are responsible to execute all items of this list?
How can I investigate why elements of this list are kept here? (and so not executed yet?)

Thanks for any help on understanding or debugging this issue.


Aurélien Pupier - Red Hat
Senior Software Engineer in Fuse Tooling team

[Updated on: Mon, 19 January 2015 11:15]

Report message to a moderator

Re: A lot of elements kept in UISynchronizer.pendingStartup attribute [message #1580464 is a reply to message #1572831] Fri, 23 January 2015 14:07 Go to previous message
Aurélien Pupier is currently offline Aurélien PupierFriend
Messages: 637
Registered: July 2009
Location: Grenoble, FRANCE
Senior Member

Hi,

after some investigations:
- all runnables registered before the Workbench creation is stored in pendingStartup list.
- we have some actions in WorkbenWindowAdvisor.preStartup which register sometimes runnables since the Eclipse 4.4 version. Previously it has never happened.
- I try to trigger this actions in postStartup, the issue occurs less often still occurs.
- it seems that the postStartup is after the e3 workbench but before the e4 workbench creation.

How can I be sure to launch my actions after the e4 workbench has been fully created?

Regards,


Aurélien Pupier - Red Hat
Senior Software Engineer in Fuse Tooling team
Previous Topic:Dialog with a fixed size?
Next Topic:Eclipse 4 undo/redo mechanism
Goto Forum:
  


Current Time: Fri Apr 26 11:11:42 GMT 2024

Powered by FUDForum. Page generated in 0.03599 seconds
.:: Contact :: Home ::.

Powered by: FUDforum 3.0.2.
Copyright ©2001-2010 FUDforum Bulletin Board Software

Back to the top