Made User::touch no longer call load()
authorAaron Schulz <aschulz@wikimedia.org>
Tue, 2 Jun 2015 00:23:06 +0000 (17:23 -0700)
committerAaron Schulz <aschulz@wikimedia.org>
Tue, 2 Jun 2015 17:24:48 +0000 (17:24 +0000)
* Just reset mQuickTouched instead of guessing a new value
  in touch() for simplicity

Change-Id: Ibfe551cf061919ab18c4ff634d8db8f3c0eaf0a5

includes/User.php

index eb2a2dc..6d3911b 100644 (file)
@@ -2303,8 +2303,8 @@ class User implements IDBAccessObject {
        public function clearSharedCache() {
                $id = $this->getId();
                if ( $id ) {
-                       $cache = ObjectCache::getMainWANInstance();
-                       $cache->delete( wfMemcKey( 'user', 'id', $id ) );
+                       $key = wfMemcKey( 'user', 'id', $id );
+                       ObjectCache::getMainWANInstance()->delete( $key );
                }
        }
 
@@ -2331,14 +2331,11 @@ class User implements IDBAccessObject {
         * @since 1.25
         */
        public function touch() {
-               $this->load();
-
-               if ( $this->mId ) {
-                       $this->mQuickTouched = $this->newTouchedTimestamp();
-
-                       $cache = ObjectCache::getMainWANInstance();
-                       $key = wfMemcKey( 'user-quicktouched', 'id', $this->mId );
-                       $cache->touchCheckKey( $key );
+               $id = $this->getId();
+               if ( $id ) {
+                       $key = wfMemcKey( 'user-quicktouched', 'id', $id );
+                       ObjectCache::getMainWANInstance()->touchCheckKey( $key );
+                       $this->mQuickTouched = null;
                }
        }