Edit report at http://bugs.php.net/bug.php?id=51946&edit=1

 ID:               51946
 Updated by:       johan...@php.net
 Reported by:      justin_burger at adp dot com
 Summary:          Segmentation Faults on postgres function use.
-Status:           Open
+Status:           Feedback
 Type:             Bug
 Package:          PostgreSQL related
 Operating System: CentOS release 5.4 (Final)
 PHP Version:      5.2.13

 New Comment:

Your stackttrace shows that pg_query() is being called. Sure
pg_connect() is enough to get a crash? - In the later case I would have
expected way more results.



While at it please also mention the version nuumber of pgsql you are
using. Thanks.


Previous Comments:
------------------------------------------------------------------------
[2010-05-28 19:35:19] justin_burger at adp dot com

Description:
------------
I'm able to reproduce this issue 100% of the time when using pg_connect
or pg_query. I've tested with all other extensions turned off and see
the same result. The only way I can prevent this segmentation fault is
to turn off Zend_MM (which is obviously not a solution).



Core was generated by `/opt/adp/httpd/bin/httpd -X'.

Program terminated with signal 11, Segmentation fault.

#0  0x00002ac7d6ee1c20 in zend_mm_search_large_block (heap=0x151bdd50,
size=24)

    at /usr/src/debug/php-5.2.13/Zend/zend_alloc.c:1753

1753                    if (ZEND_MM_FREE_BLOCK_SIZE(p) <
ZEND_MM_FREE_BLOCK_SIZE                                                 
                           (best_fit)) {

(gdb) bt

#0  0x00002ac7d6ee1c20 in zend_mm_search_large_block (heap=0x151bdd50,
size=24)

    at /usr/src/debug/php-5.2.13/Zend/zend_alloc.c:1753

#1  _zend_mm_alloc_int (heap=0x151bdd50, size=24)

    at /usr/src/debug/php-5.2.13/Zend/zend_alloc.c:1812

#2  0x00002ac7dcdd8e80 in zif_pg_query (ht=<value optimized out>,

    return_value=0x15671350, return_value_ptr=<value optimized out>,

    this_ptr=<value optimized out>, return_value_used=<value optimized
out>)

    at /usr/src/debug/php-5.2.13/ext/pgsql/pgsql.c:1184

#3  0x00002ac7d6f1d582 in zend_do_fcall_common_helper_SPEC (

    execute_data=0x7fff68c97af0)

    at /usr/src/debug/php-5.2.13/Zend/zend_vm_execute.h:200

#4  0x00002ac7d6f1c73c in execute (op_array=0x155df890)

    at /usr/src/debug/php-5.2.13/Zend/zend_vm_execute.h:92

#5  0x00002ac7d6ef1299 in zend_call_function (fci=0x7fff68c97cd0,

    fci_cache=<value optimized out>)

    at /usr/src/debug/php-5.2.13/Zend/zend_execute_API.c:1039

#6  0x00002ac7d6ef2386 in call_user_function_ex (

    function_table=<value optimized out>, object_pp=<value optimized
out>,

    function_name=0x7274732061206e69, retval_ptr_ptr=0x1541dda0,

    param_count=1, params=0x0, no_separation=1, symbol_table=0x0)

    at /usr/src/debug/php-5.2.13/Zend/zend_execute_API.c:640

#7  0x00002ac7d6ef2406 in call_user_function
(function_table=0x151bd640,

    object_pp=0x0, function_name=0x15421298, retval_ptr=0x15642688,



Test script:
---------------
any pg_connect call results in a segmentation fault.

Expected result:
----------------
connection to postgres, rather than a connection refused.

Actual result:
--------------
Loaded symbols for /opt/adp/httpd/modules/mod_env.so

Reading symbols from /opt/adp/httpd/modules/mod_mime_magic.so...Reading
symbols                                                                 
            from
/usr/lib/debug/opt/adp/httpd/modules/mod_mime_magic.so.debug...done.

done.

Loaded symbols for /opt/adp/httpd/modules/mod_mime_magic.so

Reading symbols from /opt/adp/httpd/modules/mod_cern_meta.so...Reading
symbols f                                                               
             rom
/usr/lib/debug/opt/adp/httpd/modules/mod_cern_meta.so.debug...done.

done.

Loaded symbols for /opt/adp/httpd/modules/mod_cern_meta.so

Reading symbols from /opt/adp/httpd/modules/mod_expires.so...Reading
symbols fro                                                             
               m
/usr/lib/debug/opt/adp/httpd/modules/mod_expires.so.debug...done.

done.

Loaded symbols for /opt/adp/httpd/modules/mod_expires.so

Reading symbols from /opt/adp/httpd/modules/mod_headers.so...Reading
symbols fro                                                             
               m
/usr/lib/debug/opt/adp/httpd/modules/mod_headers.so.debug...done.

done.

Loaded symbols for /opt/adp/httpd/modules/mod_headers.so

Reading symbols from /opt/adp/httpd/modules/mod_ident.so...Reading
symbols from                                                            
                
/usr/lib/debug/opt/adp/httpd/modules/mod_ident.so.debug...done.

done.

Loaded symbols for /opt/adp/httpd/modules/mod_ident.so

Reading symbols from /opt/adp/httpd/modules/mod_usertrack.so...Reading
symbols f                                                               
             rom
/usr/lib/debug/opt/adp/httpd/modules/mod_usertrack.so.debug...done.

done.

Loaded symbols for /opt/adp/httpd/modules/mod_usertrack.so

Reading symbols from /opt/adp/httpd/modules/mod_unique_id.so...Reading
symbols f                                                               
             rom
/usr/lib/debug/opt/adp/httpd/modules/mod_unique_id.so.debug...done.

done.

Loaded symbols for /opt/adp/httpd/modules/mod_unique_id.so

Reading symbols from /opt/adp/httpd/modules/mod_setenvif.so...Reading
symbols fr                                                              
              om
/usr/lib/debug/opt/adp/httpd/modules/mod_setenvif.so.debug...done.

done.

Loaded symbols for /opt/adp/httpd/modules/mod_setenvif.so

Reading symbols from /opt/adp/httpd/modules/mod_version.so...Reading
symbols fro                                                             
               m
/usr/lib/debug/opt/adp/httpd/modules/mod_version.so.debug...done.

done.

Loaded symbols for /opt/adp/httpd/modules/mod_version.so

Reading symbols from /opt/adp/httpd/modules/mod_ssl.so...Reading symbols
from /u                                                                 
           sr/lib/debug/opt/adp/httpd/modules/mod_ssl.so.debug...done.

done.

Loaded symbols for /opt/adp/httpd/modules/mod_ssl.so

Reading symbols from /lib64/libssl.so.6...(no debugging symbols
found)...done.

Loaded symbols for /lib64/libssl.so.6

Reading symbols from /lib64/libcrypto.so.6...(no debugging symbols
found)...done                                                           
                 .

Loaded symbols for /lib64/libcrypto.so.6

Reading symbols from /usr/lib64/libgssapi_krb5.so.2...(no debugging
symbols foun                                                            
                d)...done.

Loaded symbols for /usr/lib64/libgssapi_krb5.so.2

Reading symbols from /usr/lib64/libkrb5.so.3...(no debugging symbols
found)...do                                                             
               ne.

Loaded symbols for /usr/lib64/libkrb5.so.3

Reading symbols from /lib64/libcom_err.so.2...(no debugging symbols
found)...don                                                            
                e.

Loaded symbols for /lib64/libcom_err.so.2

Reading symbols from /usr/lib64/libk5crypto.so.3...(no debugging symbols
found).                                                                 
           ..done.

Loaded symbols for /usr/lib64/libk5crypto.so.3

Reading symbols from /usr/lib64/libkrb5support.so.0...(no debugging
symbols foun                                                            
                d)...done.

Loaded symbols for /usr/lib64/libkrb5support.so.0

Reading symbols from /lib64/libkeyutils.so.1...(no debugging symbols
found)...do                                                             
               ne.

Loaded symbols for /lib64/libkeyutils.so.1

Reading symbols from /lib64/libresolv.so.2...(no debugging symbols
found)...done                                                           
                 .

Loaded symbols for /lib64/libresolv.so.2

Reading symbols from /lib64/libselinux.so.1...(no debugging symbols
found)...don                                                            
                e.

Loaded symbols for /lib64/libselinux.so.1

Reading symbols from /lib64/libsepol.so.1...(no debugging symbols
found)...done.

Loaded symbols for /lib64/libsepol.so.1

Reading symbols from /opt/adp/httpd/modules/mod_mime.so...Reading
symbols from /                                                          
                 
usr/lib/debug/opt/adp/httpd/modules/mod_mime.so.debug...done.

done.

Loaded symbols for /opt/adp/httpd/modules/mod_mime.so

Reading symbols from /opt/adp/httpd/modules/mod_dav.so...Reading symbols
from /u                                                                 
           sr/lib/debug/opt/adp/httpd/modules/mod_dav.so.debug...done.

done.

Loaded symbols for /opt/adp/httpd/modules/mod_dav.so

Reading symbols from /opt/adp/httpd/modules/mod_status.so...Reading
symbols from                                                            
                
/usr/lib/debug/opt/adp/httpd/modules/mod_status.so.debug...done.

done.

Loaded symbols for /opt/adp/httpd/modules/mod_status.so

Reading symbols from /opt/adp/httpd/modules/mod_autoindex.so...Reading
symbols f                                                               
             rom
/usr/lib/debug/opt/adp/httpd/modules/mod_autoindex.so.debug...done.

done.

Loaded symbols for /opt/adp/httpd/modules/mod_autoindex.so

Reading symbols from /opt/adp/httpd/modules/mod_asis.so...Reading
symbols from /                                                          
                 
usr/lib/debug/opt/adp/httpd/modules/mod_asis.so.debug...done.

done.

Loaded symbols for /opt/adp/httpd/modules/mod_asis.so

Reading symbols from /opt/adp/httpd/modules/mod_info.so...Reading
symbols from /                                                          
                 
usr/lib/debug/opt/adp/httpd/modules/mod_info.so.debug...done.

done.

Loaded symbols for /opt/adp/httpd/modules/mod_info.so

Reading symbols from /opt/adp/httpd/modules/mod_cgi.so...Reading symbols
from /u                                                                 
           sr/lib/debug/opt/adp/httpd/modules/mod_cgi.so.debug...done.

done.

Loaded symbols for /opt/adp/httpd/modules/mod_cgi.so

Reading symbols from /opt/adp/httpd/modules/mod_dav_fs.so...Reading
symbols from                                                            
                
/usr/lib/debug/opt/adp/httpd/modules/mod_dav_fs.so.debug...done.

done.

Loaded symbols for /opt/adp/httpd/modules/mod_dav_fs.so

Reading symbols from /opt/adp/httpd/modules/mod_vhost_alias.so...Reading
symbols                                                                 
            from
/usr/lib/debug/opt/adp/httpd/modules/mod_vhost_alias.so.debug...done.

done.

Loaded symbols for /opt/adp/httpd/modules/mod_vhost_alias.so

Reading symbols from /opt/adp/httpd/modules/mod_negotiation.so...Reading
symbols                                                                 
            from
/usr/lib/debug/opt/adp/httpd/modules/mod_negotiation.so.debug...done.

done.

Loaded symbols for /opt/adp/httpd/modules/mod_negotiation.so

Reading symbols from /opt/adp/httpd/modules/mod_dir.so...Reading symbols
from /u                                                                 
           sr/lib/debug/opt/adp/httpd/modules/mod_dir.so.debug...done.

done.

Loaded symbols for /opt/adp/httpd/modules/mod_dir.so

Reading symbols from /opt/adp/httpd/modules/mod_imagemap.so...Reading
symbols fr                                                              
              om
/usr/lib/debug/opt/adp/httpd/modules/mod_imagemap.so.debug...done.

done.

Loaded symbols for /opt/adp/httpd/modules/mod_imagemap.so

Reading symbols from /opt/adp/httpd/modules/mod_actions.so...Reading
symbols fro                                                             
               m
/usr/lib/debug/opt/adp/httpd/modules/mod_actions.so.debug...done.

done.

Loaded symbols for /opt/adp/httpd/modules/mod_actions.so

Reading symbols from /opt/adp/httpd/modules/mod_speling.so...Reading
symbols fro                                                             
               m
/usr/lib/debug/opt/adp/httpd/modules/mod_speling.so.debug...done.

done.

Loaded symbols for /opt/adp/httpd/modules/mod_speling.so

Reading symbols from /opt/adp/httpd/modules/mod_userdir.so...Reading
symbols fro                                                             
               m
/usr/lib/debug/opt/adp/httpd/modules/mod_userdir.so.debug...done.

done.

Loaded symbols for /opt/adp/httpd/modules/mod_userdir.so

Reading symbols from /opt/adp/httpd/modules/mod_alias.so...Reading
symbols from                                                            
                
/usr/lib/debug/opt/adp/httpd/modules/mod_alias.so.debug...done.

done.

Loaded symbols for /opt/adp/httpd/modules/mod_alias.so

Reading symbols from /opt/adp/httpd/modules/mod_rewrite.so...Reading
symbols fro                                                             
               m
/usr/lib/debug/opt/adp/httpd/modules/mod_rewrite.so.debug...done.

done.

Loaded symbols for /opt/adp/httpd/modules/mod_rewrite.so

Reading symbols from /opt/adp/httpd/modules/libphp5.so...Reading symbols
from /u                                                                 
           sr/lib/debug/opt/adp/httpd/modules/libphp5.so.debug...done.

done.

Loaded symbols for /opt/adp/httpd/modules/libphp5.so

Reading symbols from /usr/lib64/libexslt.so.0...(no debugging symbols
found)...d                                                              
              one.

Loaded symbols for /usr/lib64/libexslt.so.0

Reading symbols from /usr/lib64/libmcrypt.so.4...(no debugging symbols
found)...                                                               
             done.

Loaded symbols for /usr/lib64/libmcrypt.so.4

Reading symbols from /usr/lib64/libltdl.so.3...(no debugging symbols
found)...do                                                             
               ne.

Loaded symbols for /usr/lib64/libltdl.so.3

Reading symbols from /usr/lib64/libt1.so.5...(no debugging symbols
found)...done                                                           
                 .

Loaded symbols for /usr/lib64/libt1.so.5

Reading symbols from /usr/lib64/libfreetype.so.6...(no debugging symbols
found).                                                                 
           ..done.

Loaded symbols for /usr/lib64/libfreetype.so.6

Reading symbols from /usr/lib64/libpng12.so.0...(no debugging symbols
found)...d                                                              
              one.

Loaded symbols for /usr/lib64/libpng12.so.0

Reading symbols from /usr/lib64/libjpeg.so.62...(no debugging symbols
found)...d                                                              
              one.

Loaded symbols for /usr/lib64/libjpeg.so.62

Reading symbols from /usr/lib64/libgdbm.so.2...(no debugging symbols
found)...do                                                             
               ne.

Loaded symbols for /usr/lib64/libgdbm.so.2

Reading symbols from /usr/lib64/libcurl.so.3...(no debugging symbols
found)...do                                                             
               ne.

Loaded symbols for /usr/lib64/libcurl.so.3

Reading symbols from /usr/lib64/libbz2.so.1...(no debugging symbols
found)...don                                                            
                e.

Loaded symbols for /usr/lib64/libbz2.so.1

Reading symbols from /lib64/libnsl.so.1...(no debugging symbols
found)...done.

Loaded symbols for /lib64/libnsl.so.1

Reading symbols from /usr/lib64/libxml2.so.2...(no debugging symbols
found)...do                                                             
               ne.

Loaded symbols for /usr/lib64/libxml2.so.2

Reading symbols from /usr/lib64/libidn.so.11...(no debugging symbols
found)...do                                                             
               ne.

Loaded symbols for /usr/lib64/libidn.so.11

Reading symbols from /usr/lib64/libnetsnmp.so.10...(no debugging symbols
found).                                                                 
           ..done.

Loaded symbols for /usr/lib64/libnetsnmp.so.10

Reading symbols from /lib64/libwrap.so.0...(no debugging symbols
found)...done.

Loaded symbols for /lib64/libwrap.so.0

Reading symbols from /usr/lib64/libxslt.so.1...(no debugging symbols
found)...do                                                             
               ne.

Loaded symbols for /usr/lib64/libxslt.so.1

Reading symbols from /usr/lib64/libgcrypt.so.11...(no debugging symbols
found)..                                                                
            .done.

Loaded symbols for /usr/lib64/libgcrypt.so.11

Reading symbols from /usr/lib64/libgpg-error.so.0...(no debugging
symbols found)                                                          
                  ...done.

Loaded symbols for /usr/lib64/libgpg-error.so.0

Reading symbols from /opt/adp/httpd/lib/php/modules/pgsql.so...Reading
symbols f                                                               
             rom
/usr/lib/debug/opt/adp/httpd/lib/php/modules/pgsql.so.debug...done.

done.

Loaded symbols for /opt/adp/httpd/lib/php/modules/pgsql.so

Reading symbols from /usr/lib64/libpq.so.5...Reading symbols from
/usr/lib/debug                                                          
                  /usr/lib64/libpq.so.5.1.debug...done.

done.

Loaded symbols for /usr/lib64/libpq.so.5

Reading symbols from /usr/lib64/libldap_r-2.3.so.0...(no debugging
symbols found                                                           
                 )...done.

Loaded symbols for /usr/lib64/libldap_r-2.3.so.0

Reading symbols from /usr/lib64/liblber-2.3.so.0...(no debugging symbols
found).                                                                 
           ..done.

Loaded symbols for /usr/lib64/liblber-2.3.so.0

Reading symbols from /usr/lib64/libsasl2.so.2...(no debugging symbols
found)...d                                                              
              one.

Loaded symbols for /usr/lib64/libsasl2.so.2

Reading symbols from /lib64/libnss_files.so.2...(no debugging symbols
found)...d                                                              
              one.

Loaded symbols for /lib64/libnss_files.so.2



Core was generated by `/opt/adp/httpd/bin/httpd -X'.

