From c91cc078bf24407abfb1a8702508c3df69d4785a Mon Sep 17 00:00:00 2001 From: Amir Sarabadani Date: Tue, 27 Nov 2018 18:12:06 +0100 Subject: [PATCH] Migrate Api modules from tag_summary table to change_tag Bug: T209525 Change-Id: I7624d86bbff675eab7fee97adf3b7e2e6753f81d --- includes/api/ApiQueryAllDeletedRevisions.php | 6 +----- includes/api/ApiQueryAllRevisions.php | 6 +----- includes/api/ApiQueryDeletedRevisions.php | 6 +----- includes/api/ApiQueryDeletedrevs.php | 6 +----- includes/api/ApiQueryRecentChanges.php | 4 +--- includes/api/ApiQueryRevisions.php | 6 +----- includes/api/ApiQueryUserContribs.php | 6 +----- 7 files changed, 7 insertions(+), 33 deletions(-) diff --git a/includes/api/ApiQueryAllDeletedRevisions.php b/includes/api/ApiQueryAllDeletedRevisions.php index 7b4f15e517..066a644731 100644 --- a/includes/api/ApiQueryAllDeletedRevisions.php +++ b/includes/api/ApiQueryAllDeletedRevisions.php @@ -127,11 +127,7 @@ class ApiQueryAllDeletedRevisions extends ApiQueryRevisionsBase { } if ( $this->fld_tags ) { - $this->addTables( 'tag_summary' ); - $this->addJoinConds( - [ 'tag_summary' => [ 'LEFT JOIN', [ 'ar_rev_id=ts_rev_id' ] ] ] - ); - $this->addFields( 'ts_tags' ); + $this->addFields( [ 'ts_tags' => ChangeTags::makeTagSummarySubquery( 'archive' ) ] ); } if ( !is_null( $params['tag'] ) ) { diff --git a/includes/api/ApiQueryAllRevisions.php b/includes/api/ApiQueryAllRevisions.php index 922d2c3e25..5343c33747 100644 --- a/includes/api/ApiQueryAllRevisions.php +++ b/includes/api/ApiQueryAllRevisions.php @@ -140,11 +140,7 @@ class ApiQueryAllRevisions extends ApiQueryRevisionsBase { $this->addTimestampWhereRange( $tsField, $dir, $params['start'], $params['end'] ); if ( $this->fld_tags ) { - $this->addTables( 'tag_summary' ); - $this->addJoinConds( - [ 'tag_summary' => [ 'LEFT JOIN', [ 'rev_id=ts_rev_id' ] ] ] - ); - $this->addFields( 'ts_tags' ); + $this->addFields( [ 'ts_tags' => ChangeTags::makeTagSummarySubquery( 'revision' ) ] ); } if ( $params['user'] !== null ) { diff --git a/includes/api/ApiQueryDeletedRevisions.php b/includes/api/ApiQueryDeletedRevisions.php index 8f71c1c4d7..518c428dbd 100644 --- a/includes/api/ApiQueryDeletedRevisions.php +++ b/includes/api/ApiQueryDeletedRevisions.php @@ -79,11 +79,7 @@ class ApiQueryDeletedRevisions extends ApiQueryRevisionsBase { } if ( $this->fld_tags ) { - $this->addTables( 'tag_summary' ); - $this->addJoinConds( - [ 'tag_summary' => [ 'LEFT JOIN', [ 'ar_rev_id=ts_rev_id' ] ] ] - ); - $this->addFields( 'ts_tags' ); + $this->addFields( [ 'ts_tags' => ChangeTags::makeTagSummarySubquery( 'archive' ) ] ); } if ( !is_null( $params['tag'] ) ) { diff --git a/includes/api/ApiQueryDeletedrevs.php b/includes/api/ApiQueryDeletedrevs.php index e84b9b2247..856653e7b5 100644 --- a/includes/api/ApiQueryDeletedrevs.php +++ b/includes/api/ApiQueryDeletedrevs.php @@ -133,11 +133,7 @@ class ApiQueryDeletedrevs extends ApiQueryBase { } if ( $fld_tags ) { - $this->addTables( 'tag_summary' ); - $this->addJoinConds( - [ 'tag_summary' => [ 'LEFT JOIN', [ 'ar_rev_id=ts_rev_id' ] ] ] - ); - $this->addFields( 'ts_tags' ); + $this->addFields( [ 'ts_tags' => ChangeTags::makeTagSummarySubquery( 'archive' ) ] ); } if ( !is_null( $params['tag'] ) ) { diff --git a/includes/api/ApiQueryRecentChanges.php b/includes/api/ApiQueryRecentChanges.php index b1dcf0dba1..303668ec07 100644 --- a/includes/api/ApiQueryRecentChanges.php +++ b/includes/api/ApiQueryRecentChanges.php @@ -339,9 +339,7 @@ class ApiQueryRecentChanges extends ApiQueryGeneratorBase { $resultPageSet && $params['generaterevisions'] ); if ( $this->fld_tags ) { - $this->addTables( 'tag_summary' ); - $this->addJoinConds( [ 'tag_summary' => [ 'LEFT JOIN', [ 'rc_id=ts_rc_id' ] ] ] ); - $this->addFields( 'ts_tags' ); + $this->addFields( [ 'ts_tags' => ChangeTags::makeTagSummarySubquery( 'recentchanges' ) ] ); } if ( $this->fld_sha1 ) { diff --git a/includes/api/ApiQueryRevisions.php b/includes/api/ApiQueryRevisions.php index ac7ee0ae9f..825e23d67c 100644 --- a/includes/api/ApiQueryRevisions.php +++ b/includes/api/ApiQueryRevisions.php @@ -185,11 +185,7 @@ class ApiQueryRevisions extends ApiQueryRevisionsBase { } if ( $this->fld_tags ) { - $this->addTables( 'tag_summary' ); - $this->addJoinConds( - [ 'tag_summary' => [ 'LEFT JOIN', [ 'rev_id=ts_rev_id' ] ] ] - ); - $this->addFields( 'ts_tags' ); + $this->addFields( [ 'ts_tags' => ChangeTags::makeTagSummarySubquery( 'revision' ) ] ); } if ( $params['tag'] !== null ) { diff --git a/includes/api/ApiQueryUserContribs.php b/includes/api/ApiQueryUserContribs.php index f16f958eb1..95315f3e65 100644 --- a/includes/api/ApiQueryUserContribs.php +++ b/includes/api/ApiQueryUserContribs.php @@ -478,11 +478,7 @@ class ApiQueryUserContribs extends ApiQueryBase { $this->addFieldsIf( 'rc_patrolled', $this->fld_patrolled ); if ( $this->fld_tags ) { - $this->addTables( 'tag_summary' ); - $this->addJoinConds( - [ 'tag_summary' => [ 'LEFT JOIN', [ $idField . ' = ts_rev_id' ] ] ] - ); - $this->addFields( 'ts_tags' ); + $this->addFields( [ 'ts_tags' => ChangeTags::makeTagSummarySubquery( 'revision' ) ] ); } if ( isset( $this->params['tag'] ) ) { -- 2.20.1