View Issue Details

IDProjectCategoryView StatusLast Update
0000899XdebugUncategorizedpublic2013-06-22 13:41
Reporterdwilks Assigned Toderick  
PrioritynormalSeveritymajorReproducibilityalways
Status resolvedResolutionunable to reproduce 
PlatformMacintoshOSOSXOS Version10.8.2
Product Version2.2.1 
Summary0000899: Hang after conditional breakpoint evaluation causes an exception
Description

If evaluation of a condition on a breakpoint in a for loop (seems to be important, can't repro it without) causes an exception to be thrown (in this case from a magic __get method) the script hangs while leaving either the for loop or the try/catch clause and the php process consumes 100% cpu.

I ran into this while trying to come up with a small reproducible case of the same exception escaping xdebug and actually being caught by the script's exception handler. Unfortunately I haven't been able to come up with that case but attached a screenshot of it occurring.

And why when debugging this script wouldn't Xdebug be logging to xdebug.remote_log?

Steps To Reproduce

Put the small script below in a file and debug with debugclient (or Eclipse, same behavior)
(cmd) breakpoint_set -i 1 -t line -f file://<filename> -n 17 -- JG0tPnYgPT0gNQ==
(cmd ) run -i 2

Result: Script outputs phpinfo (in the section below), the lines 1, 2, 3, 4, and 5 and then hangs with cpu at 100%.

<?php
try {

phpinfo();

class MM {
    private $v = 5;
    public function __get($name) {
        throw new Exception(&quot;Hah.&quot;);
    }
}

$m = new MM();
$t = array(1, 2, 3, 4, 5);
foreach ( $t as $i ) {
    // Put a conditional breakpoint on the next line using $m->v == 5
    echo &quot;$i\n&quot;;
}

} catch (Exception $e) {
echo "Got an exception: " . $e->getMessage() . "\n";
exit();
}

echo "all done\n";

Additional Information

phpinfo()
PHP Version => 5.3.17

System => Darwin dwilks-mac-l.intacct.com 12.2.0 Darwin Kernel Version 12.2.0: Sat Aug 25 00:48:52 PDT 2012; root:xnu-2050.18.24~1/RELEASE_X86_64 x86_64
Build Date => Sep 28 2012 16:17:46
Configure Command => './configure' '--prefix=/opt/local' '--mandir=/opt/local/share/man' '--infodir=/opt/local/share/info' '--program-suffix=53' '--includedir=/opt/local/include/php53' '--libdir=/opt/local/lib/php53' '--with-config-file-path=/opt/local/etc/php53' '--with-config-file-scan-dir=/opt/local/var/db/php53' '--disable-all' '--enable-bcmath' '--enable-ctype' '--enable-dom' '--enable-fileinfo' '--enable-filter' '--enable-hash' '--enable-json' '--enable-libxml' '--enable-pdo' '--enable-phar' '--enable-session' '--enable-simplexml' '--enable-tokenizer' '--enable-xml' '--enable-xmlreader' '--enable-xmlwriter' '--with-bz2=/opt/local' '--with-mhash=/opt/local' '--with-pcre-regex=/opt/local' '--with-libxml-dir=/opt/local' '--with-zlib=/opt/local' '--without-pear' '--disable-cgi' '--disable-fpm' '--enable-cli' '--with-libedit=/opt/local'
Server API => Command Line Interface
Virtual Directory Support => disabled
Configuration File (php.ini) Path => /opt/local/etc/php53
Loaded Configuration File => /opt/local/etc/php53/php.ini
Scan this dir for additional .ini files => /opt/local/var/db/php53
Additional .ini files parsed => /opt/local/var/db/php53/calendar.ini,
/opt/local/var/db/php53/curl.ini,
/opt/local/var/db/php53/gd.ini,
/opt/local/var/db/php53/iconv.ini,
/opt/local/var/db/php53/mbstring.ini,
/opt/local/var/db/php53/mcrypt.ini,
/opt/local/var/db/php53/memcache.ini,
/opt/local/var/db/php53/openssl.ini,
/opt/local/var/db/php53/oracle.ini,
/opt/local/var/db/php53/pear.ini,
/opt/local/var/db/php53/posix.ini,
/opt/local/var/db/php53/soap.ini,
/opt/local/var/db/php53/wddx.ini,
/opt/local/var/db/php53/xdebug.ini,
/opt/local/var/db/php53/xsl.ini,
/opt/local/var/db/php53/zip.ini

PHP API => 20090626
PHP Extension => 20090626
Zend Extension => 220090626
Zend Extension Build => API220090626,NTS
PHP Extension Build => API20090626,NTS
Debug Build => no
Thread Safety => disabled
Zend Memory Manager => enabled
Zend Multibyte Support => disabled
IPv6 Support => enabled
Registered PHP Streams => compress.zlib, compress.bzip2, https, ftps, php, file, glob, data, http, ftp, phar, zip
Registered Stream Socket Transports => tcp, udp, unix, udg, ssl, sslv3, sslv2, tls
Registered Stream Filters => zlib., bzip2., string.rot13, string.toupper, string.tolower, string.strip_tags, convert., consumed, dechunk, convert.iconv., mcrypt., mdecrypt.

This program makes use of the Zend Scripting Language Engine:
Zend Engine v2.3.0, Copyright (c) 1998-2012 Zend Technologies
with Xdebug v2.2.1, Copyright (c) 2002-2012, by Derick Rethans


Configuration

bcmath

BCMath support => enabled

Directive => Local Value => Master Value
bcmath.scale => 0 => 0

bz2

BZip2 Support => Enabled
Stream Wrapper support => compress.bzip2://
Stream Filter support => bzip2.decompress, bzip2.compress
BZip2 Version => 1.0.6, 6-Sept-2010

calendar

Calendar support => enabled

Core

PHP Version => 5.3.17

Directive => Local Value => Master Value
allow_call_time_pass_reference => On => On
allow_url_fopen => On => On
allow_url_include => On => On
always_populate_raw_post_data => Off => Off
arg_separator.input => & => &
arg_separator.output => & => &
asp_tags => Off => Off
auto_append_file => no value => no value
auto_globals_jit => On => On
auto_prepend_file => /opt/local/etc/php53/def.inc => /opt/local/etc/php53/def.inc
browscap => no value => no value
default_charset => no value => no value
default_mimetype => text/html => text/html
define_syslog_variables => Off => Off
disable_classes => no value => no value
disable_functions => no value => no value
display_errors => Off => Off
display_startup_errors => Off => Off
doc_root => no value => no value
docref_ext => no value => no value
docref_root => no value => no value
enable_dl => On => On
error_append_string => no value => no value
error_log => /tmp/error_php.log => /tmp/error_php.log
error_prepend_string => no value => no value
error_reporting => 22517 => 22517
exit_on_timeout => Off => Off
expose_php => Off => Off
extension_dir => /opt/local/lib/php53/extensions/no-debug-non-zts-20090626 => /opt/local/lib/php53/extensions/no-debug-non-zts-20090626
file_uploads => On => On
highlight.bg => <font style="color: #FFFFFF">#FFFFFF</font> => <font style="color: #FFFFFF">#FFFFFF</font>
highlight.comment => <font style="color: #FF8000">#FF8000</font> => <font style="color: #FF8000">#FF8000</font>
highlight.default => <font style="color: #0000BB">#0000BB</font> => <font style="color: #0000BB">#0000BB</font>
highlight.html => <font style="color: #000000">#000000</font> => <font style="color: #000000">#000000</font>
highlight.keyword => <font style="color: #007700">#007700</font> => <font style="color: #007700">#007700</font>
highlight.string => <font style="color: #DD0000">#DD0000</font> => <font style="color: #DD0000">#DD0000</font>
html_errors => Off => Off
ignore_repeated_errors => Off => Off
ignore_repeated_source => Off => Off
ignore_user_abort => On => On
implicit_flush => On => On
include_path => ../../private/inc/:../../private/lib/pear:./ => .:/opt/local/lib/php53
log_errors => On => On
log_errors_max_len => 1024 => 1024
magic_quotes_gpc => Off => Off
magic_quotes_runtime => Off => Off
magic_quotes_sybase => Off => Off
mail.add_x_header => On => On
mail.force_extra_parameters => no value => no value
mail.log => no value => no value
max_execution_time => 0 => 0
max_file_uploads => 40 => 40
max_input_nesting_level => 64 => 64
max_input_time => -1 => -1
max_input_vars => 1000 => 1000
memory_limit => 1768M => 1768M
open_basedir => no value => no value
output_buffering => 0 => 0
output_handler => no value => no value
post_max_size => 400M => 400M
precision => 14 => 14
realpath_cache_size => 16K => 16K
realpath_cache_ttl => 120 => 120
register_argc_argv => On => On
register_globals => Off => Off
register_long_arrays => Off => Off
report_memleaks => On => On
report_zend_debug => Off => Off
request_order => GP => GP
safe_mode => Off => Off
safe_mode_exec_dir => no value => no value
safe_mode_gid => Off => Off
safe_mode_include_dir => no value => no value
sendmail_from => no value => no value
sendmail_path => /usr/sbin/sendmail -t -i => /usr/sbin/sendmail -t -i
serialize_precision => 100 => 100
short_open_tag => On => On
SMTP => localhost => localhost
smtp_port => 25 => 25
sql.safe_mode => Off => Off
track_errors => Off => Off
unserialize_callback_func => no value => no value
upload_max_filesize => 300M => 300M
upload_tmp_dir => /tmp/ => /tmp/
user_dir => no value => no value
user_ini.cache_ttl => 300 => 300
user_ini.filename => .user.ini => .user.ini
variables_order => GPCS => GPCS
xmlrpc_error_number => 0 => 0
xmlrpc_errors => Off => Off
y2k_compliance => On => On
zend.enable_gc => On => On

ctype

ctype functions => enabled

curl

cURL support => enabled
cURL Information => 7.28.0
Age => 3
Features
AsynchDNS => No
Debug => No
GSS-Negotiate => No
IDN => Yes
IPv6 => Yes
Largefile => Yes
NTLM => Yes
SPNEGO => No
SSL => Yes
SSPI => No
krb4 => No
libz => Yes
CharConv => No
Protocols => dict, file, ftp, ftps, gopher, http, https, imap, imaps, pop3, pop3s, rtsp, smtp, smtps, telnet, tftp
Host => x86_64-apple-darwin12.2.0
SSL Version => OpenSSL/1.0.1c
ZLib Version => 1.2.7

date

date/time support => enabled
"Olson" Timezone Database Version => 2012.3
Timezone Database => internal
Default timezone => America/Los_Angeles

Directive => Local Value => Master Value
date.default_latitude => 31.7667 => 31.7667
date.default_longitude => 35.2333 => 35.2333
date.sunrise_zenith => 90.583333 => 90.583333
date.sunset_zenith => 90.583333 => 90.583333
date.timezone => America/Los_Angeles => America/Los_Angeles

dom

DOM/XML => enabled
DOM/XML API Version => 20031129
libxml Version => 2.8.0
HTML Support => enabled
XPath Support => enabled
XPointer Support => enabled
Schema Support => enabled
RelaxNG Support => enabled

ereg

Regex Library => Bundled library enabled

fileinfo

fileinfo support => enabled
version => 1.0.5-dev

filter

Input Validation and Filtering => enabled
Revision => $Id: 2b8c730d7dfaa8485d07cd792f0c82852ffe4113 $

Directive => Local Value => Master Value
filter.default => unsafe_raw => unsafe_raw
filter.default_flags => no value => no value

gd

GD Support => enabled
GD Version => bundled (2.0.34 compatible)
FreeType Support => enabled
FreeType Linkage => with freetype
FreeType Version => 2.4.10
GIF Read Support => enabled
GIF Create Support => enabled
JPEG Support => enabled
libJPEG Version => 8
PNG Support => enabled
libPNG Version => 1.5.12
WBMP Support => enabled
XBM Support => enabled

Directive => Local Value => Master Value
gd.jpeg_ignore_warning => 0 => 0

hash

hash support => enabled
Hashing Engines => md2 md4 md5 sha1 sha224 sha256 sha384 sha512 ripemd128 ripemd160 ripemd256 ripemd320 whirlpool tiger128,3 tiger160,3 tiger192,3 tiger128,4 tiger160,4 tiger192,4 snefru snefru256 gost adler32 crc32 crc32b salsa10 salsa20 haval128,3 haval160,3 haval192,3 haval224,3 haval256,3 haval128,4 haval160,4 haval192,4 haval224,4 haval256,4 haval128,5 haval160,5 haval192,5 haval224,5 haval256,5

iconv

iconv support => enabled
iconv implementation => libiconv
iconv library version => 1.14

Directive => Local Value => Master Value
iconv.input_encoding => ISO-8859-1 => ISO-8859-1
iconv.internal_encoding => ISO-8859-1 => ISO-8859-1
iconv.output_encoding => ISO-8859-1 => ISO-8859-1

json

json support => enabled
json version => 1.2.1

libxml

libXML support => active
libXML Compiled Version => 2.8.0
libXML Loaded Version => 20800
libXML streams => enabled

mbstring

Multibyte Support => enabled
Multibyte string engine => libmbfl
HTTP input encoding translation => disabled

mbstring extension makes use of "streamable kanji code filter and converter", which is distributed under the GNU Lesser General Public License version 2.1.

Multibyte (japanese) regex support => enabled
Multibyte regex (oniguruma) backtrack check => On
Multibyte regex (oniguruma) version => 4.7.1

Directive => Local Value => Master Value
mbstring.detect_order => no value => no value
mbstring.encoding_translation => Off => Off
mbstring.func_overload => 0 => 0
mbstring.http_input => pass => pass
mbstring.http_output => pass => pass
mbstring.http_output_conv_mimetypes => ^(text/|application/xhtml+xml) => ^(text/|application/xhtml+xml)
mbstring.internal_encoding => no value => no value
mbstring.language => neutral => neutral
mbstring.strict_detection => Off => Off
mbstring.substitute_character => no value => no value

mcrypt

mcrypt support => enabled
mcrypt_filter support => enabled
Version => 2.5.8
Api No => 20021217
Supported ciphers => cast-128 gost rijndael-128 twofish arcfour cast-256 loki97 rijndael-192 saferplus wake blowfish-compat des rijndael-256 serpent xtea blowfish enigma rc2 tripledes
Supported modes => cbc cfb ctr ecb ncfb nofb ofb stream

Directive => Local Value => Master Value
mcrypt.algorithms_dir => no value => no value
mcrypt.modes_dir => no value => no value

memcache

memcache support => enabled
Active persistent connections => 0
Version => 2.2.7
Revision => $Revision: 327750 $

Directive => Local Value => Master Value
memcache.allow_failover => 1 => 1
memcache.chunk_size => 8192 => 8192
memcache.default_port => 8788 => 8788
memcache.default_timeout_ms => 1000 => 1000
memcache.hash_function => crc32 => crc32
memcache.hash_strategy => standard => standard
memcache.max_failover_attempts => 20 => 20

mhash

MHASH support => Enabled
MHASH API Version => Emulated Support

mysqlnd

mysqlnd => enabled
Version => mysqlnd 5.0.8-dev - 20102224 - $Id: 65fe78e70ce53d27a6cd578597722950e490b0d0 $
Compression => supported
SSL => supported
Command buffer size => 4096
Read buffer size => 32768
Read timeout => 31536000
Collecting statistics => Yes
Collecting memory statistics => Yes
Tracing => n/a

Client statistics =>
bytes_sent => 0
bytes_received => 0
packets_sent => 0
packets_received => 0
protocol_overhead_in => 0
protocol_overhead_out => 0
bytes_received_ok_packet => 0
bytes_received_eof_packet => 0
bytes_received_rset_header_packet => 0
bytes_received_rset_field_meta_packet => 0
bytes_received_rset_row_packet => 0
bytes_received_prepare_response_packet => 0
bytes_received_change_user_packet => 0
packets_sent_command => 0
packets_received_ok => 0
packets_received_eof => 0
packets_received_rset_header => 0
packets_received_rset_field_meta => 0
packets_received_rset_row => 0
packets_received_prepare_response => 0
packets_received_change_user => 0
result_set_queries => 0
non_result_set_queries => 0
no_index_used => 0
bad_index_used => 0
slow_queries => 0
buffered_sets => 0
unbuffered_sets => 0
ps_buffered_sets => 0
ps_unbuffered_sets => 0
flushed_normal_sets => 0
flushed_ps_sets => 0
ps_prepared_never_executed => 0
ps_prepared_once_executed => 0
rows_fetched_from_server_normal => 0
rows_fetched_from_server_ps => 0
rows_buffered_from_client_normal => 0
rows_buffered_from_client_ps => 0
rows_fetched_from_client_normal_buffered => 0
rows_fetched_from_client_normal_unbuffered => 0
rows_fetched_from_client_ps_buffered => 0
rows_fetched_from_client_ps_unbuffered => 0
rows_fetched_from_client_ps_cursor => 0
rows_affected_normal => 0
rows_affected_ps => 0
rows_skipped_normal => 0
rows_skipped_ps => 0
copy_on_write_saved => 0
copy_on_write_performed => 0
command_buffer_too_small => 0
connect_success => 0
connect_failure => 0
connection_reused => 0
reconnect => 0
pconnect_success => 0
active_connections => 0
active_persistent_connections => 0
explicit_close => 0
implicit_close => 0
disconnect_close => 0
in_middle_of_command_close => 0
explicit_free_result => 0
implicit_free_result => 0
explicit_stmt_close => 0
implicit_stmt_close => 0
mem_emalloc_count => 0
mem_emalloc_amount => 0
mem_ecalloc_count => 0
mem_ecalloc_amount => 0
mem_erealloc_count => 0
mem_erealloc_amount => 0
mem_efree_count => 0
mem_efree_amount => 0
mem_malloc_count => 0
mem_malloc_amount => 0
mem_calloc_count => 0
mem_calloc_amount => 0
mem_realloc_count => 0
mem_realloc_amount => 0
mem_free_count => 0
mem_free_amount => 0
mem_estrndup_count => 0
mem_strndup_count => 0
mem_estndup_count => 0
mem_strdup_count => 0
proto_text_fetched_null => 0
proto_text_fetched_bit => 0
proto_text_fetched_tinyint => 0
proto_text_fetched_short => 0
proto_text_fetched_int24 => 0
proto_text_fetched_int => 0
proto_text_fetched_bigint => 0
proto_text_fetched_decimal => 0
proto_text_fetched_float => 0
proto_text_fetched_double => 0
proto_text_fetched_date => 0
proto_text_fetched_year => 0
proto_text_fetched_time => 0
proto_text_fetched_datetime => 0
proto_text_fetched_timestamp => 0
proto_text_fetched_string => 0
proto_text_fetched_blob => 0
proto_text_fetched_enum => 0
proto_text_fetched_set => 0
proto_text_fetched_geometry => 0
proto_text_fetched_other => 0
proto_binary_fetched_null => 0
proto_binary_fetched_bit => 0
proto_binary_fetched_tinyint => 0
proto_binary_fetched_short => 0
proto_binary_fetched_int24 => 0
proto_binary_fetched_int => 0
proto_binary_fetched_bigint => 0
proto_binary_fetched_decimal => 0
proto_binary_fetched_float => 0
proto_binary_fetched_double => 0
proto_binary_fetched_date => 0
proto_binary_fetched_year => 0
proto_binary_fetched_time => 0
proto_binary_fetched_datetime => 0
proto_binary_fetched_timestamp => 0
proto_binary_fetched_string => 0
proto_binary_fetched_blob => 0
proto_binary_fetched_enum => 0
proto_binary_fetched_set => 0
proto_binary_fetched_geometry => 0
proto_binary_fetched_other => 0
init_command_executed_count => 0
init_command_failed_count => 0
com_quit => 0
com_init_db => 0
com_query => 0
com_field_list => 0
com_create_db => 0
com_drop_db => 0
com_refresh => 0
com_shutdown => 0
com_statistics => 0
com_process_info => 0
com_connect => 0
com_process_kill => 0
com_debug => 0
com_ping => 0
com_time => 0
com_delayed_insert => 0
com_change_user => 0
com_binlog_dump => 0
com_table_dump => 0
com_connect_out => 0
com_register_slave => 0
com_stmt_prepare => 0
com_stmt_execute => 0
com_stmt_send_long_data => 0
com_stmt_close => 0
com_stmt_reset => 0
com_stmt_set_option => 0
com_stmt_fetch => 0
com_deamon => 0
bytes_received_real_data_normal => 0
bytes_received_real_data_ps => 0

oci8

OCI8 Support => enabled
Version => 1.4.7
Revision => $Id: bf2eaf558b050b6d2e6d098bed6345af7e842ea4 $
Active Persistent Connections => 0
Active Connections => 0
Oracle Run-time Client Library Version => 10.2.0.4.0
Oracle Instant Client Version => 10.2
Temporary Lob support => enabled
Collections support => enabled

Directive => Local Value => Master Value
oci8.connection_class => no value => no value
oci8.default_prefetch => 100 => 100
oci8.events => Off => Off
oci8.max_persistent => -1 => -1
oci8.old_oci_close_semantics => Off => Off
oci8.persistent_timeout => 300 => 300
oci8.ping_interval => 30 => 30
oci8.privileged_connect => Off => Off
oci8.statement_cache_size => 20 => 20

openssl

OpenSSL support => enabled
OpenSSL Library Version => OpenSSL 1.0.1c 10 May 2012
OpenSSL Header Version => OpenSSL 1.0.1c 10 May 2012

pcre

PCRE (Perl Compatible Regular Expressions) Support => enabled
PCRE Library Version => 8.31 2012-07-06

Directive => Local Value => Master Value
pcre.backtrack_limit => 1000000 => 1000000
pcre.recursion_limit => 100000 => 100000

PDO

PDO support => enabled
PDO drivers => oci

PDO_OCI

PDO Driver for OCI 8 and later => enabled

Phar

Phar: PHP Archive support => enabled
Phar EXT version => 2.0.1
Phar API version => 1.1.1
SVN revision => $Id: 7b7d559811a842dc9e7d33777a8f993aa2b9933d $
Phar-based phar archives => enabled
Tar-based phar archives => enabled
ZIP-based phar archives => enabled
gzip compression => enabled
bzip2 compression => enabled
OpenSSL support => enabled

Phar based on pear/PHP_Archive, original concept by Davey Shafik.
Phar fully realized by Gregory Beaver and Marcus Boerger.
Portions of tar implementation Copyright (c) 2003-2009 Tim Kientzle.
Directive => Local Value => Master Value
phar.cache_list => no value => no value
phar.readonly => On => On
phar.require_hash => On => On

posix

Revision => $Id: c00b7465003bf16b27764ccaea3c159ca2e4419d $

Reflection

Reflection => enabled
Version => $Id: 593a0506b01337cfaf9f63ebc12cd60523fc2c41 $

session

Session Support => enabled
Registered save handlers => files user memcache
Registered serializer handlers => php php_binary wddx

Directive => Local Value => Master Value
session.auto_start => Off => Off
session.bug_compat_42 => On => On
session.bug_compat_warn => On => On
session.cache_expire => 180 => 180
session.cache_limiter => nocache => nocache
session.cookie_domain => no value => no value
session.cookie_httponly => Off => Off
session.cookie_lifetime => 0 => 0
session.cookie_path => / => /
session.cookie_secure => Off => Off
session.entropy_file => no value => no value
session.entropy_length => 0 => 0
session.gc_divisor => 1000 => 1000
session.gc_maxlifetime => 1440 => 1440
session.gc_probability => 1 => 1
session.hash_bits_per_character => 5 => 5
session.hash_function => 0 => 0
session.name => PHPSESSID => PHPSESSID
session.referer_check => no value => no value
session.save_handler => files => files
session.save_path => no value => no value
session.serialize_handler => php => php
session.use_cookies => On => On
session.use_only_cookies => On => On
session.use_trans_sid => 0 => 0

SimpleXML

Simplexml support => enabled
Revision => $Id: 236859686f5942354e440a6084ec07673710ab6c $
Schema support => enabled

soap

Soap Client => enabled
Soap Server => enabled

Directive => Local Value => Master Value
soap.wsdl_cache => 1 => 1
soap.wsdl_cache_dir => /tmp => /tmp
soap.wsdl_cache_enabled => 1 => 1
soap.wsdl_cache_limit => 5 => 5
soap.wsdl_cache_ttl => 86400 => 86400

SPL

SPL support => enabled
Interfaces => Countable, OuterIterator, RecursiveIterator, SeekableIterator, SplObserver, SplSubject
Classes => AppendIterator, ArrayIterator, ArrayObject, BadFunctionCallException, BadMethodCallException, CachingIterator, DirectoryIterator, DomainException, EmptyIterator, FilesystemIterator, FilterIterator, GlobIterator, InfiniteIterator, InvalidArgumentException, IteratorIterator, LengthException, LimitIterator, LogicException, MultipleIterator, NoRewindIterator, OutOfBoundsException, OutOfRangeException, OverflowException, ParentIterator, RangeException, RecursiveArrayIterator, RecursiveCachingIterator, RecursiveDirectoryIterator, RecursiveFilterIterator, RecursiveIteratorIterator, RecursiveRegexIterator, RecursiveTreeIterator, RegexIterator, RuntimeException, SplDoublyLinkedList, SplFileInfo, SplFileObject, SplFixedArray, SplHeap, SplMinHeap, SplMaxHeap, SplObjectStorage, SplPriorityQueue, SplQueue, SplStack, SplTempFileObject, UnderflowException, UnexpectedValueException

standard

Dynamic Library Support => enabled
Path to sendmail => /usr/sbin/sendmail -t -i

Directive => Local Value => Master Value
assert.active => 1 => 1
assert.bail => 0 => 0
assert.callback => no value => no value
assert.quiet_eval => 0 => 0
assert.warning => 1 => 1
auto_detect_line_endings => 0 => 0
default_socket_timeout => 60 => 60
from => no value => no value
safe_mode_allowed_envvars => PHP => PHP_
safe_mode_protected_env_vars => LD_LIBRARY_PATH => LD_LIBRARY_PATH
url_rewriter.tags => a=href,area=href,frame=src,input=src,form=fakeentry => a=href,area=href,frame=src,input=src,form=fakeentry
user_agent => no value => no value

tokenizer

Tokenizer Support => enabled

wddx

WDDX Support => enabled
WDDX Session Serializer => enabled

xdebug

xdebug support => enabled
Version => 2.2.1
IDE Key => session_name

Supported protocols => Revision
DBGp - Common DeBuGger Protocol => $Revision: 1.145 $

Directive => Local Value => Master Value
xdebug.auto_trace => Off => Off
xdebug.cli_color => 0 => 0
xdebug.collect_assignments => Off => Off
xdebug.collect_includes => On => On
xdebug.collect_params => 0 => 0
xdebug.collect_return => Off => Off
xdebug.collect_vars => Off => Off
xdebug.coverage_enable => On => On
xdebug.default_enable => On => On
xdebug.dump.COOKIE => no value => no value
xdebug.dump.ENV => no value => no value
xdebug.dump.FILES => no value => no value
xdebug.dump.GET => no value => no value
xdebug.dump.POST => no value => no value
xdebug.dump.REQUEST => no value => no value
xdebug.dump.SERVER => no value => no value
xdebug.dump.SESSION => no value => no value
xdebug.dump_globals => On => On
xdebug.dump_once => On => On
xdebug.dump_undefined => Off => Off
xdebug.extended_info => On => On
xdebug.file_link_format => no value => no value
xdebug.idekey => default => default
xdebug.max_nesting_level => 100 => 100
xdebug.overload_var_dump => On => On
xdebug.profiler_aggregate => Off => Off
xdebug.profiler_append => Off => Off
xdebug.profiler_enable => Off => Off
xdebug.profiler_enable_trigger => On => On
xdebug.profiler_output_dir => /tmp => /tmp
xdebug.profiler_output_name => cachegrind.out.%p => cachegrind.out.%p
xdebug.remote_autostart => Off => Off
xdebug.remote_connect_back => Off => Off
xdebug.remote_cookie_expire_time => 157680000 => 157680000
xdebug.remote_enable => On => On
xdebug.remote_handler => dbgp => dbgp
xdebug.remote_host => 127.0.0.1 => 127.0.0.1
xdebug.remote_log => /tmp/xdebug_log => /tmp/xdebug_log
xdebug.remote_mode => req => req
xdebug.remote_port => 9000 => 9000
xdebug.scream => Off => Off
xdebug.show_exception_trace => Off => Off
xdebug.show_local_vars => On => On
xdebug.show_mem_delta => Off => Off
xdebug.trace_enable_trigger => Off => Off
xdebug.trace_format => 0 => 0
xdebug.trace_options => 0 => 0
xdebug.trace_output_dir => /var/tmp/ => /var/tmp/
xdebug.trace_output_name => trace.%c => trace.%c
xdebug.var_display_max_children => 128 => 128
xdebug.var_display_max_data => 512 => 512
xdebug.var_display_max_depth => 3 => 3

xml

XML Support => active
XML Namespace Support => active
libxml2 Version => 2.8.0

xmlreader

XMLReader => enabled

xmlwriter

XMLWriter => enabled

xsl

XSL => enabled
libxslt Version => 1.1.26
libxslt compiled against libxml Version => 2.8.0
EXSLT => enabled
libexslt Version => 1.1.26

zip

Zip => enabled
Extension Version => $Id: 75f98b591f6e5b656786b38e42f0ca759a8eca80 $
Zip version => 1.11.0
Libzip version => 0.10.1

zlib

ZLib Support => enabled
Stream Wrapper support => compress.zlib://
Stream Filter support => zlib.inflate, zlib.deflate
Compiled Version => 1.2.7
Linked Version => 1.2.7

Directive => Local Value => Master Value
zlib.output_compression => Off => Off
zlib.output_compression_level => -1 => -1
zlib.output_handler => no value => no value

Additional Modules

Module Name
readline

Environment

Variable => Value
TERM_PROGRAM => Apple_Terminal
TERM => xterm-256color
SHELL => /bin/bash
TMPDIR => /var/folders/c9/mm_mskcx0hzgqnl22fbjhx1c0000gn/T/
Apple_PubSub_Socket_Render => /tmp/launch-gxFZSQ/Render
IA_SERVER_NAME => dev01
CVSROOT => :pserver:dwilks@cvs.intacct.com:/cvsroot
TERM_PROGRAM_VERSION => 309
OLDPWD => /Users/dwilks
TERM_SESSION_ID => 715F958B-EBCB-40B4-ABCC-AD2F2AA5F974
IA_SYSLOG => 1
USER => dwilks
IA_CRYPT_KEY => 0kHxANWQ0qAw8CDV8A==
COMMAND_MODE => unix2003
IA_LOGGING => 1
SSH_AUTH_SOCK => /tmp/launch-oBlkvh/Listeners
__CF_USER_TEXT_ENCODING => 0x1F5:0:0
Apple_Ubiquity_Message => /tmp/launch-gYrT7B/Apple_Ubiquity_Message
XDEBUG_CONFIG => idekey=session_name
TNS_ADMIN => /usr/local/intacct/etc
PATH => /Users/dwilks/bin:/opt/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/opt/X11/bin:/Developer/usr/bin
PWD => /Users/dwilks/src/_tests
LANG => en_US.UTF-8
SSH_ASKPASS => /Users/dwilks/.ssh/.password.sh
SHLVL => 1
HOME => /Users/dwilks
DYLD_LIBRARYPATH => /opt/local/lib/oracle
LOGNAME => dwilks
DISPLAY => /tmp/launch-odKDZY/org.macosforge.xquartz:0
=> /opt/local/bin/php
ORACLE_HOME => /opt/local/lib/oracle

PHP Variables

Variable => Value
_SERVER["TERM_PROGRAM"] => Apple_Terminal
_SERVER["TERM"] => xterm-256color
_SERVER["SHELL"] => /bin/bash
_SERVER["TMPDIR"] => /var/folders/c9/mm_mskcx0hzgqnl22fbjhx1c0000gn/T/
_SERVER["Apple_PubSub_Socket_Render"] => /tmp/launch-gxFZSQ/Render
_SERVER["IA_SERVER_NAME"] => dev01
_SERVER["CVSROOT"] => :pserver:dwilks@cvs.intacct.com:/cvsroot
_SERVER["TERM_PROGRAM_VERSION"] => 309
_SERVER["OLDPWD"] => /Users/dwilks
_SERVER["TERM_SESSION_ID"] => 715F958B-EBCB-40B4-ABCC-AD2F2AA5F974
_SERVER["IA_SYSLOG"] => 1
_SERVER["USER"] => dwilks
_SERVER["IA_CRYPT_KEY"] => 0kHxANWQ0qAw8CDV8A==
_SERVER["COMMAND_MODE"] => unix2003
_SERVER["IA_LOGGING"] => 1
_SERVER["SSH_AUTH_SOCK"] => /tmp/launch-oBlkvh/Listeners
_SERVER["__CF_USER_TEXT_ENCODING"] => 0x1F5:0:0
_SERVER["Apple_Ubiquity_Message"] => /tmp/launch-gYrT7B/Apple_Ubiquity_Message
_SERVER["XDEBUG_CONFIG"] => idekey=session_name
_SERVER["TNS_ADMIN"] => /usr/local/intacct/etc
_SERVER["PATH"] => /Users/dwilks/bin:/opt/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/opt/X11/bin:/Developer/usr/bin
_SERVER["PWD"] => /Users/dwilks/src/_tests
_SERVER["LANG"] => en_US.UTF-8
_SERVER["SSH_ASKPASS"] => /Users/dwilks/.ssh/.password.sh
_SERVER["SHLVL"] => 1
_SERVER["HOME"] => /Users/dwilks
_SERVER["DYLD_LIBRARY_PATH"] => /opt/local/lib/oracle
_SERVER["LOGNAME"] => dwilks
_SERVER["DISPLAY"] => /tmp/launch-odKDZY/org.macosforge.xquartz:0
SERVER[""] => /opt/local/bin/php
_SERVER["ORACLE_HOME"] => /opt/local/lib/oracle
_SERVER["PHP_SELF"] => xdebugmagic.php
_SERVER["SCRIPT_NAME"] => xdebugmagic.php
_SERVER["SCRIPT_FILENAME"] => xdebugmagic.php
_SERVER["PATH_TRANSLATED"] => xdebugmagic.php
_SERVER["DOCUMENT_ROOT"] =>
_SERVER["REQUEST_TIME"] => 1351890396
_SERVER["argv"] => Array
(
[0] => xdebugmagic.php
)

_SERVER["argc"] => 1

TagsNo tags attached.
Attached Files
Screenshot.png (182,754 bytes)   
Screenshot.png (182,754 bytes)   
Operating SystemOSX 10.8.2
PHP Version5.3.14

Activities

derick

2012-11-06 15:53

administrator   ~0002373

Hi!

It would be really helpful if you could make a remote debugging log to go with this example. Read about on how to do that here: http://xdebug.org/docs/all_settings#remote_log

cheers,
Derick

dwilks

2012-11-06 16:55

reporter   ~0002375

For some reason I haven't been able to get xdebug logging to work with CLI apps (I've verified it isn't a php.ini issue, and as you can see from the phpinfo output the remote logging line is set but xdebug refuses to write anything to the log), but here's a log of the same code when run through a phtml file via eclipse. Sorry about all the extra breakpoints from my current project mucking up the log, they're not necessary for the hang though. Also, just to eliminate another variable I repeated the test with the auto_prepend_file disabled, verified that the debugger starts on the first line of the test and it still fails.

Log opened at 2012-11-06 16:35:55
I: Connecting to configured address/port: 127.0.0.1:9000.
I: Connected to client. :-)
-> <init xmlns="urn:debugger_protocol_v1" xmlns:xdebug="http://xdebug.org/dbgp/xdebug&quot; fileuri="file:///opt/local/etc/php53/def.inc" language="PHP" protocol_version="1.0" appid="23047" idekey="ECLIPSE_DBGP"><engine version="2.2.1"><![CDATA[Xdebug]]></engine><author><![CDATA[Derick Rethans]]></author><url><![CDATA[http://xdebug.org]]>&lt;/url>&lt;copyright>&lt;![CDATA[Copyright (c) 2002-2012 by Derick Rethans]]></copyright></init>

