Use proper SELECT options in User::idFromName() for locking
authorAaron Schulz <aschulz@wikimedia.org>
Thu, 14 Jul 2016 03:45:20 +0000 (20:45 -0700)
committerMaxSem <maxsem.wiki@gmail.com>
Fri, 15 Jul 2016 00:22:00 +0000 (00:22 +0000)
Change-Id: Ia3ec245ecf5bb2fe7996828696b09f12a8ce10e1

includes/user/User.php

index 4a92f65..a774aba 100644 (file)
@@ -772,15 +772,15 @@ class User implements IDBAccessObject {
                        return self::$idCacheByName[$name];
                }
 
-               $db = ( $flags & self::READ_LATEST )
-                       ? wfGetDB( DB_MASTER )
-                       : wfGetDB( DB_SLAVE );
+               list( $index, $options ) = DBAccessObjectUtils::getDBOptions( $flags );
+               $db = wfGetDB( $index );
 
                $s = $db->selectRow(
                        'user',
                        [ 'user_id' ],
                        [ 'user_name' => $nt->getText() ],
-                       __METHOD__
+                       __METHOD__,
+                       $options
                );
 
                if ( $s === false ) {