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 21810 - Debugger consume a lot of memory
Summary: Debugger consume a lot of memory
Status: VERIFIED WONTFIX
Alias: None
Product: javaee
Classification: Unclassified
Component: Debugger (show other bugs)
Version: -FFJ-
Hardware: Sun Solaris
: P2 blocker (vote)
Assignee: Martin Grebac
URL:
Keywords: PERFORMANCE
: 22177 27669 (view as bug list)
Depends on:
Blocks:
 
Reported: 2002-03-22 13:46 UTC by sva
Modified: 2005-12-14 14:44 UTC (History)
0 users

See Also:
Issue Type: TASK
Exception Reporter:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description sva 2002-03-22 13:46:19 UTC
FFJ consume a lot of memory when user try to debug 
JSP&servlets.
Steps to reproduce: 
1. Just run FFJ and try to debug some JSP.
2. Finish debugger and start new session.
3. Repeat step 2 about 20 times.

A part of "top" output after loading starting FFJ:
PID USERNAME THR PRI NICE  SIZE   RES STATE   TIME  CPU 
COMMAND
8077 sva   28   0    0  238M  169M cpu1    2:14 38.07% java

A part of "top" output after loading steps 2 and 3:
PID USERNAME THR PRI NICE  SIZE   RES STATE   TIME  CPU 
COMMAND
 8077 sva  48  58    0 1488M  561M sleep   9:59 13.96% java

Well reproduced under Solaris8 with build 020318.
Comment 1 Jan Jancura 2002-03-28 10:41:01 UTC
Thank you for your report.
I know about it and I would like to fix it to NB34.
Comment 2 Jan Jancura 2002-04-08 13:34:51 UTC
*** Issue 22177 has been marked as a duplicate of this issue. ***
Comment 3 Marek Grummich 2002-07-22 09:05:37 UTC
Target milestone was changed from '3.4' to TBD.
Comment 4 Marek Grummich 2002-07-22 09:13:25 UTC
Target milestone was changed from '3.4' to TBD.
Comment 5 Jan Jancura 2002-10-07 08:55:50 UTC
*** Issue 27669 has been marked as a duplicate of this issue. ***
Comment 6 Jan Jancura 2003-06-09 15:31:35 UTC
should be fixed in release 35
Comment 7 sva 2003-06-09 16:41:57 UTC
Still reproduced with Netbeans 3.5 RC3.

after ~20 restart of debugger I have following output 
of "top" :

  PID USERNAME THR PRI NICE  SIZE   RES STATE   TIME    
CPU COMMAND
 5698 sva       30  59    0 1293M  609M sleep   4:30 
17.44% java
Comment 8 sva 2003-06-09 16:52:10 UTC
Also, after ~20 restart debugger can't start and following 
exception is occured:

java.io.IOException: Not enough space
	at java.lang.UNIXProcess.forkAndExec(Native Method)
	at java.lang.UNIXProcess.<init>
(UNIXProcess.java:54)
	at java.lang.Runtime.execInternal(Native Method)
	at java.lang.Runtime.exec(Runtime.java:550)
	at java.lang.Runtime.exec(Runtime.java:475)
	at java.lang.Runtime.exec(Runtime.java:441)
	at org.openide.execution.NbProcessDescriptor.exec
(NbProcessDescriptor.java:225)
	at org.openide.execution.NbProcessDescriptor.exec
(NbProcessDescriptor.java:128)
	at org.openide.execution.NbProcessDescriptor.exec
(NbProcessDescriptor.java:270)
	at org.openide.execution.NbProcessDescriptor.exec
(NbProcessDescriptor.java:281)
	at 
org.netbeans.modules.tomcat.tomcat40.Tomcat40Installation.c
reateNewTomcatProcess(Tomcat40Installation.java:944)
	at 
org.netbeans.modules.tomcat.tomcat40.Tomcat40Installation.s
tartServerInExecMode(Tomcat40Installation.java:905)
	at 
org.netbeans.modules.tomcat.tomcat40.Tomcat40Installation.s
ynchronizeStart(Tomcat40Installation.java:1053)
	at 
org.netbeans.modules.tomcat.tomcat40.Tomcat40Installation.i
ncrementalDeploy(Tomcat40Installation.java:689)
	at 
