Skip to main content


Eclipse Community Forums
Forum Search:

Search      Help    Register    Login    Home
Home » Archived » Memory Analyzer (MAT) » Request For Alternate View Of LinkedList
Request For Alternate View Of LinkedList [message #506548] Thu, 07 January 2010 17:44 Go to next message
Deerpark is currently offline DeerparkFriend
Messages: 2
Registered: January 2010
Junior Member
Hello MAT team.

First we want to say thank you for writing such a useful tool. We've been dealing with some out of memory exceptions in our product where the heap dumps produced are 1.5 GB. When we tried the HPJmeter tool to open them it consumed a number of times that much memory before we gave up. With MAT the memory used didn't go much above 1 GB. And as soon as it finished opening the heap dump, it automatically showed the problem class.

We'd like to request an improvement in how MAT processes the java.util.LinkedList class. The normal way the LinkedList shows in the object listing tree is that it has a child called header which is a java.util.LinkedList$Entry instance. And then that has a child called next which is another instance of the same class. This continues until the end of the list.

Unfortunately this means that it is nearly impossible to get useful information about the contents of a LinkedList. Looking at all of the entries requires recursively expanding each next child. But our LinkedList is much too big to make this possible. Also for some reason the elements contained by the LinkedList$Entry do not show.

Our request is that for the LinkedList class, all of the elements show up as children of the LinkedList like they do for arrays. This way you could see immediately how many elements a LinkedList contains. You would also be able to sort them by heap size or class name. We have no reason to look at the LinkedList$Entry class itself. We only care about the elements that have been added to the LinkedList.

Would this be possible to do and does it make sense to do? Thank you very much. Smile
Re: Request For Alternate View Of LinkedList [message #506638 is a reply to message #506548] Fri, 08 January 2010 08:10 Go to previous messageGo to next message
Andrew Johnson is currently offline Andrew JohnsonFriend
Messages: 205
Registered: July 2009
Senior Member
I think the feature you want is already there, in a slightly different form.

From the list object bring up the menu with mouse button 2, then select:

'Java Collections'
'Extract List Values'

Modifying the object view would be confusing as this shows the tree view of the relationships between Java objects.


Re: Request For Alternate View Of LinkedList [message #506718 is a reply to message #506638] Sat, 09 January 2010 00:45 Go to previous messageGo to next message
Deerpark is currently offline DeerparkFriend
Messages: 2
Registered: January 2010
Junior Member
Andrew,

Thank you. That functionality seems to be exactly what we need. Unfortunately it doesn't seem to work with the 0.8.0.20091116-win32 version. Confused

The extract list values pane opens, but the rows in it are empty. Also in the list_objects pane, the linked list entries have no element child.

What's the latest version it's known to work in? Do you think we ought to submit a bug report?
Re: Request For Alternate View Of LinkedList [message #507011 is a reply to message #506718] Mon, 11 January 2010 16:48 Go to previous message
Andrew Johnson is currently offline Andrew JohnsonFriend
Messages: 205
Registered: July 2009
Senior Member
It sounds like the linked list is empty.

Try Collections grouped by size with the class java.util.LinkedList
then expand (list objects on) a line with a length > 0, select an entry and do extract list values.

The query won't work with IBM PHD files.
Previous Topic:How to setup MAT in Eclipse SDK
Next Topic:Same Class on different line in histogram
Goto Forum:
  


Current Time: Wed Apr 24 16:38:09 GMT 2024

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

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

Back to the top