<- feature_set -i 4072 -n show_hidden -v 1
-> <response xmlns="urn:debugger_protocol_v1" xmlns:xdebug="http://xdebug.org/dbgp/xdebug&quot; command="feature_set" transaction_id="4072" feature="show_hidden" success="1"></response>

<- feature_set -i 4073 -n max_depth -v 3
-> <response xmlns="urn:debugger_protocol_v1" xmlns:xdebug="http://xdebug.org/dbgp/xdebug&quot; command="feature_set" transaction_id="4073" feature="max_depth" success="1"></response>

<- feature_set -i 4074 -n max_children -v 100
-> <response xmlns="urn:debugger_protocol_v1" xmlns:xdebug="http://xdebug.org/dbgp/xdebug&quot; command="feature_set" transaction_id="4074" feature="max_children" success="1"></response>

<- feature_get -i 4075 -n encoding
-> <response xmlns="urn:debugger_protocol_v1" xmlns:xdebug="http://xdebug.org/dbgp/xdebug&quot; command="feature_get" transaction_id="4075" feature_name="encoding" supported="1"><![CDATA[iso-8859-1]]></response>

<- feature_get -i 4076 -n supports_async
-> <response xmlns="urn:debugger_protocol_v1" xmlns:xdebug="http://xdebug.org/dbgp/xdebug&quot; command="feature_get" transaction_id="4076" feature_name="supports_async" supported="1"><![CDATA[0]]></response>

<- stdout -i 4077 -c 0
-> <response xmlns="urn:debugger_protocol_v1" xmlns:xdebug="http://xdebug.org/dbgp/xdebug&quot; command="stdout" transaction_id="4077" success="1"></response>

<- stderr -i 4078 -c 1
-> <response xmlns="urn:debugger_protocol_v1" xmlns:xdebug="http://xdebug.org/dbgp/xdebug&quot; command="stderr" transaction_id="4078" success="0"></response>

<- breakpoint_set -i 4079 -t line -f file:///Volumes/Sandboxes/Users/dwilks/src/excel/app/source/platform/web/pt_relationshipCreate.phtml -n 197
-> <response xmlns="urn:debugger_protocol_v1" xmlns:xdebug="http://xdebug.org/dbgp/xdebug&quot; command="breakpoint_set" transaction_id="4079" id="230470039"></response>

<- breakpoint_set -i 4080 -t line -f file:///Volumes/Sandboxes/Users/dwilks/src/excel/app/source/platform/web/pt_relationshipCreate.phtml -n 17
-> <response xmlns="urn:debugger_protocol_v1" xmlns:xdebug="http://xdebug.org/dbgp/xdebug&quot; command="breakpoint_set" transaction_id="4080" id="230470040"></response>

<- breakpoint_set -i 4081 -t line -f file:///Volumes/Sandboxes/Users/dwilks/src/excel/app/source/import/import_csv_template.phtml -n 138
-> <response xmlns="urn:debugger_protocol_v1" xmlns:xdebug="http://xdebug.org/dbgp/xdebug&quot; command="breakpoint_set" transaction_id="4081" id="230470041"></response>