org.netbeans.modules.tomcat.tomcat40.Tomcat40Instance.deplo
y(Tomcat40Instance.java:273)
	at 
org.netbeans.modules.j2ee.impl.DefaultServerInstanceManager
.doDeploy(DefaultServerInstanceManager.java:120)
	at 
org.netbeans.modules.j2ee.impl.DefaultServerInstanceManager
.startExecution(DefaultServerInstanceManager.java:140)
	at 
org.netbeans.modules.j2ee.impl.DefaultServerInstanceManager
.serverInstanceStartExecution
(DefaultServerInstanceManager.java:85)
	at 
org.netbeans.modules.j2ee.impl.DefaultExecPerformer.startEx
ecution(DefaultExecPerformer.java:67)
	at 
org.netbeans.modules.web.execution.WebDefaultExecPerformer.
startExecution(WebDefaultExecPerformer.java:238)
	at 
org.netbeans.modules.j2ee.impl.ServerExecutor.execute
(ServerExecutor.java:69)
	at org.netbeans.modules.j2ee.impl.ExecSupport.start
(ExecSupport.java:122)
	at 
org.netbeans.modules.j2ee.impl.ServerExecSupport.start
(ServerExecSupport.java:140)
	at org.openide.actions.ExecuteAction.execute
(ExecuteAction.java:140)
	at org.openide.actions.ExecuteAction.execute
(ExecuteAction.java:217)
	at org.openide.actions.ExecuteAction.performAction
(ExecuteAction.java:102)
	at 
org.openide.util.actions.NodeAction$DelegateAction.actionPe
rformed(NodeAction.java:431)
	at org.netbeans.core.ModuleActions$1.run
(ModuleActions.java:97)
	at org.openide.util.Task.run(Task.java:136)
	at org.openide.util.RequestProcessor$Task.run
(RequestProcessor.java:328)
[catch] at org.openide.util.RequestProcessor$Processor.run
(RequestProcessor.java:670)


Comment 9 Jan Jancura 2003-06-10 09:04:10 UTC
looks like problem of JSP debugger!
Comment 10 Martin Grebac 2003-06-10 09:13:26 UTC
Gonna try with external tomcat and pure java debugging for clarification.
Comment 11 Martin Grebac 2003-06-10 10:35:36 UTC
Well, I can't reproduce on my WinXP with JDK1.4.1, and on Solaris 8
with JDK 1.4.0_02 and build Netbeans RC3.

This is memory info from what I did on Solaris:

Start IDE:

SIZE   RES
67     73

20x plain debugger Attach to remotely running Tomcat server:

SIZE   RES
147    67

10x Restart internal Tomcat server from server registry:

SIZE   RES
173    132

20x Run jsp in debugger, stop on breakpoint, press F8 4x, debugger finish

SIZE   RES
214    172

Which version of Solaris or JDK do you use? Can you reproduce on other
OS with different JDK?
Comment 12 sva 2003-06-10 15:20:09 UTC
I'm using Solaris 9 & jdk 1.4.0_03 & Netbeans 3.5 RC3

Here is my output:

2nd start

  PID USERNAME THR PRI NICE  SIZE   RES STATE   TIME    
CPU COMMAND
 7290 sva       37  59    0  361M  316M run     1:43 
35.36% java

3rd restart 

  PID USERNAME THR PRI NICE  SIZE   RES STATE   TIME    
CPU COMMAND
 7325 sva       11  59    0   55M   25M run     0:05 
22.26% java
 7290 sva       34  59    0  472M  426M run     1:59 
17.58% java

4th restart

  PID USERNAME THR PRI NICE  SIZE   RES STATE   TIME    
CPU COMMAND
 7290 sva       37  59    0  622M  543M run     2:24 
36.48% java

5th  restart

  PID USERNAME THR PRI NICE  SIZE   RES STATE   TIME    
CPU COMMAND
 7348 sva       20  30    0   65M   35M run     0:14 
45.26% java
 7290 sva       34  59    0  754M  563M sleep   2:47 
14.19% java

6 restart

  PID USERNAME THR PRI NICE  SIZE   RES STATE   TIME    
CPU COMMAND
 7290 sva       29  59    0  945M  605M run     3:19 
