jenkins-bot has submitted this change and it was merged. ( https://gerrit.wikimedia.org/r/383929 )
Change subject: Update for deprecation of selectFields() methods ...................................................................... Update for deprecation of selectFields() methods Various selectFields() methods were deprecated in MediaWiki core change Idcfd1556, replaced with getQueryInfo() methods. Change-Id: Id25b86dd415e2e3c6190a91faee2a3b815e50f61 Depends-On: Idcfd15568489d9f03a7ba4460e96610d33bc4089 --- M backend/FlaggableWikiPage.php M backend/FlaggedRevision.php M frontend/FlaggedRevsUI.hooks.php M frontend/RejectConfirmationFormUI.php M maintenance/cachePendingRevs.php 5 files changed, 70 insertions(+), 47 deletions(-) Approvals: Legoktm: Looks good to me, approved jenkins-bot: Verified diff --git a/backend/FlaggableWikiPage.php b/backend/FlaggableWikiPage.php index fcb1fc2..8409955 100644 --- a/backend/FlaggableWikiPage.php +++ b/backend/FlaggableWikiPage.php @@ -360,18 +360,21 @@ * @return mixed Database result resource, or false on failure */ protected function pageData( $dbr, $conditions, $options = [] ) { + $pageQuery = WikiPage::getQueryInfo(); $row = $dbr->selectRow( - [ 'page', 'flaggedpages', 'flaggedpage_config' ], + array_merge( $pageQuery['tables'], [ 'flaggedpages', 'flaggedpage_config' ] ), array_merge( - WikiPage::selectFields(), + $pageQuery['fields'], FRPageConfig::selectFields(), - [ 'fp_pending_since', 'fp_stable', 'fp_reviewed' ] ), + [ 'fp_pending_since', 'fp_stable', 'fp_reviewed' ] + ), $conditions, __METHOD__, $options, - [ + $pageQuery['joins'] + [ 'flaggedpages' => [ 'LEFT JOIN', 'fp_page_id = page_id' ], - 'flaggedpage_config' => [ 'LEFT JOIN', 'fpc_page_id = page_id' ] ] + 'flaggedpage_config' => [ 'LEFT JOIN', 'fpc_page_id = page_id' ], + ] ); return $row; } diff --git a/backend/FlaggedRevision.php b/backend/FlaggedRevision.php index 3e8922a..b85b807 100644 --- a/backend/FlaggedRevision.php +++ b/backend/FlaggedRevision.php @@ -119,18 +119,18 @@ return null; // short-circuit query } # Skip deleted revisions + $frQuery = self::getQueryInfo(); $row = $db->selectRow( - [ 'flaggedrevs', 'revision' ], - self::selectFields(), + $frQuery['tables'], + $frQuery['fields'], [ 'fr_page_id' => $pageId, 'fr_rev_id' => $revId, - 'rev_id = fr_rev_id', - 'rev_page = fr_page_id', // sanity $db->bitAnd( 'rev_deleted', Revision::DELETED_TEXT ) . ' = 0' ], __METHOD__, - $options + $options, + $frQuery['joins'] ); # Sorted from highest to lowest, so just take the first one if any if ( $row ) { @@ -169,18 +169,18 @@ return null; // short-circuit query } # Check tracking tables + $frQuery = self::getQueryInfo(); $row = $db->selectRow( - [ 'flaggedpages', 'flaggedrevs', 'revision' ], - self::selectFields(), + array_merge( [ 'flaggedpages' ], $frQuery['tables'] ), + $frQuery['fields'], [ 'fp_page_id' => $pageId, 'fr_rev_id = fp_stable', - 'rev_id = fr_rev_id', - 'rev_page = fr_page_id', // sanity $db->bitAnd( 'rev_deleted', Revision::DELETED_TEXT ) . ' = 0', // sanity ], __METHOD__, - $options + $options, + $frQuery['joins'] ); if ( $row ) { $frev = new self( $row ); @@ -212,18 +212,17 @@ return null; // short-circuit query } # Skip deleted revisions + $frQuery = self::getQueryInfo(); $row = $db->selectRow( - [ 'flaggedrevs', 'revision', 'page' ], - self::selectFields(), + $frQuery['tables'], + $frQuery['fields'], [ 'fr_rev_id' => $revId, - 'rev_id = fr_rev_id', - 'rev_page = fr_page_id', // sanity - 'page_id = rev_page', $db->bitAnd( 'rev_deleted', Revision::DELETED_TEXT ) . ' = 0', ], __METHOD__, - $options + $options, + $frQuery['joins'] ); if ( $row ) { $frev = new self( $row ); @@ -291,16 +290,18 @@ ]; $options['ORDER BY'] = 'fr_rev_timestamp DESC'; + $frQuery = self::getQueryInfo(); $row = null; if ( $precedence !== 'latest' ) { # Look for the latest pristine revision... if ( FlaggedRevs::pristineVersions() ) { $prow = $db->selectRow( - [ 'flaggedrevs', 'revision' ], - self::selectFields(), + $frQuery['tables'], + $frQuery['fields'], array_merge( $baseConds, [ 'fr_quality' => FR_PRISTINE ] ), __METHOD__, - $options + $options, + $frQuery['joins'] ); # Looks like a plausible revision $row = $prow ? $prow : $row; @@ -314,11 +315,12 @@ ? [ 'fr_rev_timestamp > '.$db->addQuotes( $row->fr_rev_timestamp ) ] : []; $qrow = $db->selectRow( - [ 'flaggedrevs', 'revision' ], - self::selectFields(), + $frQuery['tables'], + $frQuery['fields'], array_merge( $baseConds, [ 'fr_quality' => FR_QUALITY ], $newerClause ), __METHOD__, - $options + $options, + $frQuery['joins'] ); $row = $qrow ? $qrow : $row; } @@ -326,11 +328,12 @@ # Do we have one? If not, try the latest reviewed revision... if ( !$row ) { $row = $db->selectRow( - [ 'flaggedrevs', 'revision' ], - self::selectFields(), + $frQuery['tables'], + $frQuery['fields'], $baseConds, __METHOD__, - $options + $options, + $frQuery['joins'] ); if ( !$row ) { return null; @@ -428,16 +431,25 @@ } /** - * Get select fields for FlaggedRevision DB row (flaggedrevs/revision tables) + * Get query info for FlaggedRevision DB row (flaggedrevs/revision tables) * @return array */ - public static function selectFields() { - return array_merge( - Revision::selectFields(), - [ 'fr_rev_id', 'fr_page_id', 'fr_rev_timestamp', + public static function getQueryInfo() { + $revQuery = Revision::getQueryInfo(); + return [ + 'tables' => array_merge( [ 'flaggedrevs' ], $revQuery['tables'] ), + 'fields' => array_merge( $revQuery['fields'], [ + 'fr_rev_id', 'fr_page_id', 'fr_rev_timestamp', 'fr_user', 'fr_timestamp', 'fr_quality', 'fr_tags', 'fr_flags', - 'fr_img_name', 'fr_img_sha1', 'fr_img_timestamp' ] - ); + 'fr_img_name', 'fr_img_sha1', 'fr_img_timestamp' + ] ), + 'joins' => [ + 'revision' => [ 'JOIN', [ + 'rev_id = fr_rev_id', + 'rev_page = fr_page_id', // sanity + ] ], + ], + ]; } /** diff --git a/frontend/FlaggedRevsUI.hooks.php b/frontend/FlaggedRevsUI.hooks.php index 6393061..9e6fd0e 100644 --- a/frontend/FlaggedRevsUI.hooks.php +++ b/frontend/FlaggedRevsUI.hooks.php @@ -383,7 +383,7 @@ # order by, then append the rest of them to our two. It would be # REALLY nice if we handled this automagically in makeSelectOptions() # or something *sigh* - $groupBy = OldLocalFile::selectFields(); + $groupBy = OldLocalFile::getQueryInfo()['fields']; unset( $groupBy[ array_search( 'oi_name', $groupBy ) ] ); unset( $groupBy[ array_search( 'oi_timestamp', $groupBy ) ] ); $opts['GROUP BY'] = 'oi_name,oi_timestamp,' . implode( ',', $groupBy ); diff --git a/frontend/RejectConfirmationFormUI.php b/frontend/RejectConfirmationFormUI.php index e5fab51..644812a 100644 --- a/frontend/RejectConfirmationFormUI.php +++ b/frontend/RejectConfirmationFormUI.php @@ -33,8 +33,10 @@ $form = '<div class="plainlinks">'; $dbr = wfGetDB( DB_REPLICA ); - $res = $dbr->select( 'revision', - Revision::selectFields(), + $revQuery = Revision::getQueryInfo(); + $res = $dbr->select( + $revQuery['tables'], + $revQuery['fields'], [ 'rev_page' => $oldRev->getPage(), 'rev_timestamp > ' . $dbr->addQuotes( @@ -43,7 +45,8 @@ $dbr->timestamp( $newRev->getTimestamp() ) ) ], __METHOD__, - [ 'ORDER BY' => 'rev_timestamp ASC', 'LIMIT' => 251 ] // sanity check + [ 'ORDER BY' => 'rev_timestamp ASC', 'LIMIT' => 251 ], // sanity check + $revQuery['joins'] ); if ( !$dbr->numRows( $res ) ) { return [ '', 'review_bad_oldid' ]; diff --git a/maintenance/cachePendingRevs.php b/maintenance/cachePendingRevs.php index 460689f..d637464 100644 --- a/maintenance/cachePendingRevs.php +++ b/maintenance/cachePendingRevs.php @@ -23,16 +23,21 @@ public function execute() { global $wgUser; $dbr = wfGetDB( DB_REPLICA ); + $revQuery = Revision::getQueryInfo(); + $pageQuery = WikiPage::getQueryInfo(); $ret = $dbr->select( - [ 'flaggedpages', 'revision', 'page' ], - array_merge( Revision::selectFields(), [ $dbr->tableName( 'page' ) . '.*' ] ), - [ 'fp_pending_since IS NOT NULL', - 'page_id = fp_page_id', - 'rev_page = fp_page_id', + array_merge( [ 'flaggedpages' ], $revQuery['tables'], $pageQuery['tables'] ), + array_merge( $revQuery['fields'], $pageQuery['fields'] ), + [ + 'fp_pending_since IS NOT NULL', 'rev_timestamp >= fp_pending_since' ], __METHOD__, - [ 'ORDER BY' => 'fp_pending_since DESC' ] + [ 'ORDER BY' => 'fp_pending_since DESC' ], + [ + 'revision' => [ 'JOIN', 'rev_page = fp_page_id' ], + 'page' => [ 'JOIN', 'page_id = fp_page_id' ], + ] + $revQuery['joins'] + $pageQuery['joins'] ); foreach ( $ret as $row ) { $title = Title::newFromRow( $row ); -- To view, visit https://gerrit.wikimedia.org/r/383929 To unsubscribe, visit https://gerrit.wikimedia.org/r/settings Gerrit-MessageType: merged Gerrit-Change-Id: Id25b86dd415e2e3c6190a91faee2a3b815e50f61 Gerrit-PatchSet: 1 Gerrit-Project: mediawiki/extensions/FlaggedRevs Gerrit-Branch: master Gerrit-Owner: Anomie <bjor...@wikimedia.org> Gerrit-Reviewer: Daniel Kinzler <daniel.kinz...@wikimedia.de> Gerrit-Reviewer: Jackmcbarn <jackmcb...@gmail.com> Gerrit-Reviewer: Legoktm <lego...@member.fsf.org> Gerrit-Reviewer: Tim Starling <tstarl...@wikimedia.org> Gerrit-Reviewer: jenkins-bot <> _______________________________________________ MediaWiki-commits mailing list MediaWiki-commits@lists.wikimedia.org https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits