#38124 [Opn->Fbk]: FATAL: erealloc(): Unable to allocate xxx bytes
| From: | mike@php.net | Date: | Mon, 17 Jul 2006 20:01:49 +0000 |
| Subject: | #38124 [Opn->Fbk]: FATAL: erealloc(): Unable to allocate xxx bytes | ||
| References: | 1 | Groups: | php.bugs |
| Request: | Send a blank email to php-bugs+get-99545@lists.php.net to get a copy of this message | ||
ID: 38124
Updated by: mike@php.net
Reported By: boing at boing dot com
-Status: Open
+Status: Feedback
Bug Type: Reproducible crash
Operating System: openbsd 3.8
PHP Version: 5.1.4
New Comment:
Please try using this CVS snapshot:
http://snaps.php.net/php5.2-latest.tar.gz
For Windows:
http://snaps.php.net/win32/php5.2-win32-latest.zip
Works fine here (Linux).
Previous Comments:
------------------------------------------------------------------------
[2006-07-17 13:02:48] boing at boing dot com
BTW - openbsd 3.8 package of php 5.0.4 exhibits the same behavior.
package name: php5-core-5.0.4p0
------------------------------------------------------------------------
[2006-07-17 12:05:27] boing at boing dot com
Description:
------------
I'm getting this:
FATAL: erealloc(): Unable to allocate 3358824 bytes
The process only allocates approximately 30Megs (according to top and
ps). I've increased the ulimits to beyond 256Megs. I've also run php
test scripts with different memory allocation and str_repeats and such
to create a large processes. All work well. In addition I wrote c
code to bang on realloc(3) in openbsd. I know there is plenty of ram
left. But this code does get pretty ugly with multiple levels of
associative arrays. I'm happy to help out any way I can.
Reproduce code:
---------------
http://www.boing.com/phptest.tgz - contains the
phptest.php script and
in a directory, the data file extensions.xml.gz. I stripped down the
typo3.org cms code that pulls in their "new extensions" such that code
to reproduce is here. I turned it into a standalone file. And it all
started out as a research project...
php phptest.php
I've tried many different configure options, but this is the current
attempt: ./configure --prefix=/usr/local/php5
--with-apxs2=/usr/local/apache2/bin/apxs --with-mysql
--with-pgsql=/usr/local/pgsql --with-ldap=/usr/local/openldap
--with-pear --with-zlib --with-libexpat-dir=/usr/local/shared
Expected result:
----------------
a file called extensions.bin that should be the serialized output of
the nasty looking array. Hey I didn't write the original code, I'm
just the messenger. :) I definitely don't expect it to not be able to
allocate 3 megs.
Actual result:
--------------
FATAL: erealloc(): Unable to allocate 3358824 bytes
------------------------------------------------------------------------
--
Edit this bug report at http://bugs.php.net/?id=38124&edit=1