15.73% java


Then exception occured:

java.io.IOException: Not enough space
	at java.lang.UNIXProcess.forkAndExec(Native Method)
	at java.lang.UNIXProcess.<init>
(UNIXProcess.java:54)
	at java.lang.Runtime.execInternal(Native Method)
	at java.lang.Runtime.exec(Runtime.java:550)
	at java.lang.Runtime.exec(Runtime.java:475)
	at java.lang.Runtime.exec(Runtime.java:441)
	at org.openide.execution.NbProcessDescriptor.exec
(NbProcessDescriptor.java:225)
	at org.openide.execution.NbProcessDescriptor.exec
(NbProcessDescriptor.java:128)
	at org.openide.execution.NbProcessDescriptor.exec
(NbProcessDescriptor.java:270)
	at org.openide.execution.NbProcessDescriptor.exec
(NbProcessDescriptor.java:281)
	at 
org.netbeans.modules.tomcat.tomcat40.Tomcat40Installation.e
xecuteStoppingTomcatProcess(Tomcat40Installation.java:1041)
	at 
org.netbeans.modules.tomcat.tomcat40.Tomcat40Installation.s
topExecution(Tomcat40Installation.java:1079)
	at 
org.netbeans.modules.tomcat.tomcat40.Tomcat40Installation.s
tartServerInDebugMode(Tomcat40Installation.java:911)
	at 
org.netbeans.modules.tomcat.tomcat40.Tomcat40Installation.s
ynchronizeStart(Tomcat40Installation.java:1051)
	at 
org.netbeans.modules.tomcat.tomcat40.Tomcat40Installation.i
ncrementalDeploy(Tomcat40Installation.java:689)
	at 
org.netbeans.modules.tomcat.tomcat40.Tomcat40Instance.deplo
y(Tomcat40Instance.java:273)
	at 
org.netbeans.modules.j2ee.impl.DefaultServerInstanceManager
.doDeploy(DefaultServerInstanceManager.java:120)
	at 
org.netbeans.modules.j2ee.impl.DefaultServerInstanceManager
.startDebugger(DefaultServerInstanceManager.java:188)
	at 
org.netbeans.modules.j2ee.impl.DefaultServerInstanceManager
.serverInstanceStartDebugging
(DefaultServerInstanceManager.java:99)
	at 
org.netbeans.modules.j2ee.impl.DefaultExecPerformer.startDe
bugging(DefaultExecPerformer.java:93)
	at 
org.netbeans.modules.web.execution.WebDefaultExecPerformer.
startDebugging(WebDefaultExecPerformer.java:388)
	at 
org.netbeans.modules.j2ee.impl.ServerDebuggerType.startDebu
gger(ServerDebuggerType.java:68)
	at org.netbeans.modules.j2ee.impl.ExecSupport.debug
(ExecSupport.java:146)
	at 
org.netbeans.modules.j2ee.impl.ServerExecSupport.debug
(ServerExecSupport.java:154)
	at 
org.netbeans.modules.web.core.jsploader.JspServletExecSuppo
rt.debug(JspServletExecSupport.java:63)
	at 
org.netbeans.modules.debugger.support.actions.RunToCursorAc
tion.runToCursor(RunToCursorAction.java:201)
	at 
org.netbeans.modules.debugger.support.actions.RunToCursorAc
tion.performAction(RunToCursorAction.java:109)
	at 
org.openide.util.actions.NodeAction$DelegateAction.actionPe
rformed(NodeAction.java:431)
	at org.netbeans.core.ModuleActions$1.run
(ModuleActions.java:97)
	at org.openide.util.Task.run(Task.java:136)
	at org.openide.util.RequestProcessor$Task.run
(RequestProcessor.java:328)
[catch] at org.openide.util.RequestProcessor$Processor.run
(RequestProcessor.java:670)


I've try to use jdk1.4.2 and bug do not reproduced with 
this version.
Comment 13 Martin Grebac 2003-09-29 09:58:26 UTC
From my tests and from Vladimir's latest description -> problem of JDK
1.4.0_x - not a problem with newer JDKs.
Comment 14 Jiri Skrivanek 2005-12-14 14:44:13 UTC
Verified assuming reporter agrees with resolution.