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

Reply via email to