<- breakpoint_set -i 4082 -t line -f file:///Volumes/Sandboxes/Users/dwilks/src/excel/app/source/import/import_csv_template.phtml -n 109
-> <response xmlns="urn:debugger_protocol_v1" xmlns:xdebug="http://xdebug.org/dbgp/xdebug&quot; command="breakpoint_set" transaction_id="4082" id="230470042"></response>

<- breakpoint_set -i 4083 -t line -f file:///Volumes/Sandboxes/Users/dwilks/src/excel/app/source/company/backend_module.inc -n 1877
-> <response xmlns="urn:debugger_protocol_v1" xmlns:xdebug="http://xdebug.org/dbgp/xdebug&quot; command="breakpoint_set" transaction_id="4083" id="230470043"></response>

<- breakpoint_set -i 4084 -t line -f file:///Volumes/Sandboxes/Users/dwilks/src/excel/app/source/company/ModulesLister.cls -n 35
-> <response xmlns="urn:debugger_protocol_v1" xmlns:xdebug="http://xdebug.org/dbgp/xdebug&quot; command="breakpoint_set" transaction_id="4084" id="230470044"></response>

<- breakpoint_set -i 4085 -t line -f file:///Volumes/Sandboxes/Users/dwilks/src/excel/app/source/common/ProcessModuleMaps.cls -n 426
-> <response xmlns="urn:debugger_protocol_v1" xmlns:xdebug="http://xdebug.org/dbgp/xdebug&quot; command="breakpoint_set" transaction_id="4085" id="230470045"></response>

