From 049b34b41ce07e12bb5da574cbfefdbb26e6a2ed Mon Sep 17 00:00:00 2001 From: Amir Sarabadani Date: Mon, 28 Aug 2023 10:52:19 +0200 Subject: Introduce RevisionSelectQueryBuilder Deprecating RevisionStore::getQueryInfo() and cleaning up a lot of code Also removing a brittle test that wasn't really testing anything. Bug: T344971 Change-Id: Ifd690dc8f030f86e3567a717eaeb830cb6dc703b --- includes/api/ApiQueryRevisions.php | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-) (limited to 'includes/api/ApiQueryRevisions.php') diff --git a/includes/api/ApiQueryRevisions.php b/includes/api/ApiQueryRevisions.php index 830baaf16347..97c450a52395 100644 --- a/includes/api/ApiQueryRevisions.php +++ b/includes/api/ApiQueryRevisions.php @@ -160,14 +160,13 @@ class ApiQueryRevisions extends ApiQueryRevisionsBase { $useIndex = []; if ( $resultPageSet === null ) { $this->parseParameters( $params ); - $opts = [ 'page' ]; + $queryBuilder = $this->revisionStore->newSelectQueryBuilder( $db ) + ->joinComment() + ->joinPage(); if ( $this->fld_user ) { - $opts[] = 'user'; + $queryBuilder->joinUser(); } - $revQuery = $this->revisionStore->getQueryInfo( $opts ); - $this->addTables( $revQuery['tables'] ); - $this->addFields( $revQuery['fields'] ); - $this->addJoinConds( $revQuery['joins'] ); + $this->getQueryBuilder()->merge( $queryBuilder ); } else { $this->limit = $this->getParameter( 'limit' ) ?: 10; // Always join 'page' so orphaned revisions are filtered out -- cgit v1.2.3