Search code examples
eclipseperformancexdebugeclipse-pdt

Eclipse PDT xdebug sometimes slow and path mapping


I experience slow (remote) debugging with Eclipse sometimes and can't get to the bottom of what the reason may be. I also have an issue with path mapping, which I think may be related.

I debug a variety of projects, all on same-machine-hosted local domain names. For example

  • project1.local
  • project2.example.com

These domain names are defined in /etc/hosts

I also have a current project1 that actually calls project2 through a curl call.

I initiate all debugging sessions through chrome or firefox browser by appending ?XDEBUG_SESSION_START=1 and the curl call uses the same method.

Sometimes/ Regularly, I experience that nothing happens for about 2 minutes until the debugging session starts. Until then, the browser just seems to wait for something. After a breakpoint is reached, I can debug step by step with normal speed. On the next request I have the same wait time.

Here is my experience in regards to things that I have tried:

  • shutting down and restarting eclipse: rarely helps
  • trying the same url to debug in Komodo: always works (don't get me wrong I like Eclipse better) --> shows its not an xdebug problem
  • restarting web server: rarely helps
  • waiting 30-60 minutes: nearly always helps
  • clearing all cookies of debugged domain: helps in maybe 30% of cases, same with switching browser

The path mapping problem I have is in that sometimes a different file edit view is opened when a breakpoint is reached, even if the file is already open. One file has a workspace specific path, the other one an absolute path.

Can anybody help me with either of:

  • resolving the path confusion (hoping this is the root cause)
  • using other tools to figure out what happens during the 2 minutes
  • recommending other paths of action?

Solution

  • Ok, the solution appears to be:

    • use the same domain name for the curl initiated XDEBUG session
    • use path mapping in eclipse, this removes the confusion around the double opening of files