jenkins-bot has submitted this change and it was merged. (
https://gerrit.wikimedia.org/r/365177 )
Change subject: Fix DB timeout from API queries without project specified
......................................................................
Fix DB timeout from API queries without project specified
Bug: T170638
Change-Id: I2c878f173b7f9ec353750b70ed1b19df019a47d9
---
M api/ApiQueryProjectPages.php
M i18n/en.json
2 files changed, 8 insertions(+), 7 deletions(-)
Approvals:
MaxSem: Looks good to me, approved
jenkins-bot: Verified
diff --git a/api/ApiQueryProjectPages.php b/api/ApiQueryProjectPages.php
index b903cb4..dc0c4e5 100644
--- a/api/ApiQueryProjectPages.php
+++ b/api/ApiQueryProjectPages.php
@@ -42,8 +42,8 @@
$this->buildDbQuery( $params, $resultPageSet );
- // If matching projects were found, or no specific projects
were requested, run the query.
- if ( $this->projectIds || !$params['projects'] ) {
+ // If matching projects were found, run the query.
+ if ( $this->projectIds ) {
$db_res = $this->select( __METHOD__ );
// Otherwise, just set the result to an empty array (still
works with foreach).
} else {
@@ -157,8 +157,8 @@
$this->handleQueryContinuation( $params['continue'] );
}
- // If more than 1 project is requested (or all projects), order
by project first.
- if ( count( $this->projectIds ) !== 1 ) {
+ // If more than 1 project is requested, order by project first.
+ if ( count( $this->projectIds ) > 1 ) {
$this->addOption( 'ORDER BY', 'pa_project_id,
pa_page_id' );
} else {
$this->addOption( 'ORDER BY', 'pa_page_id' );
@@ -205,7 +205,8 @@
ApiBase::PARAM_TYPE => 'boolean',
],
'projects' => [
- ApiBase::PARAM_ISMULTI => true
+ ApiBase::PARAM_ISMULTI => true,
+ ApiBase::PARAM_REQUIRED => true,
],
'limit' => [
ApiBase::PARAM_DFLT => '10',
@@ -222,7 +223,7 @@
public function getExamplesMessages() {
return [
- 'action=query&list=projectpages'
+
'action=query&list=projectpages&wppprojects=Medicine|Anatomy'
=>
'apihelp-query+projectpages-example-simple-1',
'action=query&list=projectpages&wppprojects=Medicine&wppassessments=true'
=>
'apihelp-query+projectpages-example-simple-2',
diff --git a/i18n/en.json b/i18n/en.json
index d5594e3..209877e 100644
--- a/i18n/en.json
+++ b/i18n/en.json
@@ -18,7 +18,7 @@
"apihelp-query+projectpages-param-assessments": "Also return
assessments for the pages returned.",
"apihelp-query+projectpages-param-projects": "The projects to list
pages for. If this parameter is omitted, all projects will be included.",
"apihelp-query+projectpages-param-limit": "The maximum number of pages
to return.",
- "apihelp-query+projectpages-example-simple-1": "Get first 10 pages
associated with any WikiProject.",
+ "apihelp-query+projectpages-example-simple-1": "Get first 10 pages
associated with WikiProject <kbd>Medicine</kbd> or WikiProject
<kbd>Anatomy</kbd>.",
"apihelp-query+projectpages-example-simple-2": "Get first 10 pages
associated with WikiProject <kbd>Medicine</kbd>, including assessment data.",
"apihelp-query+projectpages-example-generator": "Get page info for
first 10 pages associated with WikiProject <kbd>Textile Arts</kbd>.",
"apihelp-query+projects-description": "List all the projects.",
--
To view, visit https://gerrit.wikimedia.org/r/365177
To unsubscribe, visit https://gerrit.wikimedia.org/r/settings
Gerrit-MessageType: merged
Gerrit-Change-Id: I2c878f173b7f9ec353750b70ed1b19df019a47d9
Gerrit-PatchSet: 3
Gerrit-Project: mediawiki/extensions/PageAssessments
Gerrit-Branch: master
Gerrit-Owner: Kaldari <[email protected]>
Gerrit-Reviewer: MaxSem <[email protected]>
Gerrit-Reviewer: Siebrand <[email protected]>
Gerrit-Reviewer: jenkins-bot <>
_______________________________________________
MediaWiki-commits mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits