PHP 4.0 Bug #9240 Updated: unserialize fails non-determenistic on large objects

From: Date: Tue, 20 Mar 2001 12:53:17 +0000
Subject: PHP 4.0 Bug #9240 Updated: unserialize fails non-determenistic on large objects
Groups: php.dev 
Request: Send a blank email to php-dev+get-49485@lists.php.net to get a copy of this message
ID: 9240 User Update by: brian@kusala.com Old-Status: Feedback Status: Open Bug Type: Variables related Description: unserialize fails non-determenistic on large objects I have noticed a tendancy for this to occur when the server is particularly short on memory. My impression is that it is failing with a "can't unserialize at" error instead of a memory error. Previous Comments: --------------------------------------------------------------------------- [2001-02-22 10:54:03] stas@php.net Could you please send me smallest possible object that has this behaviour? If it's large, please compress it. --------------------------------------------------------------------------- [2001-02-13 10:38:17] brian@kusala.com I'm unserializing a large object using the following test script: for ($i = 0; $i < 20; $i++) { echo "$in"; $ObjectToCreate = array(); if (!$fp = fopen('test.ser', 'r')) return false; $ObjectToCreate = unserialize(fread ($fp, filesize ('test.ser'))); fclose($fp); } I get the following output: 0 1 2 3 4 5 6 PHP Warning: unserialize() failed at offset 2150380 of 3601223 bytes in test.inc on line 8 <font color=ff0000><br> <b>Warning</b>: unserialize() failed at offset 2150380 of 3601223 bytes in <b>test.inc</b> on line <b>8</b><br> </font>7 8 9 10 11 PHP Warning: unserialize() failed at offset 2822123 of 3601223 bytes in test.inc on line 8 <font color=ff0000><br> <b>Warning</b>: unserialize() failed at offset 2822123 of 3601223 bytes in <b>test.inc</b> on line <b>8</b><br> </font>12 13 14 15 16 17 18 19 Repeatedly running the script produces different output each time with different numbers of failures at different offsets. So far the lowest offset at which I have had a problem is about 650000. I can supply the 'test.ser' file on request but for obvious reasons do not wish to include it in this error report! --------------------------------------------------------------------------- Full Bug description available at: http://bugs.php.net/?id=9240

« previous php.dev (#49485) next »