-
Notifications
You must be signed in to change notification settings - Fork 70
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Tons of I/O operations caused by NullMetadata #45
Comments
this might be the reson for #44 |
I've found the same issue debugging an issue with the creation of cache files. My composer.lock files says I'm using v1.5.0. In Metadata/Cache/FileCache.php:
But if there are no annotations, then $metadata is an instance of NullMetadata and then $path points to ".cache.php". Later, when we try to reload the cache file, the "correct" name of the cache file is checked, not found, and so the code tries to generate the same cache file again. So for files with no annotations, you lose the benefit of the cache plus take a hit re-generating the "null" cache files each time. |
Thanks for the fix, @adrienbrault! |
While troubleshooting my production server performance I found out that metadata library is creating a lot of tmp files and renaming to the same name on every request, as there is no property "name" in NullMetadata class (it serializes to an empty class).
Debug information from FileCache::putClassMetadataInCache:
Example of operations from fatrace, that are made on every request:
The text was updated successfully, but these errors were encountered: