X-Git-Url: http://git.heureux-cyclage.org/?a=blobdiff_plain;f=maintenance%2FmigrateUserGroup.php;h=396be1d7ea4cdc8a421f2a3f49ce2d9132daaefc;hb=e9bc1588fb609da6729c1fc010333023c1e29a85;hp=6903365b47e3e8c2b32339e03596315c6905a32b;hpb=f10c9815e69b59844c178d218640bd1ac0435896;p=lhc%2Fweb%2Fwiklou.git diff --git a/maintenance/migrateUserGroup.php b/maintenance/migrateUserGroup.php index 6903365b47..396be1d7ea 100644 --- a/maintenance/migrateUserGroup.php +++ b/maintenance/migrateUserGroup.php @@ -31,7 +31,7 @@ require_once __DIR__ . '/Maintenance.php'; class MigrateUserGroup extends Maintenance { public function __construct() { parent::__construct(); - $this->mDescription = "Re-assign users from an old group to a new one"; + $this->addDescription( 'Re-assign users from an old group to a new one' ); $this->addArg( 'oldgroup', 'Old user group key', true ); $this->addArg( 'newgroup', 'New user group key', true ); $this->setBatchSize( 200 ); @@ -41,11 +41,11 @@ class MigrateUserGroup extends Maintenance { $count = 0; $oldGroup = $this->getArg( 0 ); $newGroup = $this->getArg( 1 ); - $dbw = wfGetDB( DB_MASTER ); + $dbw = $this->getDB( DB_MASTER ); $start = $dbw->selectField( 'user_groups', 'MIN(ug_user)', - array( 'ug_group' => $oldGroup ), __FUNCTION__ ); + [ 'ug_group' => $oldGroup ], __FUNCTION__ ); $end = $dbw->selectField( 'user_groups', 'MAX(ug_user)', - array( 'ug_group' => $oldGroup ), __FUNCTION__ ); + [ 'ug_group' => $oldGroup ], __FUNCTION__ ); if ( $start === null ) { $this->error( "Nothing to do - no users in the '$oldGroup' group", true ); } @@ -58,13 +58,13 @@ class MigrateUserGroup extends Maintenance { $affected = 0; $this->output( "Doing users $blockStart to $blockEnd\n" ); - $dbw->begin( __METHOD__ ); + $this->beginTransaction( $dbw, __METHOD__ ); $dbw->update( 'user_groups', - array( 'ug_group' => $newGroup ), - array( 'ug_group' => $oldGroup, - "ug_user BETWEEN $blockStart AND $blockEnd" ), + [ 'ug_group' => $newGroup ], + [ 'ug_group' => $oldGroup, + "ug_user BETWEEN $blockStart AND $blockEnd" ], __METHOD__, - array( 'IGNORE' ) + [ 'IGNORE' ] ); $affected += $dbw->affectedRows(); // Delete rows that the UPDATE operation above had to ignore. @@ -72,20 +72,20 @@ class MigrateUserGroup extends Maintenance { // Updating the row for the old group membership failed since // user/group is UNIQUE. $dbw->delete( 'user_groups', - array( 'ug_group' => $oldGroup, - "ug_user BETWEEN $blockStart AND $blockEnd" ), + [ 'ug_group' => $oldGroup, + "ug_user BETWEEN $blockStart AND $blockEnd" ], __METHOD__ ); $affected += $dbw->affectedRows(); - $dbw->commit( __METHOD__ ); + $this->commitTransaction( $dbw, __METHOD__ ); // Clear cache for the affected users (bug 40340) if ( $affected > 0 ) { // XXX: This also invalidates cache of unaffected users that // were in the new group and not in the group. $res = $dbw->select( 'user_groups', 'ug_user', - array( 'ug_group' => $newGroup, - "ug_user BETWEEN $blockStart AND $blockEnd" ), + [ 'ug_group' => $newGroup, + "ug_user BETWEEN $blockStart AND $blockEnd" ], __METHOD__ ); if ( $res !== false ) {