This Bugzilla instance is a read-only archive of historic NetBeans bug reports. To report a bug in NetBeans please follow the project's instructions for reporting issues.

Bug 113705 - [heapwalker] NPE on 'Show only subclasses or Implementations' cmd
Summary: [heapwalker] NPE on 'Show only subclasses or Implementations' cmd
Status: VERIFIED FIXED
Alias: None
Product: profiler
Classification: Unclassified
Component: Base (show other bugs)
Version: 6.x
Hardware: PC Windows XP
: P2 blocker (vote)
Assignee: J Bachorik
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2007-08-24 10:53 UTC by Maksim Khramov
Modified: 2007-09-14 12:47 UTC (History)
0 users

See Also:
Issue Type: DEFECT
Exception Reporter:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Maksim Khramov 2007-08-24 10:53:01 UTC
Product Version: NetBeans IDE Dev (Build 200708211200) 
Java: 1.6.0_02; Java HotSpot(TM) Client VM 1.6.0_02-b05 
System: Windows XP version 5.1 running on x86; Cp1251; ru_RU (nb)

Steps to reproduce:
Create new Enterprise application project.
Run profiling in Analyze Memory mode.
Take heap dump.
In heapwalker select some class (e.g com.sun.appserv.management.base.AllTypesMapper) and invoke 'Show only subclasses or
Implementations' command.
The NPE is thrown:
java.lang.NullPointerException
	at org.netbeans.modules.profiler.utils.SourceUtils$11.run(SourceUtils.java:890)
	at org.netbeans.modules.profiler.utils.SourceUtils$11.run(SourceUtils.java:886)
	at org.netbeans.api.java.source.JavaSource.runUserActionTask(JavaSource.java:563)
	at org.netbeans.modules.profiler.utils.SourceUtils.getSubclassesNames(SourceUtils.java:883)
	at org.netbeans.modules.profiler.heapwalk.ClassesListController.getContextSubclasses(ClassesListController.java:158)
	at org.netbeans.modules.profiler.heapwalk.ClassesListController.getSubclasses(ClassesListController.java:141)
	at org.netbeans.modules.profiler.heapwalk.ClassesListController.getFilteredSortedClasses(ClassesListController.java:83)
	at org.netbeans.modules.profiler.heapwalk.ui.ClassesListControllerUI.initData(ClassesListControllerUI.java:210)
	at org.netbeans.modules.profiler.heapwalk.ui.ClassesListControllerUI.access$600(ClassesListControllerUI.java:66)
	at org.netbeans.modules.profiler.heapwalk.ui.ClassesListControllerUI$4$1.doInBackground(ClassesListControllerUI.java:446)
	at com.sun.tools.profiler.ui.SwingWorker$3.run(SwingWorker.java:91)
	at org.openide.util.RequestProcessor$Task.run(RequestProcessor.java:539)
[catch] at org.openide.util.RequestProcessor$Processor.run(RequestProcessor.java:964)
Comment 1 Alexander Kouznetsov 2007-08-24 15:12:04 UTC
Heap Walker funtionality doesn't work after this NPE.
Comment 2 J Bachorik 2007-08-27 09:45:39 UTC
This was caused by the javac controller not being explicitly pushed to ELEMENTS_RESOLVED phase - thus resulting in
random errors when trying to resolve subclasses names.
fixed in trunk
Comment 3 Maksim Khramov 2007-09-07 10:37:33 UTC
Reproduced on NetBeans IDE 6.0 Beta 1 (Build 200709070000)
Comment 4 J Bachorik 2007-09-07 12:47:18 UTC
fixed. this time for good.
there was possibility the heapdump could contain a class not being available when heapwalking. in that case the NPE was
thrown. now a user message in the status bar is shown instead
Comment 5 J Bachorik 2007-09-07 12:53:55 UTC
removing INCOMPLETE introduced by mistake
Comment 6 Maksim Khramov 2007-09-14 12:47:11 UTC
Verified in build 200709140000