[buddypress-trac] [BuddyPress Trac] #7436: Very slow check_is_friend function
buddypress-trac
noreply at wordpress.org
Mon Feb 6 20:34:04 UTC 2017
#7436: Very slow check_is_friend function
--------------------------+--------------------
Reporter: januzi_pl | Owner:
Type: defect (bug) | Status: new
Priority: low | Milestone: 2.7.5
Component: Friends | Version: 2.7
Severity: major | Resolution:
Keywords: dev-feedback |
--------------------------+--------------------
Changes (by r-a-y):
* keywords: => dev-feedback
* version: => 2.7
Comment:
If a site has more than 10,000 users, I'd say it is not a small site :)
I think `BP_Friends_Friendship::get_friendships()` needs to be refactored.
Is there a need to fetch all of the user's friendship IDs in one fell
swoop in `BP_Friends_Friendship::get_friendships()` when we are just doing
a one-to-one check as is the case in
`BP_Friends_Friendship::check_is_friend()`?
Couldn't we cache with the following key - `wp_cache_set(
"{$initiator_id}:{$friend_id}", 'bp_friends_friendship_pair' )` - when
there is an initiator and friend ID?
The hard part is deleting the cache when a user is deleted. Or we would
just let that cache get stale since in theory, that cache wouldn't be
accessed again with the cachekey.
--
Ticket URL: <https://buddypress.trac.wordpress.org/ticket/7436#comment:6>
BuddyPress Trac <http://buddypress.org/>
BuddyPress Trac
More information about the buddypress-trac
mailing list