ID: 15940 Updated by: [EMAIL PROTECTED] Reported By: [EMAIL PROTECTED] -Status: Feedback +Status: Open Bug Type: Apache related Operating System: Linux PHP Version: 4.1.2 New Comment:
I should mention that the problems occurs even if there is no call to Interbase at all. In our case we saw it happen in an index.php file which gets some session values and sets some constants base on the environment. It then creates html/javascript to open a new browser window. This didn't happen as the rendering ended inmidst the javascript code. Only after this is Interbase involved. Previous Comments: ------------------------------------------------------------------------ [2002-03-13 04:03:07] [EMAIL PROTECTED] I found that if you pass the wrong type of object to ibase_free_result or ibase_free_query you cause the Apache child running the PHP script to segfault. So, for example, if I create a query object and then later pass it to ibase_free_result I guarantee that the Apache child segfaults. Maybe an object check should take place inside the ibase_free_result to see that it was actually passed a result rather than a query object. Like one of the other people reporting this bug, the page renders to a point and then (I guess when Apache dies) no more of the document is returned. I spent a week trying to solve this problem and it manifests itself in 4.1.1 and 4.1.2. I'm running Red Hat 7.2 with Apache 1.3.20. PHP was built using a very long set of options - if they are required please e-mail me and I will send them. I'm running PHP as an Apache module without the CGI option. ------------------------------------------------------------------------ [2002-03-08 08:23:52] [EMAIL PROTECTED] [root@trex dev]# gdb /usr/sbin/httpd GNU gdb Red Hat Linux 7.x (5.0rh-15) (MI_OUT) Copyright 2001 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 "i386-redhat-linux"... (gdb) run -X Starting program: /usr/sbin/httpd -X Program received signal SIGSEGV, Segmentation fault. 0x40430c7c in memcpy () from /lib/i686/libc.so.6 (gdb) bt #0 0x40430c7c in memcpy () from /lib/i686/libc.so.6 #1 0x00000000 in __strtol_internal (nptr=0x0, endptr=0x0, base=165, group=128) -------------------- PHP was compiled with: ./configure --without-mysql --with-imap --with-imap-ssl --with-interbase --with-pgsql --with-kerberos --with-gettext --with-xml --with-apache=../apache_1.3.23/ --enable-track-vars --enable-debug ------------------------------------------------------------------------ [2002-03-08 06:18:03] [EMAIL PROTECTED] To properly diagnose this bug, we need a backtrace to see what is happening behind the scenes. To find out how to generate a backtrace, please read http://bugs.php.net/bugs-generating-backtrace.php Once you have generated a backtrace, please submit it to this bug report and change the status back to "Open". ------------------------------------------------------------------------ [2002-03-08 04:28:47] [EMAIL PROTECTED] I have the sam problem (PHP 4.1.2 & Apache 1.3.23) I'm intalling a new server so I'm the only one testing it but i still get Segmentation fault if I use Interbase. ------------------------------------------------------------------------ [2002-03-07 15:07:55] [EMAIL PROTECTED] There seems to be a bug in PHP 4.1.2. Being not an expert in this kind of stuff I can only report the symptoms. We are running the site for quite a time without any problems (4.0.6 compiled with configure --with-apache=../apache_1.3.23 --enable-track-vars --with-interbase=/opt/interbase --enable-trans-id). After upgrading to 4.1.2 the output of PHP did occasionally - not always - create only parts of the expected output. The apache error log showed "child pid 8354 exit signal Segmentation fault (11)" for about every 20 sec. The site has quite a high load with about 80 kByte/s at the time of watching this. Switching back to 4.0.6 made the problem disappear. On a other server with almost exactly the same config the problem does not occur. The only difference between the two is that the load is lower (between 1 and 4 kBytes/s) and that Interbase is not used by any PHP script on the server but support is compiled in and interbase is running. ------------------------------------------------------------------------ -- Edit this bug report at http://bugs.php.net/?id=15940&edit=1