From:             linke at paralight dot ru
Operating system: FreeBSD4.3(ufs) / WinXPpro(ntfs)
PHP version:      4.3.4
PHP Bug Type:     Filesystem function related
Bug description:  filesize() during concurrent file read/write

Description:
------------
When opened file grows during script run, filesize still report old size.
Cached filesize? But clearstatcache() before filesize() can't help.

On FreeBSD 4.3-STABLE there is no this unexpected behaviour - it's all ok
without any clearstatcache();

I get my "bbbbbb" on WindowsXP/ntfs when when I use fread($fd_2, 1024)
instead of fread($fd_2, filesize('test')).


In production environment i'll get this behavior during concurrent file
read/write from two simultaneously running script. I think at leas this
behavior must be same at all platforms, so it's a bug.

Reproduce code:
---------------
<?
$fd=fopen('test', 'wb');
fwrite($fd, 'aa');
fclose($fd);

$fd_1=fopen('test', 'rb+');
$fd_2=fopen('test', 'rb+');

fwrite($fd_1, 'bbbbbb');
echo fread($fd_2, filesize('test'));

fclose($fd_1);
fclose($fd_2);
?>


Expected result:
----------------
bbbbbb

Actual result:
--------------
FreeBSD 4.3-STABLE (ufs): 
bbbbbb

Windows XP pro (ntfs):
bb


-- 
Edit bug report at http://bugs.php.net/?id=27029&edit=1
-- 
Try a CVS snapshot (php4):  http://bugs.php.net/fix.php?id=27029&r=trysnapshot4
Try a CVS snapshot (php5):  http://bugs.php.net/fix.php?id=27029&r=trysnapshot5
Fixed in CVS:               http://bugs.php.net/fix.php?id=27029&r=fixedcvs
Fixed in release:           http://bugs.php.net/fix.php?id=27029&r=alreadyfixed
Need backtrace:             http://bugs.php.net/fix.php?id=27029&r=needtrace
Need Reproduce Script:      http://bugs.php.net/fix.php?id=27029&r=needscript
Try newer version:          http://bugs.php.net/fix.php?id=27029&r=oldversion
Not developer issue:        http://bugs.php.net/fix.php?id=27029&r=support
Expected behavior:          http://bugs.php.net/fix.php?id=27029&r=notwrong
Not enough info:            http://bugs.php.net/fix.php?id=27029&r=notenoughinfo
Submitted twice:            http://bugs.php.net/fix.php?id=27029&r=submittedtwice
register_globals:           http://bugs.php.net/fix.php?id=27029&r=globals
PHP 3 support discontinued: http://bugs.php.net/fix.php?id=27029&r=php3
Daylight Savings:           http://bugs.php.net/fix.php?id=27029&r=dst
IIS Stability:              http://bugs.php.net/fix.php?id=27029&r=isapi
Install GNU Sed:            http://bugs.php.net/fix.php?id=27029&r=gnused
Floating point limitations: http://bugs.php.net/fix.php?id=27029&r=float

Reply via email to