View Issue Details

IDProjectCategoryView StatusLast Update
0001589XdebugProfilingpublic2019-08-26 12:37
Reporterasoki Assigned Toderick  
PrioritynormalSeverityminorReproducibilityalways
Status closedResolutionfixed 
Product Version2.7.0beta1 
Target Version2.8.0devFixed in Version2.8.0beta2 
Summary0001589: function names used in auto_prepend_file missing from main cachegrind file
Description

When profiling scripts over http/https in environments where auto_prepend_file or auto_append_file is configured, xdebug creates separate files at least for the prepend, main and append parts.

These files are not complete because the functions names of functions appeared eg. first in a prepended script missing from all subsequent cachegrind files of the the same run.
This occurs always when xdebug creates multiple files (maybe for cycles, error handlers, etc.) for the same script run.

Steps To Reproduce

Extract the testcase and profile xdtest/index.php over http/https
or see the included sample files in the "output" folder
In the folder output/append is a sample file with the config option xdebug.profiler_append=1

Additional Information

In the testcase I used strlen and substr in the prepend.php, now, the name of these functions is missing from the profiling output of index.php and append.php
All the function aliases seems to be the shared between the files, so an append or concatenating should be possible.

I think when xdebug creates separate files, all of these files should be readable standalone without the need for appending other files.
or is there already a config option I missed to append the files only of one run into the same file without the "==== NEW PROFILING FILE.." marker?

TagsNo tags attached.
Attached Files
xdebug-testcase.tar.gz (1,538 bytes)
Operating Systemtested on mac and linux
PHP Version7.1.15-7.1.19

Relationships

has duplicate 0001655 resolvedderick 2 profile/cachegrind files created when auto_prepend_file in use 

Activities

derick

2018-11-26 17:08

administrator   ~0004727

I think I know the reason for this. It's not that they're not present, but it's because they are still cached with a number.

derick

2018-12-06 10:43

administrator   ~0004748

I have a fix, but I'm sorting out some other things before I can merge this.

Issue History

Date Modified Username Field Change
2018-11-26 16:59 asoki New Issue
2018-11-26 16:59 asoki File Added: xdebug-testcase.tar.gz
2018-11-26 17:08 derick Note Added: 0004727
2018-11-26 17:09 derick Assigned To => derick
2018-11-26 17:09 derick Status new => acknowledged
2018-12-06 10:43 derick Note Added: 0004748
2019-07-29 09:59 derick Target Version => 2.8.0dev
2019-07-29 13:04 derick Status acknowledged => closed
2019-07-29 13:04 derick Resolution open => fixed
2019-07-29 13:04 derick Fixed in Version => 2.8.0dev
2019-07-29 13:06 derick Relationship added has duplicate 0001655
2019-08-26 12:37 derick Fixed in Version 2.8.0dev => 2.8.0beta2