Program terminated with signal 11, Segmentation fault.

#0  0x00002ac7d6ee1c20 in zend_mm_search_large_block (heap=0x151bdd50,
size=24)

    at /usr/src/debug/php-5.2.13/Zend/zend_alloc.c:1753

1753                    if (ZEND_MM_FREE_BLOCK_SIZE(p) <
ZEND_MM_FREE_BLOCK_SIZE                                                 
                           (best_fit)) {

(gdb) bt

#0  0x00002ac7d6ee1c20 in zend_mm_search_large_block (heap=0x151bdd50,
size=24)

    at /usr/src/debug/php-5.2.13/Zend/zend_alloc.c:1753

#1  _zend_mm_alloc_int (heap=0x151bdd50, size=24)

    at /usr/src/debug/php-5.2.13/Zend/zend_alloc.c:1812

#2  0x00002ac7dcdd8e80 in zif_pg_query (ht=<value optimized out>,

    return_value=0x15671350, return_value_ptr=<value optimized out>,

    this_ptr=<value optimized out>, return_value_used=<value optimized
out>)

    at /usr/src/debug/php-5.2.13/ext/pgsql/pgsql.c:1184

#3  0x00002ac7d6f1d582 in zend_do_fcall_common_helper_SPEC (

    execute_data=0x7fff68c97af0)

    at /usr/src/debug/php-5.2.13/Zend/zend_vm_execute.h:200

#4  0x00002ac7d6f1c73c in execute (op_array=0x155df890)

    at /usr/src/debug/php-5.2.13/Zend/zend_vm_execute.h:92

#5  0x00002ac7d6ef1299 in zend_call_function (fci=0x7fff68c97cd0,

    fci_cache=<value optimized out>)

    at /usr/src/debug/php-5.2.13/Zend/zend_execute_API.c:1039

#6  0x00002ac7d6ef2386 in call_user_function_ex (

    function_table=<value optimized out>, object_pp=<value optimized
out>,

    function_name=0x7274732061206e69, retval_ptr_ptr=0x1541dda0,

    param_count=1, params=0x0, no_separation=1, symbol_table=0x0)

    at /usr/src/debug/php-5.2.13/Zend/zend_execute_API.c:640

#7  0x00002ac7d6ef2406 in call_user_function
(function_table=0x151bd640,

    object_pp=0x0, function_name=0x15421298, retval_ptr=0x15642688,




------------------------------------------------------------------------



-- 
Edit this bug report at http://bugs.php.net/bug.php?id=51946&edit=1

Reply via email to