Problem/Motivation
The performance page lists the rules that make a query count comparable: warm the caches, name the scenario, say whether a figure was measured or inferred. It does not mention the one thing that makes a cache measurement meaningless. KernelTestBase puts every cache bin on the memory backend, so a cache read and a cache invalidation are not database statements there at all. A kernel budget test cannot see either, which means a change that adds or removes cache traffic reads as costing exactly nothing, and reads as a pass.
The guidance was written for #3616990: Keep the entity cache deletes out of the transaction the slot lock is held in and lives only on its merge request, which is parked behind a postponed issue and eighty-two commits behind, so a reader of the performance page will not find it. It stands on its own: it is true whether or not that change ever lands.
Proposed resolution
Add the rule to the list on the performance page, beside the three already there, saying to measure cache work in a functional test where the bins are the database. The sentence above the list counts the rules, so it says four now rather than three.
Remaining tasks
None.
Data model changes
None.
AI-Generated: Yes (Claude Code found the guidance stranded on a parked merge request while reviewing what a release would ship, and drafted this summary and the documentation change. I reviewed both before posting.)
Issue fork yoyaku-3620435
Show commands
Start within a Git clone of the project using the version control instructions.
Or, if you do not have SSH keys set up on git.drupalcode.org:
Comments
Comment #3
mably commentedComment #5
mably commented