ID:               36884
 Comment by:       tuliogs at pgt dot mpt dot gov dot br
 Reported By:      guenther dot unterrainer at gknsintermetals dot com
 Status:           No Feedback
 Bug Type:         Apache related
 Operating System: SLES9 SP3 x86-64
 PHP Version:      4.4.2
 New Comment:

As noted in the notes for Oracle Funcions online documentation, this
issue was already solved in PECL oci8 1.2.1 and later, but is still
present in 4.4.7. To solve this, you´ll have to go through the following
steps (modified from Rainer Klier´s notes on that page):

0. (before anything): be sure to have the path to instantclient in your
LD_LIBRARY_PATH

1. download latest oci8-package from http://pecl.php.net/package/oci8
(if you already have PHP installed), just do "pecl download oci8"

2. extract package somewhere

3. go to php-4.4.x-source directory

4. rm -rf ext/oci8

5. cp extraceted oci8-1.2.x directory to/as ext/oci8

6. make distclean

7. If you use autoconf 2.5 and later (maybe other versions too),
present in updated RedHat/CentOS 4.4 and 5, you MUST delete PHP´s
configure script, or it will do nothing:
rm configure

8./buildconf --force

9. ./configure (with the options you need)
--with-oci8=instantclient,/path/to/instantclient
(notice you´ll be using PHP5 syntax for --with-oci8)

10. make

11. ONLY for x86_64, and not really mandatory (same effect as manually
editing "memory_limit = 128M" in php.ini, if existing):
11.1. create pear-install.ini:
-----------------------------------------------
[PHP]

memory_limit = 128M
------------------------------------------------

11.2. edit Makefile:
replace:
PEAR_INSTALL_FLAGS = -n -dshort_open_tag=0 -dsafe_mode=0
with:
PEAR_INSTALL_FLAGS = -cpear-install.ini -dshort_open_tag=0
-dsafe_mode=0

12. make install

13. if not already, set
LD_LIBRARY_PATH="$LD_LIBRARY_PATH:/path/to/instantclient" in your
environment (one of profile, apachectl, or /etc/rc.d/init.d/httpd
scripts, as you prefer) BEFORE starting Apache. No need to set TNS_ADMIN
and tnsnames.ora for Instant Client, IF and only if Oracle´s easy syntax
is available - see
http://download-east.oracle.com/docs/cd/B12037_01/network.101/b10775/naming.htm#i498306

14. have fun!

One example of easily reproducing sample for this issue is
phpBB-3.0-RC1. I know it´s not small, but it´s very easy and simple to
pick, and you´ll probably get this kind of error still in the install
screens, past the database settings.

Now I think it´s past time to update oci8, ;) this bug is really more
than just an annoyance.

*Note: presently, oci8 v1.2.3 may cause the following warning in some
scripts: "ocilogoff(): supplied resource is not a valid oci8 connection
resource in /path/to/script", but this is less troublesome and easily
treated with adjusting logging facilities in php.ini while the scripts
are adjusted. Cheers!


Previous Comments:
------------------------------------------------------------------------

[2006-10-13 08:13:02] kutovoy at gmail dot com

I found out that this problem (in my case) was connected with unpacking
(gz) corrupted(truncated) data from database after some headeik with
debugging and testing. I stored compressed data in TEXT field, but data
was 85Kb length and was truncated to 65535. I think gzuncompress cause
that glibc errors. After altering field to LONGBLOB problem gone.

Good luck!

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

[2006-10-11 14:01:11] kutovoy at gmail dot com

The same errors on big arrays of objects. on PHP 4.4.2, I'm now trying
to figure out working version of PHP.

*** glibc detected *** free(): invalid pointer: 0x08925b00 ***
[Wed Oct 11 09:26:06 2006] [notice] child pid 2610 exit signal Aborted
(6)
[Wed Oct 11 09:28:38 2006] [error] [client 194.247.xxx.yyy] File does
not exist: /xxx/htdocs/yyy/favicon.ico
[Wed Oct 11 10:58:43 2006] [notice] child pid 4059 exit signal
Segmentation fault (11)

and similar with *** glibc detected *** corrupted double-linked list:

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

[2006-10-05 21:14:55] ndickerson at gmi-mr dot com

I have also encountered this bug on php 4.3.10 using php xmlrpc
libraries(phpxmlrpc.sourceforge.net) and processing an array of 20,000
records using the library, which happens to create a large number of
objects.

*** glibc detected *** double free or corruption (!prev): 0x0fbf24b8
***

is followed by some

*** glibc detected *** corrupted double-linked list: 0x006f4858 ***

There are also some other errors that I have lost that occur in the
place of the double free or corruption error..

This works fine when it is not processing as many objects.

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

[2006-10-05 16:53:12] egon at inf dot ufpr dot br

The above code works fine in 5.1. It crashes on PHP 4.3.4, 4.4.2 and
4.4.4 on both linux/windows.

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

[2006-10-04 22:35:04] egon at inf dot ufpr dot br

By the way, I've got several types of erros, it appears to be random:


[Wed Oct 04 17:51:18 2006] [notice] child pid 12451 exit signal
Segmentation fault (11)

*** glibc detected *** free(): invalid next size (fast): 0x08202798
***
[Wed Oct 04 17:58:35 2006] [notice] child pid 12693 exit signal Aborted
(6)


77*** glibc detected *** corrupted double-linked list: 0xb7b7d358 ***
[Wed Oct 04 19:21:51 2006] [notice] child pid 12731 exit signal Aborted
(6)

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

The remainder of the comments for this report are too long. To view
the rest of the comments, please view the bug report online at
    http://bugs.php.net/36884

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

Reply via email to