Use binary format for state set cache for better performance and OPcache exclusion #144
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
I want to disable storing the state set in OPcache by default for the reasons described in the docs of this PR.However, the current solution usingini_set('opcache.enable', '0');
won't work because this affects all other scripts loaded after thestate_set.php
as well. However, I couldn't find a way to disable OPcache for just one specific file while still dumping that file as pure PHP because that's still a lot faster than loading all the states from SQLite...Any hints welcome 😊Using
pack()
andunpack()
was way faster in my tests than just a regular PHP array so let's drop OPcache support completely for better interoperability.