Bug #9240 Updated: unserialize fails non-determenistic on large objects
| From: | sniper@php.net | Date: | Fri, 15 Jun 2001 14:41:24 +0000 |
| Subject: | Bug #9240 Updated: unserialize fails non-determenistic on large objects | ||
| Groups: | php.dev | ||
| Request: | Send a blank email to php-dev+get-56793@lists.php.net to get a copy of this message | ||
ID: 9240
Updated by: sniper
Reported By: brian@kusala.com
Old-Status: Open
Status: Feedback
Old-Bug Type: Variables related
Bug Type: Scripting Engine problem
Operating system:
PHP Version: 4.0.4pl1
Assigned To:
Comments:
And that example object is where? The small one?
Previous Comments:
---------------------------------------------------------------------------
[2001-03-20 07:53:15] brian@kusala.com
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.
---------------------------------------------------------------------------
[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!
---------------------------------------------------------------------------
ATTENTION! Do NOT reply to this email!
To reply, use the web interface found at http://bugs.php.net/?id=9240&edit=2