From a626f32296f4fc68c2bedd33b94774f86c16c1c1 Mon Sep 17 00:00:00 2001 From: ryan Date: Mon, 19 Dec 2005 19:14:22 +0000 Subject: [PATCH] Cache user ids and user logins separately to avoid collision. Props donncha. fixes #2096 git-svn-id: http://svn.automattic.com/wordpress/trunk@3330 1a063a9b-81f0-0310-95a4-ce76da25c4cd --- wp-admin/admin-db.php | 4 ++-- wp-includes/cache.php | 4 ++-- wp-includes/functions.php | 4 ++-- wp-includes/pluggable-functions.php | 6 +++--- wp-includes/registration-functions.php | 2 +- 5 files changed, 10 insertions(+), 10 deletions(-) diff --git a/wp-admin/admin-db.php b/wp-admin/admin-db.php index 427df20f57..8b655a4e61 100644 --- a/wp-admin/admin-db.php +++ b/wp-admin/admin-db.php @@ -241,7 +241,7 @@ function wp_delete_user($id, $reassign = 'novalue') { $wpdb->query("DELETE FROM $wpdb->usermeta WHERE user_id = '$id'"); wp_cache_delete($id, 'users'); - wp_cache_delete($user->user_login, 'users'); + wp_cache_delete($user->user_login, 'userlogins'); do_action('delete_user', $id); @@ -354,4 +354,4 @@ function comment_exists($comment_author, $comment_date) { WHERE comment_author = '$comment_author' AND comment_date = '$comment_date'"); } -?> \ No newline at end of file +?> diff --git a/wp-includes/cache.php b/wp-includes/cache.php index a0d8c1259a..ecad5c6a4d 100644 --- a/wp-includes/cache.php +++ b/wp-includes/cache.php @@ -58,7 +58,7 @@ class WP_Object_Cache { var $cache = array (); var $dirty_objects = array (); var $non_existant_objects = array (); - var $global_groups = array ('users', 'usermeta'); + var $global_groups = array ('users', 'userlogins', 'usermeta'); var $blog_id; var $cold_cache_hits = 0; var $warm_cache_hits = 0; @@ -370,4 +370,4 @@ class WP_Object_Cache { $this->blog_id = md5($blog_id); } } -?> \ No newline at end of file +?> diff --git a/wp-includes/functions.php b/wp-includes/functions.php index fb87dd7977..b78612454b 100644 --- a/wp-includes/functions.php +++ b/wp-includes/functions.php @@ -2212,7 +2212,7 @@ function update_usermeta( $user_id, $meta_key, $meta_value ) { $user = get_userdata($user_id); wp_cache_delete($user_id, 'users'); - wp_cache_delete($user->user_login, 'users'); + wp_cache_delete($user->user_login, 'userlogins'); return true; } @@ -2234,7 +2234,7 @@ function delete_usermeta( $user_id, $meta_key, $meta_value = '' ) { $user = get_userdata($user_id); wp_cache_delete($user_id, 'users'); - wp_cache_delete($user->user_login, 'users'); + wp_cache_delete($user->user_login, 'userlogins'); return true; } diff --git a/wp-includes/pluggable-functions.php b/wp-includes/pluggable-functions.php index 444fb029a6..f0e917da4a 100644 --- a/wp-includes/pluggable-functions.php +++ b/wp-includes/pluggable-functions.php @@ -58,7 +58,7 @@ function get_userdata( $user_id ) { } //end if wp_cache_add($user_id, $user, 'users'); - wp_cache_add($user->user_login, $user, 'users'); + wp_cache_add($user->user_login, $user, 'userlogins'); return $user; } @@ -78,7 +78,7 @@ function get_userdatabylogin($user_login) { if ( empty( $user_login ) ) return false; - $userdata = wp_cache_get($user_login, 'users'); + $userdata = wp_cache_get($user_login, 'userlogins'); if ( $userdata ) return $userdata; @@ -101,7 +101,7 @@ function get_userdatabylogin($user_login) { } wp_cache_add($user->ID, $user, 'users'); - wp_cache_add($user->user_login, $user, 'users'); + wp_cache_add($user->user_login, $user, 'userlogins'); return $user; diff --git a/wp-includes/registration-functions.php b/wp-includes/registration-functions.php index bafce8590e..3adc18442f 100644 --- a/wp-includes/registration-functions.php +++ b/wp-includes/registration-functions.php @@ -70,7 +70,7 @@ function wp_insert_user($userdata) { } wp_cache_delete($user_id, 'users'); - wp_cache_delete($user_login, 'users'); + wp_cache_delete($user_login, 'userlogins'); if ( $update ) do_action('profile_update', $user_id);