ID: 39308 Updated by: [EMAIL PROTECTED] Reported By: suhachov at gmail dot com -Status: Open +Status: Bogus Bug Type: Performance problem Operating System: Linux FC PHP Version: 5.1.6 New Comment:
Thank you for taking the time to write to us, but this is not a bug. Please double-check the documentation available at http://www.php.net/manual/ and the instructions on how to report a bug at http://bugs.php.net/how-to-report.php This is the only way we can bypass limitations of the MySQL's prepared statement interface. If you disable native prepared statements this problem will go away. Previous Comments: ------------------------------------------------------------------------ [2006-10-30 15:02:02] suhachov at gmail dot com Description: ------------ Simple program: // remember used memory $start = memory_get_usage(); $dbh = new PDO('mysql:...','...','...'); // create empty table $dbh->query('DROP TABLE IF EXISTS ttt;'); $dbh->query("CREATE TABLE ttt ( id integer, args longtext);"); // simple code function doQuery($id) { static $sth; if( !$sth ) $sth = $GLOBALS['dbh']->prepare("SELECT * FROM ttt WHERE id = ?"); $sth->execute(array($id)); return $sth->fetchAll(); } var_dump(doQuery('5')); echo memory_get_usage()-$start; // eats 1 megabyte of memory. // if I duplicate doQuery()->doQuery2() // and call doQuery2() - it eats 2(!!) Mb of memory // if I remove LONGTEXT, everything is OK. Reproduce code: --------------- see above. Expected result: ---------------- Please, not so much memory! ------------------------------------------------------------------------ -- Edit this bug report at http://bugs.php.net/?id=39308&edit=1