php.net |  support |  documentation |  report a bug |  advanced search |  search howto |  statistics |  random bug |  login
Bug #80287 Xdebug Simple DBGp client (0.4) Block itself after second request
Submitted: 2020-10-27 13:03 UTC Modified: 2020-10-27 13:06 UTC
From: ysl1989517 at gmail dot com Assigned: derick (profile)
Status: Not a bug Package: *General Issues
PHP Version: 7.4.11 OS: CentOS Linux 7
Private report: No CVE-ID: None
 [2020-10-27 13:03 UTC] ysl1989517 at gmail dot com
Description:
------------
xdebug configuration in php.ini
===============================
[xdbug]
zend_extension = /home/xiaoju/php7/lib/php/extensions/no-debug-non-zts-20190902/xdebug.so
xdebug.idekey=ysl
xdebug.remote_host=127.0.0.1
xdebug.remote_enable=on
xdebug.remote_port = 9001
xdebug.remote_handler = dbgp
xdebug.auto_trace = 1
xdebug.remote_log = /tmp/xdebug.log


run command in Terminal(T1):
>$./dbgpClient -p 9001 -f

the output as follow:
Xdebug Simple DBGp client (0.4)
Copyright 2019-2020 by Derick Rethans
In dumb client mode

Waiting for debug server to connect on port 9001.

then I use postman client to request the API, the T1 Ternimal output as follow:
Connect from 127.0.0.1:36082
DBGp/1.0: Xdebug 2.8.1 — For PHP 7.4.9
Debugging file:///home/xiaoju/webroot/gulfstream/application/pre-sale/v1/index.php (ID: 27632/ysl)
(cmd) 

and open another Ternimal(T2), check xdebug's log:
tail -f /tmp/xdebug.log, the output as follow:
[45220] Log opened at 2020-10-27 07:09:23
[45220] I: Connecting to configured address/port: 127.0.0.1:9000.
[45220] I: Connected to client. :-)
[45220] -> <init xmlns="urn:debugger_protocol_v1" xmlns:xdebug="https://xdebug.org/dbgp/xdebug" fileuri="file:///home/xiaoju/webroot/gulfstream/application/pre-sale/v1/index.php" language="PHP" xdebug:language_version="7.4.9" protocol_version="1.0" appid="45220" idekey="ysl"><engine version="2.8.1"><![CDATA[Xdebug]]></engine><author><![CDATA[Derick Rethans]]></author><url><![CDATA[https://xdebug.org]]></url><copyright><![CDATA[Copyright (c) 2002-2019 by Derick Rethans]]></copyright></init>

that means the debug session established, it works. but after a while (without stats) the T1 output:
Error while handling connection: EOF
Disconnect

then I request again in postman, T1 output as follow:
Connect from 127.0.0.1:50446
DBGp/1.0: Xdebug 2.8.1 — For PHP 7.4.9
Debugging file:///home/xiaoju/webroot/gulfstream/application/pre-sale/v1/index.php (ID: 2155/ysl)
1 | feature_get
1 | supports_async: supported > 0

(cmd)

that means the request is successful captured. but from now on ,T1 is blocked, not response to any keyboard input, even with CTR + C.

I have to open another Ternimal to kill the blocked DBGp Client and run it again.

 

Test script:
---------------
no test script

Expected result:
----------------
T1 not blocked 

Actual result:
--------------
blocked 

Patches

Add a Patch

Pull Requests

Add a Pull Request

History

AllCommentsChangesGit/SVN commitsRelated reports
 [2020-10-27 13:06 UTC] cmb@php.net
-Status: Open +Status: Not a bug -Assigned To: +Assigned To: derick
 [2020-10-27 13:06 UTC] cmb@php.net
Please report Xdebug related issues in its own bug tracker[1].

[1] <https://bugs.xdebug.org/>
 
PHP Copyright © 2001-2021 The PHP Group
All rights reserved.
Last updated: Sun Feb 28 11:01:24 2021 UTC