From:             
Operating system: CentOS release 5.4 (Final)
PHP version:      5.2.13
Package:          PostgreSQL related
Bug Type:         Bug
Bug description:Segmentation Faults on postgres function use.

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 bug report at http://bugs.php.net/bug.php?id=51946&edit=1
-- 
Try a snapshot (PHP 5.2):            
http://bugs.php.net/fix.php?id=51946&r=trysnapshot52
Try a snapshot (PHP 5.3):            
http://bugs.php.net/fix.php?id=51946&r=trysnapshot53
Try a snapshot (trunk):              
http://bugs.php.net/fix.php?id=51946&r=trysnapshottrunk
Fixed in SVN:                        
http://bugs.php.net/fix.php?id=51946&r=fixed
Fixed in SVN and need be documented: 
http://bugs.php.net/fix.php?id=51946&r=needdocs
Fixed in release:                    
http://bugs.php.net/fix.php?id=51946&r=alreadyfixed
Need backtrace:                      
http://bugs.php.net/fix.php?id=51946&r=needtrace
Need Reproduce Script:               
http://bugs.php.net/fix.php?id=51946&r=needscript
Try newer version:                   
http://bugs.php.net/fix.php?id=51946&r=oldversion
Not developer issue:                 
http://bugs.php.net/fix.php?id=51946&r=support
Expected behavior:                   
http://bugs.php.net/fix.php?id=51946&r=notwrong
Not enough info:                     
http://bugs.php.net/fix.php?id=51946&r=notenoughinfo
Submitted twice:                     
http://bugs.php.net/fix.php?id=51946&r=submittedtwice
register_globals:                    
http://bugs.php.net/fix.php?id=51946&r=globals
PHP 4 support discontinued:          http://bugs.php.net/fix.php?id=51946&r=php4
Daylight Savings:                    http://bugs.php.net/fix.php?id=51946&r=dst
IIS Stability:                       
http://bugs.php.net/fix.php?id=51946&r=isapi
Install GNU Sed:                     
http://bugs.php.net/fix.php?id=51946&r=gnused
Floating point limitations:          
http://bugs.php.net/fix.php?id=51946&r=float
No Zend Extensions:                  
http://bugs.php.net/fix.php?id=51946&r=nozend
MySQL Configuration Error:           
http://bugs.php.net/fix.php?id=51946&r=mysqlcfg

Reply via email to