Make WordPress Core


Ignore:
Timestamp:
03/10/2023 04:27:23 PM (4 years ago)
Author:
spacedmonkey
Message:

Cache API: Introduce new queries cache groups.

Give developers more control over how query caches are handled within an object caches. Now all caches that cache the result of a query, are cached in a group that is suffixed with -queries. Developers can use these groups, to add custom cache invalidation rules or to make them none persistent.

Props spacedmonkey, owi, tillkruess, skithund, peterwilsoncc, flixos90, sergeybiryukov, mukesh27.
Fixes #57625.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/wp-includes/general-template.php

    r55515 r55526  
    20552055                $key     = md5( $query );
    20562056                $key     = "wp_get_archives:$key:$last_changed";
    2057                 $results = wp_cache_get( $key, 'posts' );
     2057                $results = wp_cache_get( $key, 'post-queries' );
    20582058                if ( ! $results ) {
    20592059                        $results = $wpdb->get_results( $query );
    2060                         wp_cache_set( $key, $results, 'posts' );
     2060                        wp_cache_set( $key, $results, 'post-queries' );
    20612061                }
    20622062                if ( $results ) {
     
    20802080                $key     = md5( $query );
    20812081                $key     = "wp_get_archives:$key:$last_changed";
    2082                 $results = wp_cache_get( $key, 'posts' );
     2082                $results = wp_cache_get( $key, 'post-queries' );
    20832083                if ( ! $results ) {
    20842084                        $results = $wpdb->get_results( $query );
    2085                         wp_cache_set( $key, $results, 'posts' );
     2085                        wp_cache_set( $key, $results, 'post-queries' );
    20862086                }
    20872087                if ( $results ) {
     
    21042104                $key     = md5( $query );
    21052105                $key     = "wp_get_archives:$key:$last_changed";
    2106                 $results = wp_cache_get( $key, 'posts' );
     2106                $results = wp_cache_get( $key, 'post-queries' );
    21072107                if ( ! $results ) {
    21082108                        $results = $wpdb->get_results( $query );
    2109                         wp_cache_set( $key, $results, 'posts' );
     2109                        wp_cache_set( $key, $results, 'post-queries' );
    21102110                }
    21112111                if ( $results ) {
     
    21302130                $key     = md5( $query );
    21312131                $key     = "wp_get_archives:$key:$last_changed";
    2132                 $results = wp_cache_get( $key, 'posts' );
     2132                $results = wp_cache_get( $key, 'post-queries' );
    21332133                if ( ! $results ) {
    21342134                        $results = $wpdb->get_results( $query );
    2135                         wp_cache_set( $key, $results, 'posts' );
     2135                        wp_cache_set( $key, $results, 'post-queries' );
    21362136                }
    21372137                $arc_w_last = '';
     
    21692169                $key     = md5( $query );
    21702170                $key     = "wp_get_archives:$key:$last_changed";
    2171                 $results = wp_cache_get( $key, 'posts' );
     2171                $results = wp_cache_get( $key, 'post-queries' );
    21722172                if ( ! $results ) {
    21732173                        $results = $wpdb->get_results( $query );
    2174                         wp_cache_set( $key, $results, 'posts' );
     2174                        wp_cache_set( $key, $results, 'post-queries' );
    21752175                }
    21762176                if ( $results ) {
Note: See TracChangeset for help on using the changeset viewer.