<- breakpoint_set -i 4086 -t line -f file:///Volumes/Sandboxes/Users/dwilks/src/_tests/xdebugmagic.php -n 17 -- JG0tPnYgPT0gNQ==
-> <response xmlns="urn:debugger_protocol_v1" xmlns:xdebug="http://xdebug.org/dbgp/xdebug&quot; command="breakpoint_set" transaction_id="4086" id="230470046"></response>

<- breakpoint_set -i 4087 -t line -f file:///Volumes/Sandboxes/Users/dwilks/src/excel/app/source/core/EntityManager.cls -n 272
-> <response xmlns="urn:debugger_protocol_v1" xmlns:xdebug="http://xdebug.org/dbgp/xdebug&quot; command="breakpoint_set" transaction_id="4087" id="230470047"></response>

<- breakpoint_set -i 4088 -t line -f file:///Volumes/Sandboxes/Users/dwilks/src/excel/app/source/core/EntityManager.cls -n 1510
-> <response xmlns="urn:debugger_protocol_v1" xmlns:xdebug="http://xdebug.org/dbgp/xdebug&quot; command="breakpoint_set" transaction_id="4088" id="230470048"></response>

<- breakpoint_set -i 4089 -t line -f file:///Volumes/Sandboxes/Users/dwilks/src/excel/app/source/import/import_csv_template.phtml -n 229
-> <response xmlns="urn:debugger_protocol_v1" xmlns:xdebug="http://xdebug.org/dbgp/xdebug&quot; command="breakpoint_set" transaction_id="4089" id="230470049"></response>

<- breakpoint_set -i 4090 -t line -f file:///Volumes/Sandboxes/Users/dwilks/src/_tests/xdebugmagic.phtml -n 17 -- JG0tPnYgPT0gNQ==
-> <response xmlns="urn:debugger_protocol_v1" xmlns:xdebug="http://xdebug.org/dbgp/xdebug&quot; command="breakpoint_set" transaction_id="4090" id="230470050"></response>

<- run -i 4091

(never returns)

Here's the httpd process consuming 100% cpu that I have to kill.
23047- httpd 100.2 03:38.43 2/1 0 15 406 76M 19M 142M 152M 833M 86858 86858 running 70 229607

derick

2012-12-24 12:55

administrator   ~0002403

Could I suggest that you run GDB on the 100% CPU httpd process? You do that by running (once it gets into the loop)

gdb -p <pid>

where <pid> is the first number in the PS output (23047 in your example)
Then on the GDB prompt, run:

bt full

dwilks

2013-01-03 01:53

reporter   ~0002410

Not sure if this is much help... It's the MacPorts version of Apache and PHP. No debug symbols. The only "odd" thing is that it's a full 32-bit stack.

GNU gdb 6.3.50-20050815 (Apple version gdb-1822) (Sun Aug 5 03:00:42 UTC 2012)
Copyright 2004 Free Software Foundation, Inc.
GDB is free software, covered by the GNU General Public License, and you are
welcome to change it and/or distribute copies of it under certain conditions.
Type "show copying" to see the conditions.
There is absolutely no warranty for GDB. Type "show warranty" for details.
This GDB was configured as "x86_64-apple-darwin".
/Volumes/Sandboxes/Users/dwilks/src/help/main/dynamichelp/Product tour/65322: No such file or directory
Attaching to process 65322.
Reading symbols for shared libraries . done
Reading symbols for shared libraries ....................................................................................................
warning: Could not find object file "/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_archivers_bzip2/bzip2/work/bzip2-1.0.6/blocksort.o" - no debug information available for "blocksort.c".

warning: Could not find object file "/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_archivers_bzip2/bzip2/work/bzip2-1.0.6/huffman.o" - no debug information available for "huffman.c".

warning: Could not find object file "/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_archivers_bzip2/bzip2/work/bzip2-1.0.6/crctable.o" - no debug information available for "crctable.c".

warning: Could not find object file "/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_archivers_bzip2/bzip2/work/bzip2-1.0.6/randtable.o" - no debug information available for "randtable.c".

warning: Could not find object file "/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_archivers_bzip2/bzip2/work/bzip2-1.0.6/compress.o" - no debug information available for "compress.c".

warning: Could not find object file "/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_archivers_bzip2/bzip2/work/bzip2-1.0.6/decompress.o" - no debug information available for "decompress.c".

warning: Could not find object file "/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_archivers_bzip2/bzip2/work/bzip2-1.0.6/bzlib.o" - no debug information available for "bzlib.c".

............................................................................. done
Reading symbols for shared libraries + done
0x008d3c83 in ZEND_FE_FETCH_SPEC_VAR_HANDLER ()
(gdb) bt full
#0 0x008d3c83 in ZEND_FE_FETCH_SPEC_VAR_HANDLER ()
No symbol table info available.
#1 0x008f0f8c in execute ()
No symbol table info available.
0000002 0x00e5a594 in xdebug_execute ()
No symbol table info available.
0000003 0x008898b7 in zend_execute_scripts ()
No symbol table info available.
0000004 0x008379b7 in php_execute_script ()
No symbol table info available.
0000005 0x00905fc1 in php_handler ()
No symbol table info available.
0000006 0x0001644c in ap_invoke_handler ()
No symbol table info available.
0000007 0x000389ef in ap_process_request ()
No symbol table info available.
0000008 0x00035be8 in ap_process_http_connection ()
No symbol table info available.
0000009 0x00023247 in ap_process_connection ()
No symbol table info available.
0000010 0x0003f49b in child_main ()
No symbol table info available.
0000011 0x0003ea9c in make_child ()
No symbol table info available.
0000012 0x0003e369 in ap_mpm_run ()
No symbol table info available.
0000013 0x0001c376 in main ()
No symbol table info available.

