View Issue Details

IDProjectCategoryView StatusLast Update
0001274XdebugUncategorizedpublic2017-01-03 18:44
ReporterCoren Assigned Toderick  
PrioritynormalSeveritymajorReproducibilityrandom
Status resolvedResolutionunable to reproduce 
Platformxampp win32 vc14 php 7.0.2-1OSMicrosoft Windows ProfessionalOS Version7 x64_86
Product Version2.4.0rc4 
Summary0001274: xdebug-remote: enters tight loop trying to connect to debug client, exhausting Windows to the point of global WSAENOBUFS (10053)
Description

Quite frequently, the connection between the debug client and xdebug breaks (debug clients tried: eclipse (Mars SR1), netbeans (8.1), sublime3). (It might be a connection reset due to php timeout, though that is set quite high.)

Unfortunately very often, xdebug subsequently enters into a frenzy of trying to connect back to the client. In the xampp-control window, one can see the apache process counting rapidly through ports. Looking at ProcessHacker, it's at least 10 connection attempts (= ports) per second.
The churning is so consuming that xdebug manages to make the whole Windows network stack throw up because it runs out of ports (error WSAENOBUFS blocks any further attempt open any kind of connection until apache is stopped, resulting in major disturbance for everything network-related, including the local mysql<->apache connection).

The problem is worsened by the fact that even restarting Apache can keep xdebug churning through connection attempts if the browser tries to access the afflicted site, even if clearing all cookies before trying so.

  1. The error message in the log should include the concrete error returned by the stack:
    xdebug_create_socket should return the actual error code, xdebug_init_debugger log it (at least numerically)

  2. xdebug should honor return codes of failed connections:
    On errors which are indicating a persistent failure - like connection refused -, xdebug_do_jit should stop trying to connect back (for a configurable hold-off period).

  3. A way to reset xdebug would be very helpful. It seems to keep some (corrupted?) state information somewhere between apache restarts, any instruction how to clear that would make this a lot less painful.

TagsNo tags attached.
Operating SystemMicrosoft Window 7 x64_86
PHP Version7.0.0-7.0.4

Activities

Coren

2016-02-19 15:20

reporter   ~0003511

In addition, calling the complimentory ?XDEBUG_SESSION_STOP_NOEXEC to ask xdebug to stop leaves xdebug completely unimpressed.

derick

2016-12-04 15:17

administrator   ~0003900

Is this still causing issues for you with PHP 7.0.13 and Xdebug 2.5.0RC2 (due to be released in a few hours)?

derick

2017-01-03 18:44

administrator   ~0004119

I could not reproduce this, as there was no reproducible case, and no additional information was presented. I am therefore closing this report.

Issue History

Date Modified Username Field Change
2016-02-19 14:19 Coren New Issue
2016-02-19 15:20 Coren Note Added: 0003511
2016-07-31 12:36 derick Category Usage problems => Usage problems (Crashes)
2016-07-31 12:38 derick Category Usage problems (Crashes) => Usage problems (Wrong Results)
2016-12-04 15:17 derick Note Added: 0003900
2016-12-04 15:17 derick Assigned To => derick
2016-12-04 15:17 derick Status new => feedback
2017-01-03 18:44 derick Note Added: 0004119
2017-01-03 18:44 derick Status feedback => resolved
2017-01-03 18:44 derick Resolution open => unable to reproduce
2020-03-12 16:35 derick Category Usage problems (Wrong Results) => Variable Display
2020-03-12 16:38 derick Category Variable Display => Uncategorized