[wp-trac] [WordPress Trac] #22176: Cache the results of the posts_request_ids query
WordPress Trac
noreply at wordpress.org
Thu Jul 21 08:53:02 UTC 2022
#22176: Cache the results of the posts_request_ids query
-------------------------------------------------+-------------------------
Reporter: ryan | Owner:
| spacedmonkey
Type: enhancement | Status: assigned
Priority: normal | Milestone: 6.1
Component: Query | Version: 3.4.2
Severity: normal | Resolution:
Keywords: has-patch 2nd-opinion has-unit- | Focuses:
tests early needs-testing needs-dev-note | performance
-------------------------------------------------+-------------------------
Comment (by spacedmonkey):
Thanks for your feedback @dd32
So my plan is the following.
Release 1.
Introduce new param, `post_query_cache` for caching, default to false.
Opt in the following.
- Main query on page.
- `WP_Query` in recent posts block / widget.
- `get_user_data_from_wp_global_styles`
- `block_core_navigation_get_first_non_empty_navigation`
- `render_block_core_template_part`
- `get_block_templates`
Dev note to explain change.
Release 2.
Opt in all other usage of WP_Query in core, baring get_posts.
Release 3.
Make `post_query_cache` default to true.
This is all based on the idea, that as `cache_results` as basically not
ever cached anything, that developers do not know about it / use it. If
the patch does use `cache_results` param and we trust this params value,
then the patch is much easier and we can opt users into this function with
no issue.
Caching invalidating is pretty solid as the moment. In my patch the
biggest pain points where.
- Sticky posts.
- Taxonomy queries.
- Querying by parent, such as media, revision and auto saves.
It is worth noting that I am willing to risk enabling caching by default.
But I am trying to de-risk this. If there is an support for enabling by
default for other committers, I will update the patch.
--
Ticket URL: <https://core.trac.wordpress.org/ticket/22176#comment:33>
WordPress Trac <https://core.trac.wordpress.org/>
WordPress publishing platform
More information about the wp-trac
mailing list