[ phpeclipse-Bugs-1437599 ] High CPU usage when using debugger

"SourceForge.net" <[email protected]>
Newsgroups gmane.comp.ide.eclipse.phpeclipse.devel
Message-ID <[email protected]>
Bugs item #1437599, was opened at 2006-02-23 19:26
Message generated for change (Comment added) made by robekras
You can respond by visiting: 
https://sourceforge.net/tracker/?func=detail&atid=484801&aid=1437599&group_id=57621

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: Debugger
Group: None
>Status: Closed
>Resolution: Fixed
Priority: 5
Submitted By: Dmitry Dulepov (liels_bugs)
Assigned to: Robert Kraske (robekras)
Summary: High CPU usage when using debugger

Initial Comment:
If debug session is running and there were breaks on
breakpoints, debugger consumes significant cpu power
even when browser is idle (finished page loading). It
takes around 87% of CPU when computer does nothing.
Computer runs significally slower than usual.

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

>Comment By: Robert Kraske (robekras)
Date: 2006-08-29 13:30

Message:
Logged In: YES 
user_id=356703

Regarding dbg, the bug is fixed in dbg version 2.15.1.




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

Comment By: Robert Kraske (robekras)
Date: 2006-06-16 08:33

Message:
Logged In: YES 
user_id=356703

Regarding the high cpu load when script has finished:

The problem is in dbg.
When a script has finished there should be send a DBGC_END
event from dbg to PHPeclipse. But this event is never
send by dbg because the socket is closed before.

In addition, PHPeclipse misses a handling of this event.
I added the required modification to the CVS.

I also informed Dimitri about the bug, and it seems that he
aggrees.

I made a modification to dbg and tried it, and it works as
expected.

Robert

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

Comment By: tnickl (tnickl)
Date: 2006-04-19 15:07

Message:
Logged In: YES 
user_id=1505499

Have this same problem. 

I call my phpeclipse plugin running on 192.168.1.2:1001
using:
http://test.lan.de/[email protected]:10001

test.lan.de is a linux-Machine using php4.3.11.

CPU-Usage goes to 100% when debug.php has finished running
for the first time while the debugger session on 10001 is
still active. It will leave the 100% if I
- Call the url http://test.. (see above) again
- or: Push the red "Terminate" - Square-Button in the Toolbar.

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

Comment By: Mauro Casciari (incastrix)
Date: 2006-03-25 16:58

Message:
Logged In: YES 
user_id=944994

I only notify it!
I know it isnt a solution.

I think the only solution is to debug debugger again :D
debugger threads and brekpoint first.

Mauro

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

Comment By: Rob (rbarreca)
Date: 2006-03-25 01:17

Message:
Logged In: YES 
user_id=1147469

It's not really an option to stop debugging when the CPU is
at 100%...because everytime I debug it does this.  So
whenever I'm using debugging, the computer is incredibly slow.

Anyone have any insight for me?

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

Comment By: Mauro Casciari (incastrix)
Date: 2006-03-15 20:40

Message:
Logged In: YES 
user_id=944994

Sometime simply stop debug session and delete all breakpoint
release cpu resource.

Mauro Casciari

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

Comment By: Rob (rbarreca)
Date: 2006-03-15 20:05

Message:
Logged In: YES 
user_id=1147469

I have the same thing happening when using DBG.  I'm on
Eclipse 3.1.2, PHPeclipse CVS20060223, Win XP, 1 GB RAM, 2.1
MHz machine.  A restart helps but the problem returns.

Starting options: (changed to try and help problem)
-vm C:\Program Files\Java\jre1.5.0_06\bin
-vmargs
-Xms64m
-Xmx384m

Have also got Subclipse and ESFTP running, but that's about it.

Got quite a few of these 3 errors in my .log.  Any ideas?

-----------------
Error #1
-----------------
!ENTRY org.eclipse.ui 4 4 2006-03-14 11:54:09.997
!MESSAGE Unhandled event loop exception

-----------------
Error #2
-----------------
!ENTRY org.eclipse.ui 4 0 2006-03-14 11:54:09.997
!MESSAGE Failed to execute runnable
(java.lang.NullPointerException)
!STACK 0
org.eclipse.swt.SWTException: Failed to execute runnable
(java.lang.NullPointerException)
	at org.eclipse.swt.SWT.error(SWT.java:2942)
	at org.eclipse.swt.SWT.error(SWT.java:2865)
	at
org.eclipse.swt.widgets.Synchronizer.runAsyncMessages(Synchronizer.java:126)
	at
org.eclipse.swt.widgets.Display.runAsyncMessages(Display.java:3102)
	at
org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:2761)
	at
org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.java:1699)
	at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:1663)
	at
org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:367)
	at
org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:143)
	at
org.eclipse.ui.internal.ide.IDEApplication.run(IDEApplication.java:103)
	at
org.eclipse.core.internal.runtime.PlatformActivator$1.run(PlatformActivator.java:226)
	at
org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:376)
	at
org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:163)
	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.core.launcher.Main.invokeFramework(Main.java:334)
	at org.eclipse.core.launcher.Main.basicRun(Main.java:278)
	at org.eclipse.core.launcher.Main.run(Main.java:973)
	at org.eclipse.core.launcher.Main.main(Main.java:948)
Caused by: java.lang.NullPointerException
	at
net.sourceforge.phpeclipse.ui.editor.ShowExternalPreviewAction.getLocalhostURL(ShowExternalPreviewAction.java:107)
	at
net.sourceforge.phpeclipse.ui.editor.BrowserUtil.getShowInContext(BrowserUtil.java:42)
	at
net.sourceforge.phpeclipse.ui.editor.BrowserUtil.showPreview(BrowserUtil.java:107)
	at
net.sourceforge.phpdt.internal.launching.DebuggerRunner$1.run(DebuggerRunner.java:67)
	at
org.eclipse.swt.widgets.RunnableLock.run(RunnableLock.java:35)
	at
org.eclipse.swt.widgets.Synchronizer.runAsyncMessages(Synchronizer.java:123)
	... 18 more

-----------------
Error #3
-----------------
!ENTRY net.sourceforge.phpeclipse.debug.core 4 4 2006-03-14
11:54:17.227
!MESSAGE PHPLaunchingPlugin.internalErrorOccurred
!STACK 0
java.net.SocketException: socket closed
	at java.net.PlainSocketImpl.socketAccept(Native Method)
	at java.net.PlainSocketImpl.accept(Unknown Source)
	at java.net.ServerSocket.implAccept(Unknown Source)
	at java.net.ServerSocket.accept(Unknown Source)
	at
net.sourceforge.phpdt.internal.debug.core.PHPDBGProxy$PHPLoop.run(PHPDBGProxy.java:571)


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

Comment By: Dmitry Dulepov (liels_bugs)
Date: 2006-02-28 13:25

Message:
Logged In: YES 
user_id=1321964

Typical for Java... It starts garbage-collect resources when
it cannot allocate more of them :) Ever wondered why Java
may not be used for nuclear facilities? It is not fault-safe.

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

Comment By: Mauro Casciari (incastrix)
Date: 2006-02-28 13:08

Message:
Logged In: YES 
user_id=944994

when I start eclipse it consume about 50 Mb, after an hour
of debug it consume about 90 Mb :o

Mauro Casciari

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

Comment By: Dmitry Dulepov (liels_bugs)
Date: 2006-02-28 07:50

Message:
Logged In: YES 
user_id=1321964

I do not think it is a problem with resources. If resorce is
not released, it is just memory. The problem is high cpu usage.

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

Comment By: Mauro Casciari (incastrix)
Date: 2006-02-27 18:31

Message:
Logged In: YES 
user_id=944994

surely this is a problem of phpeclise plugin, because i've
the same problem on windows box. this happen after the first
debug session. i'm not a java programmer but I've already
debugged the phpeclipse PHP DBG.
the first thing to do is to find the code that not release
resource.

Mauro Casciari


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

Comment By: Dmitry Dulepov (liels_bugs)
Date: 2006-02-27 07:54

Message:
Logged In: YES 
user_id=1321964

Environment
=================
Hardware:
M/b: EPoX 8RDA
CPU: AMD Athlon 1.2MHz
RAM: 512Mb
Looks pretty old but visually it runs faster than 3.2MHz
P-VI with Hyperthreading at my work.

Software:
SuSE Linux 10.0
Eclipse 3.1.2
phpEclipse, CVS version, begining of February
DBG 2.11.32 (compiled myself for PHP 4.4.1
Apache 2.2 + PHP 4.4.1 (XAMPP)
======================

I do not know how phpEclipse works with DBG, but it seems
there is a loop that polls DBG status and never idles. If
phpEclipse listens on a socket, consider using non-blocking
sockets (packages java.nio and java.nio.channels). This way
thread will sleep until it is called by the debugger.

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

Comment By: Mauro Casciari (incastrix)
Date: 2006-02-26 20:19

Message:
Logged In: YES 
user_id=944994

I've just talk about this problem with Robert Kraske a
couple month ago.

I had debugged the php debugger (php DBG) and it seems that
some threads never ended and also never release resource.

Can you post your environment?

Mauro Casciari

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

You can respond by visiting: 
https://sourceforge.net/tracker/?func=detail&atid=484801&aid=1437599&group_id=57621

-------------------------------------------------------------------------
Using Tomcat but need to do more? Need to support web services, security?
Get stuff done quickly with pre-integrated technology to make your job easier
Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.