Bug #80629 [Csd]: Test ext/standard/tests/file/disk_free_space_basic.phpt fails on Fedora 33

From: Date: Fri, 18 Nov 2022 13:41:07 +0000
Subject: Bug #80629 [Csd]: Test ext/standard/tests/file/disk_free_space_basic.phpt fails on Fedora 33
References: 1  Groups: php.bugs 
Request: Send a blank email to php-bugs+get-242849@lists.php.net to get a copy of this message
Edit report at https://bugs.php.net/bug.php?id=80629&edit=1 ID: 80629 Updated by: girgias@php.net Reported by: girgias@php.net Summary: Test ext/standard/tests/file/disk_free_space_basic.phpt fails on Fedora 33 Status: Closed Type: Bug Package: Filesystem function related Operating System: Fedora Workstation 33 PHP Version: 8.0Git-2021-01-15 (Git) Assigned To: girgias Block user comment: N Private report: N New Comment: Fixed by https://github.com/php/php-src/commit/bab9e349cbf0ca984ee573b99455aefbd4506a77 Previous Comments: ------------------------------------------------------------------------ [2021-01-19 15:20:30] girgias@php.net Even changing the repeat value to 0xffffff produces the same diff. (can't go any higher without memory exhaustion, for obvious reasons) ------------------------------------------------------------------------ [2021-01-19 15:10:59] nikic@php.net What happens if you increase the 0xffff to something larger? Possibly disk size gets measured at larger granularity than that... ------------------------------------------------------------------------ [2021-01-15 15:01:35] girgias@php.net I can, the values change (for obvious reasons) but every time I run it it fails. ------------------------------------------------------------------------ [2021-01-15 13:32:39] cmb@php.net Hmm, unnecessarily verbose test case, and also flaky, since another process could interface (might be the reason why it's disabled on Travis). I also wonder why the memory_limit is set to 32M. Anyhow, can you reliably reproduce this test failure? ------------------------------------------------------------------------ [2021-01-15 03:41:31] girgias@php.net Description: ------------ A fresh minimal build of PHP on Fedora 33 produces one test failure with the following test: Test disk_free_space and its alias diskfreespace() functions : basic functionality [ext/standard/tests/file/disk_free_space_basic.phpt] DIFF: -- Free Space after writing to a file float(%f) 012+ Free Space Value Is Incorrect 013+ float(982391926784) 014+ float(982391926784) 012- Free Space Value Is Correct *** Testing with Binary Input *** float(%f) -- Test script: --------------- <?php $file_path = __DIR__; echo "*** Testing with existing directory ***\n"; var_dump( disk_free_space($file_path) ); var_dump( diskfreespace($file_path) ); echo "*** Testing with newly created directory ***\n"; $dir = "/disk_free_space"; mkdir($file_path.$dir); echo" \n Free Space before writing to a file\n"; $space1 = disk_free_space($file_path.$dir); var_dump( $space1 ); $fh = fopen($file_path.$dir."/disk_free_space.tmp", "a"); $data = str_repeat("x", 0xffff); fwrite($fh, $data); fclose($fh); echo "\n Free Space after writing to a file\n"; $space2 = disk_free_space($file_path.$dir); var_dump( $space2 ); if($space1 > $space2 ) echo "\n Free Space Value Is Correct\n"; else { echo "\n Free Space Value Is Incorrect\n"; var_dump($space1, $space2); } echo "*** Testing with Binary Input ***\n"; var_dump( disk_free_space(b"$file_path") ); echo"\n--- Done ---"; ?> Expected result: ---------------- --EXPECTF-- *** Testing with existing directory *** float(%f) float(%f) *** Testing with newly created directory *** Free Space before writing to a file float(%f) Free Space after writing to a file float(%f) Free Space Value Is Correct *** Testing with Binary Input *** float(%f) --- Done --- Actual result: -------------- *** Testing with existing directory *** float(982391926784) float(982391926784) *** Testing with newly created directory *** Free Space before writing to a file float(982391926784) Free Space after writing to a file float(982391926784) Free Space Value Is Incorrect float(982391926784) float(982391926784) *** Testing with Binary Input *** float(982391926784) --- Done --- ------------------------------------------------------------------------ -- Edit this bug report at https://bugs.php.net/bug.php?id=80629&edit=1

« previous php.bugs (#242849) next »