#54574 closed enhancement (fixed)
Add wp_cache_*_multiple function
Reported by: |
|
Owned by: |
|
---|---|---|---|
Milestone: | 6.0 | Priority: | normal |
Severity: | normal | Version: | |
Component: | Cache API | Keywords: | has-patch has-unit-tests needs-docs has-dev-note |
Focuses: | performance | Cc: |
Description
The wp_cache_get_multiple
function was added in #20875. This allow for multiple cache keys be collected in one request. To complete the api, we should add the full CRUD functions. So
wp_cache_add_multiple
wp_cache_delete_multiple
wp_cache_update_multiple
In core these would just be wrapper for core functions to allow multiple keys to passed in one function call. But would allow object cache plugin developers to implement them if their backend support it.
Change History (23)
#2
@
3 years ago
One the major things to need to decide to function signature. Here are some function signatures to consider.
function wp_cache_multiple_set( array $keys, array $values, array $groups )
function wp_cache_multiple_set( array $data )
$data = array( array( 'key' => 'test', 'value' => 'tool', 'group' => 'test'));
function wp_cache_multiple_set( array $key_value_pair, $group )
#3
follow-up:
โย 5
@
3 years ago
These functions can be used in the following places.
- update_meta_cache
- update_post_cache
- update_term_cache
- clean_object_term_cache
- clean_term_cache
- wp_delete_post
This ticket was mentioned in โPR #2018 on โWordPress/wordpress-develop by โspacedmonkey.
3 years ago
#4
- Keywords has-patch added; needs-patch removed
Trac ticket: https://core.trac.wordpress.org/ticket/54574
#5
in reply to:
โย 3
@
3 years ago
This brings up my question: can we leverage these new functions in core already?
Is the plan to update the existing cache functions to accept multiple keys? Should these new functions be "private" or internal (start with _
)?
Replying to spacedmonkey:
These functions can be used in the following places.
- update_meta_cache
- update_post_cache
- update_term_cache
- clean_object_term_cache
- clean_term_cache
- wp_delete_post
#6
@
3 years ago
- Keywords has-unit-tests added
- Milestone changed from Awaiting Review to 6.0
- Owner set to spacedmonkey
- Status changed from new to assigned
#7
@
3 years ago
Is the plan to update the existing cache functions to accept multiple keys? Should these new functions be "private" or internal (start with _)?
Good flag @adamsilverstein and YES! I have created a follow on ticket at #55029
โtillkruss commented on โPR #2018:
3 years ago
#8
@spacedmonkey This looks great. I've got one thought, what about atomicity?
Should we be adding an optional parameter to indicate that we'd want the call to be atomic? Whether the cache implementation supports or is able to, it is up to it.
โtillkruss commented on โPR #2018:
3 years ago
#9
@spacedmonkey This looks great. I've got one thought, what about atomicity?
Should we be adding an optional parameter to indicate that we'd want the call to be atomic? Whether the cache implementation supports or is able to, it is up to it.
โspacedmonkey commented on โPR #2018:
3 years ago
#10
CC @mitogh
โspacedmonkey commented on โPR #2018:
3 years ago
#12
Merged
#14
@
3 years ago
This PR is ready for re-review.
This comment is for https://core.trac.wordpress.org/ticket/55029, right?
One of the engineers at Pagely was just asking me about batch API methods for cache operations, so ๐