Description

cache_filestore has a hack, suggesting that PHPUnit tests fail, but normal operation is correct.

My estimation of the situation is that under PHPUnit, clearstatcache() wasn't called at some point, which required the guess of the larger size. The current PHPUnit tests pass without the hack.

However all this exposes the issue of race conditions and caching between what the filesize is and what's actually read. To remove that, we will not just use fread to collect all the data until the end of file is reached.