php.net |  support |  documentation |  report a bug |  advanced search |  search howto |  statistics |  random bug |  login
Bug #42305 Segmentation fault after php script proccessing end
Submitted: 2007-08-15 08:47 UTC Modified: 2007-10-07 01:00 UTC
From: danil dot megrabjan at gmail dot com Assigned:
Status: No Feedback Package: PDO related
PHP Version: 5.2.4 OS: SLES10
Private report: No CVE-ID: None
Welcome back! If you're the original bug submitter, here's where you can edit the bug or add additional notes.
If you forgot your password, you can retrieve your password here.
Password:
Status:
Package:
Bug Type:
Summary:
From: danil dot megrabjan at gmail dot com
New email:
PHP Version: OS:

 

 [2007-08-15 08:47 UTC] danil dot megrabjan at gmail dot com
Description:
------------
After proccessing php-script i have my total result in browser, but in apache logs i see that "[Wed Aug 15 11:16:11 2007] [notice] child pid 8922 exit signal Segmentation fault (11)"
I use gdb so that i have any details about this problem.

I think, that main problem consist in php garbage collector whe it try  to free...

Reproduce code:
---------------
Very many code... i dont`n now how i may send this big code. Just as i don't know how i can this code made is shorten in 20 lines.

Actual result:
--------------
Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread -1213375712 (LWP 9388)]
0xb7cc7f49 in free () from /lib/libc.so.6
(gdb) bt
#0  0xb7cc7f49 in free () from /lib/libc.so.6
#1  0xb79302c1 in free_zend_constant (c=0x804a9bd7) at /usr/src/debug/php-5.2.3/Zend/zend_constants.c:35
#2  0xb7949ae5 in zend_hash_apply_deleter (ht=0x4ab08800, p=0x804a9ba0) at /usr/src/debug/php-5.2.3/Zend/zend_hash.c:805
#3  0xb7949bee in zend_hash_reverse_apply (ht=0x800b7068, apply_func=0xb792f240 <clean_non_persistent_constant>)
    at /usr/src/debug/php-5.2.3/Zend/zend_hash.c:954
#4  0xb7930138 in clean_non_persistent_constants () at /usr/src/debug/php-5.2.3/Zend/zend_constants.c:231
#5  0xb7931ab4 in shutdown_executor () at /usr/src/debug/php-5.2.3/Zend/zend_execute_API.c:303
#6  0xb793eecf in zend_deactivate () at /usr/src/debug/php-5.2.3/Zend/zend.c:941
#7  0xb78f579d in php_request_shutdown (dummy=0x0) at /usr/src/debug/php-5.2.3/main/main.c:1323
#8  0xb79c541c in php_handler (r=0x8048fd38) at /usr/src/debug/php-5.2.3/sapi/apache2handler/sapi_apache2.c:467
#9  0x8002f94d in ap_run_handler (r=0x8048fd38) at config.c:157
#10 0x80033227 in ap_invoke_handler (r=0x8048fd38) at config.c:372
#11 0x8003f084 in ap_internal_redirect (new_uri=0x8048fd18 "/infin.php?query=start/1/666666", r=0x80486f48)
    at http_request.c:477
#12 0xb756ec10 in ?? () from /usr/lib/apache2-prefork/mod_rewrite.so
#13 0x8048fd18 in ?? ()
#14 0x80486f48 in ?? ()
#15 0xb757367f in ?? () from /usr/lib/apache2-prefork/mod_rewrite.so
#16 0x8048fc50 in ?? ()
#17 0x00000000 in ?? ()

Patches

Pull Requests

History

AllCommentsChangesGit/SVN commitsRelated reports
 [2007-09-25 09:51 UTC] jani@php.net
One more thing to try:

http://snaps.php.net/php5.2-latest.tar.gz

I've seen same kind of backtrace and they were totally unrelated to any xml operations. Also I think there was such bug already fixed in CVS so please give the snapshot a try. If it does crash, remember to send the backtrace (not forgetting the --enable-debug in configure line!)
 [2007-09-27 09:53 UTC] jani@php.net
So all other crashes are gone, only this odbc thing crashes?
From what I can see, it actually segfaults outside PHP. Can you please add a backtrace without the full output? ie. just use 'bt'.
 [2007-09-27 10:37 UTC] danil dot megrabjan at gmail dot com
Yep, now i have only one crash situation. Maybe PDO_ODBC or unixODBC...

Short bt, for you:
#0  0xb785cbee in uodbc_update_stats (h=0x74656c, stats_type_mask=3, value=0x1) at __stats.c:379
#1  0xb7814c3f in __SQLAllocHandle (handle_type=3, input_handle=0x8335408, output_handle=0x847c608, requested_version=0)
    at SQLAllocHandle.c:1064
#2  0xb78159e4 in SQLAllocHandle (handle_type=21512, input_handle=0x8335408, output_handle=0x847c608)
    at SQLAllocHandle.c:1270
#3  0xb7a56487 in odbc_handle_preparer (dbh=0x825c6f4,
    sql=0x847c220 "SELECT TPRTREE.PT_ID, TPRTREE.PT_PARENTID, TPRTREE.PT_CODE, TPRTREE.PT_ORDER, TASKCODE=(CASE WHEN PT_LEVEL1=0 THEN PT_CODE ELSE CONVERT(int,PT_LEVEL1) END), TPRTREE.PT_VISIBLENAME, TPRTREE.PT_LEVEL1, "..., sql_len=453,
    stmt=0x847b3f8, driver_options=0x847afd0) at /home/bagroff/distfiles/php5.2-200709251230/ext/pdo_odbc/odbc_driver.c:172
#4  0xb7a4a27d in zim_PDO_prepare (ht=2, return_value=0x847b954, return_value_ptr=0x0, this_ptr=0x82e2bac,
    return_value_used=1) at /home/bagroff/distfiles/php5.2-200709251230/ext/pdo/pdo_dbh.c:580
#5  0xb7c5abdc in zend_do_fcall_common_helper_SPEC (execute_data=0xbfe41994)
    at /home/bagroff/distfiles/php5.2-200709251230/Zend/zend_vm_execute.h:200
#6  0xb7c5b829 in ZEND_DO_FCALL_BY_NAME_SPEC_HANDLER (execute_data=0xbfe41994)
    at /home/bagroff/distfiles/php5.2-200709251230/Zend/zend_vm_execute.h:322
#7  0xb7c5a73d in execute (op_array=0x842c3a0) at /home/bagroff/distfiles/php5.2-200709251230/Zend/zend_vm_execute.h:92
#8  0xb7c5ad56 in zend_do_fcall_common_helper_SPEC (execute_data=0xbfe41da4)
    at /home/bagroff/distfiles/php5.2-200709251230/Zend/zend_vm_execute.h:234
#9  0xb7c5b829 in ZEND_DO_FCALL_BY_NAME_SPEC_HANDLER (execute_data=0xbfe41da4)
    at /home/bagroff/distfiles/php5.2-200709251230/Zend/zend_vm_execute.h:322
#10 0xb7c5a73d in execute (op_array=0x8425e84) at /home/bagroff/distfiles/php5.2-200709251230/Zend/zend_vm_execute.h:92
#11 0xb7c5ad56 in zend_do_fcall_common_helper_SPEC (execute_data=0xbfe42494)
    at /home/bagroff/distfiles/php5.2-200709251230/Zend/zend_vm_execute.h:234
#12 0xb7c5b829 in ZEND_DO_FCALL_BY_NAME_SPEC_HANDLER (execute_data=0xbfe42494)
    at /home/bagroff/distfiles/php5.2-200709251230/Zend/zend_vm_execute.h:322
#13 0xb7c5a73d in execute (op_array=0x8425084) at /home/bagroff/distfiles/php5.2-200709251230/Zend/zend_vm_execute.h:92
#14 0xb7c5ad56 in zend_do_fcall_common_helper_SPEC (execute_data=0xbfe43464)
    at /home/bagroff/distfiles/php5.2-200709251230/Zend/zend_vm_execute.h:234
#15 0xb7c5b829 in ZEND_DO_FCALL_BY_NAME_SPEC_HANDLER (execute_data=0xbfe43464)
    at /home/bagroff/distfiles/php5.2-200709251230/Zend/zend_vm_execute.h:322
#16 0xb7c5a73d in execute (op_array=0x83a527c) at /home/bagroff/distfiles/php5.2-200709251230/Zend/zend_vm_execute.h:92
#17 0xb7c5ad56 in zend_do_fcall_common_helper_SPEC (execute_data=0xbfe43694)
    at /home/bagroff/distfiles/php5.2-200709251230/Zend/zend_vm_execute.h:234
#18 0xb7c5b829 in ZEND_DO_FCALL_BY_NAME_SPEC_HANDLER (execute_data=0xbfe43694)
    at /home/bagroff/distfiles/php5.2-200709251230/Zend/zend_vm_execute.h:322
#19 0xb7c5a73d in execute (op_array=0x83a1a10) at /home/bagroff/distfiles/php5.2-200709251230/Zend/zend_vm_execute.h:92
#20 0xb7c5ad56 in zend_do_fcall_common_helper_SPEC (execute_data=0xbfe438d4)
    at /home/bagroff/distfiles/php5.2-200709251230/Zend/zend_vm_execute.h:234
#21 0xb7c5b829 in ZEND_DO_FCALL_BY_NAME_SPEC_HANDLER (execute_data=0xbfe438d4)
    at /home/bagroff/distfiles/php5.2-200709251230/Zend/zend_vm_execute.h:322
#22 0xb7c5a73d in execute (op_array=0x82bcd74) at /home/bagroff/distfiles/php5.2-200709251230/Zend/zend_vm_execute.h:92
#23 0xb7c5ad56 in zend_do_fcall_common_helper_SPEC (execute_data=0xbfe43be4)
    at /home/bagroff/distfiles/php5.2-200709251230/Zend/zend_vm_execute.h:234
---Type <return> to continue, or q <return> to quit---
#24 0xb7c5b829 in ZEND_DO_FCALL_BY_NAME_SPEC_HANDLER (execute_data=0xbfe43be4)
    at /home/bagroff/distfiles/php5.2-200709251230/Zend/zend_vm_execute.h:322
#25 0xb7c5a73d in execute (op_array=0x83307d4) at /home/bagroff/distfiles/php5.2-200709251230/Zend/zend_vm_execute.h:92
#26 0xb7c5ad56 in zend_do_fcall_common_helper_SPEC (execute_data=0xbfe440b4)
    at /home/bagroff/distfiles/php5.2-200709251230/Zend/zend_vm_execute.h:234
#27 0xb7c5b829 in ZEND_DO_FCALL_BY_NAME_SPEC_HANDLER (execute_data=0xbfe440b4)
    at /home/bagroff/distfiles/php5.2-200709251230/Zend/zend_vm_execute.h:322
#28 0xb7c5a73d in execute (op_array=0x825c5ec) at /home/bagroff/distfiles/php5.2-200709251230/Zend/zend_vm_execute.h:92
#29 0xb7c359bf in zend_execute_scripts (type=8, retval=0x0, file_count=3)
    at /home/bagroff/distfiles/php5.2-200709251230/Zend/zend.c:1134
#30 0xb7be43da in php_execute_script (primary_file=0xbfe463f4)
    at /home/bagroff/distfiles/php5.2-200709251230/main/main.c:2000
#31 0xb7caf333 in php_handler (r=0x8297aa8)
    at /home/bagroff/distfiles/php5.2-200709251230/sapi/apache2handler/sapi_apache2.c:631
#32 0x08074639 in ap_run_handler (r=0x8297aa8) at config.c:157
#33 0x08077797 in ap_invoke_handler (r=0x8297aa8) at config.c:372
#34 0x0808dd4a in ap_internal_redirect (new_uri=0x829b668 "/infin.php?query=connect", r=0x8292820) at http_request.c:477
#35 0x080a4eb4 in handler_redirect (r=0x8292820) at mod_rewrite.c:4729
#36 0x08074639 in ap_run_handler (r=0x8292820) at config.c:157
#37 0x08077797 in ap_invoke_handler (r=0x8292820) at config.c:372
#38 0x0808dec8 in ap_process_request (r=0x8292820) at http_request.c:258
#39 0x0808b1bb in ap_process_http_connection (c=0x828c9a0) at http_core.c:184
#40 0x0807b559 in ap_run_process_connection (c=0x828c9a0) at connection.c:43
#41 0x080a9090 in child_main (child_num_arg=<value optimized out>) at prefork.c:640
#42 0x080a92f3 in make_child (s=0x80d7ce8, slot=0) at prefork.c:680
#43 0x080aa0cc in ap_mpm_run (_pconf=0x80d30a8, plog=0x81111a0, s=0x80d7ce8) at prefork.c:956
#44 0x080623d5 in main (argc=135073952, argv=0x828a7c8) at main.c:730

If this segfaults outside PHP i don`t know what i must doing with this trouble :(
 [2007-09-29 03:13 UTC] jani@php.net
First of all you need to come up with the shortest possible script that can be used to reproduce this issue.
 [2007-10-07 01:00 UTC] php-bugs at lists dot php dot net
No feedback was provided for this bug for over a week, so it is
being suspended automatically. If you are able to provide the
information that was originally requested, please do so and change
the status of the bug back to "Open".
 
PHP Copyright © 2001-2024 The PHP Group
All rights reserved.
Last updated: Thu Oct 31 23:01:28 2024 UTC