Bug #75013 [Com]: Fatal error: Allowed memory size

From: Date: Sat, 11 Nov 2017 17:00:33 +0000
Subject: Bug #75013 [Com]: Fatal error: Allowed memory size
References: 1  Groups: php.bugs 
Request: Send a blank email to php-bugs+get-212546@lists.php.net to get a copy of this message
Edit report at https://bugs.php.net/bug.php?id=75013&edit=1 ID: 75013 Comment by: giany at x83 dot org Reported by: ymtene at gmail dot com Summary: Fatal error: Allowed memory size Status: Open Type: Bug Package: ODBC related Operating System: CentOS Linux 7.2.1511 (Core) PHP Version: 7.1.7 Block user comment: N Private report: N New Comment: Hi, Any update regarding this issue? Any workaround? Previous Comments: ------------------------------------------------------------------------ [2017-08-15 15:22:30] jeroen at vdmi dot nl Relevant test code: <?php $connection = odbc_connect("Driver=MDBTools;DBQ=/var/www/accessdb/Books_be.mdb", '', ''); $result = odbc_exec($connection, "SELECT * FROM Authors"); while (odbc_fetch_row($result)) { for ($i = 1; $i <= odbc_num_fields($result); $i++) { echo "Result is " . odbc_result($result, $i); } } ------------------------------------------------------------------------ [2017-08-15 15:18:10] jeroen at vdmi dot nl This issue also happens to me, but I happen to connect to an MDB (Access) database. PHP version: PHP 7.1.4 (cli) (built: Apr 25 2017 03:23:01) ( NTS ) Copyright (c) 1997-2017 The PHP Group Zend Engine v3.1.0, Copyright (c) 1998-2017 Zend Technologies with Xdebug v2.5.5, Copyright (c) 2002-2017, by Derick Rethans with Zend OPcache v7.1.4, Copyright (c) 1999-2017, by Zend Technologies Other versions libodbc1: 2.3.1-3 unixodbc: 2.3.1-3 unixodbc-dev: 2.3.1-3 libmdbodbc1: 0.7.1-2 I'm able to reproduce it with the following MDB (both tables in it): http://www.rogersaccesslibrary.com/download3.asp?SampleName=Books.mdb Error: Allowed memory size of 2147483648 bytes exhausted (tried to allocate 139968689209376 bytes It might have to do with some field type though. I am able to read some of my tables. I have one table in my MDB with just 2 text columns and that one reads fine. ------------------------------------------------------------------------ [2017-08-02 17:27:02] cmb@php.net > the reaosn why you get it with PHP7 is that the stuff allocating > mekory previously did not use then Zend memory manager and never > was affected by the limits and now that bug is fixed > (tried to allocate 140325171494924 bytes) That would be 140TB! ------------------------------------------------------------------------ [2017-07-31 22:35:43] spam2 at rhsoft dot net when you get that error your value of -1 is not accepted php_admin_flag/php_admin_value in any config can't be changed with ini_set() by intention and when you edit php.ini you pretty sure overlook some vhost specific config the reaosn why you get it with PHP7 is that the stuff allocating mekory previously did not use then Zend memory manager and never was affected by the limits and now that bug is fixed ------------------------------------------------------------------------ [2017-07-31 21:59:12] ymtene at gmail dot com Description: ------------ I have problems executing a sql statement from php7 to a db2 database, here are my configuration data and error: PHP version: PHP 7.1.7 (cli) (built: Jul 6 2017 12:10:28) ( NTS ) Copyright (c) 1997-2017 The PHP Group Zend Engine v3.1.0, Copyright (c) 1998-2017 Zend Technologies with Zend OPcache v7.1.7, Copyright (c) 1999-2017, by Zend Technologies UNIXODBC version: unixODBC-2.3.1-11.el7.x86_64 iSeriessAccess version: iSeriesAccess-7.1.0-1.0.x86_64 ERROR: Fatal error: Allowed memory size of 134217728 bytes exhausted (tried to allocate 140325171494924 bytes) in /var/www/html/test.php on line 19 I try set more memory on php.ini but not work. Also, I try with set ini_set('memory_limit', '-1'); and dont work. What can I do to make it work? Any suggestion? I have the same installation in php5.4 and it works perfect, but now I need run it on php7. --- From manual page: http://www.php.net/index --- Test script: --------------- <?php //Datos para conexión a db2// $as_username="username"; $as_password="passwd"; $bd = "ANYDB"; $as_dsn ="DRIVER=iSeries Access ODBC Driver 64-bit;SYSTEM=x.x.x.x;DBQ=$bd"; $as_conn = odbc_connect ($as_dsn, $as_username, $as_password); if (!$as_conn) { echo "No existe conexión a la base de datos."; // Error message }else{ $cadena_sql= "SELECT CAMPO FROM $db.TABLA"; $result = odbc_exec($as_conn,$cadena_sql); //Problem to execute if ($persona=odbc_fetch_array($result,'')){ ... }else{ ... } } ?> ------------------------------------------------------------------------ -- Edit this bug report at https://bugs.php.net/bug.php?id=75013&edit=1

« previous php.bugs (#212546) next »