derick

2013-03-09 21:53

administrator   ~0002437

Indeed, it's virtually impossible to do anything about this without debug symbols... any way you can get those?

derick

2013-05-15 11:43

administrator   ~0002465

Could you please provide the backtrace with symbols, I'd like to fix this issue.

derick

2013-06-22 13:41

administrator   ~0002516

Unable to reproduce, and no feedback provided. Please reopen if this is still an issue for you.

Issue History

Date Modified Username Field Change
2012-11-02 21:29 dwilks New Issue
2012-11-02 21:29 dwilks File Added: Screenshot.png
2012-11-06 15:53 derick Note Added: 0002373
2012-11-06 15:53 derick Assigned To => derick
2012-11-06 15:53 derick Status new => feedback
2012-11-06 16:55 dwilks Note Added: 0002375
2012-11-06 16:55 dwilks Status feedback => assigned
2012-12-24 12:55 derick Note Added: 0002403
2013-01-03 01:53 dwilks Note Added: 0002410
2013-03-09 21:53 derick Note Added: 0002437
2013-03-09 21:53 derick Status assigned => feedback
2013-05-15 11:43 derick Note Added: 0002465
2013-06-22 13:41 derick Note Added: 0002516
2013-06-22 13:41 derick Status feedback => resolved
2013-06-22 13:41 derick Resolution open => unable to reproduce
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)
2020-03-12 16:35 derick Category Usage problems (Wrong Results) => Variable Display
2020-03-12 16:38 derick Category Variable Display => Uncategorized