dépôts
/
lhc
/
web
/
wiklou.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Merge "Add attributes parameter to ShowSearchHitTitle"
[lhc/web/wiklou.git]
/
includes
/
revisiondelete
/
RevDelRevisionList.php
diff --git
a/includes/revisiondelete/RevDelRevisionList.php
b/includes/revisiondelete/RevDelRevisionList.php
index
1d08dbe
..
07362c4
100644
(file)
--- a/
includes/revisiondelete/RevDelRevisionList.php
+++ b/
includes/revisiondelete/RevDelRevisionList.php
@@
-19,6
+19,9
@@
* @ingroup RevisionDelete
*/
* @ingroup RevisionDelete
*/
+use Wikimedia\Rdbms\FakeResultWrapper;
+use Wikimedia\Rdbms\IDatabase;
+
/**
* List for revision table items
*
/**
* List for revision table items
*
@@
-59,18
+62,19
@@
class RevDelRevisionList extends RevDelList {
*/
public function doQuery( $db ) {
$ids = array_map( 'intval', $this->ids );
*/
public function doQuery( $db ) {
$ids = array_map( 'intval', $this->ids );
+ $revQuery = Revision::getQueryInfo( [ 'page', 'user' ] );
$queryInfo = [
$queryInfo = [
- 'tables' =>
[ 'revision', 'page', 'user'
],
- 'fields' =>
array_merge( Revision::selectFields(), Revision::selectUserFields() )
,
+ 'tables' =>
$revQuery['tables'
],
+ 'fields' =>
$revQuery['fields']
,
'conds' => [
'rev_page' => $this->title->getArticleID(),
'rev_id' => $ids,
],
'conds' => [
'rev_page' => $this->title->getArticleID(),
'rev_id' => $ids,
],
- 'options' => [ 'ORDER BY' => 'rev_id DESC' ],
- 'join_conds' => [
- 'page' => Revision::pageJoinCond(),
- 'user' => Revision::userJoinCond(),
+ 'options' => [
+ 'ORDER BY' => 'rev_id DESC',
+ 'USE INDEX' => [ 'revision' => 'PRIMARY' ] // workaround for MySQL bug (T104313)
],
],
+ 'join_conds' => $revQuery['joins'],
];
ChangeTags::modifyDisplayQuery(
$queryInfo['tables'],
];
ChangeTags::modifyDisplayQuery(
$queryInfo['tables'],
@@
-94,14
+98,15
@@
class RevDelRevisionList extends RevDelList {
return $live;
}
return $live;
}
+ $arQuery = Revision::getArchiveQueryInfo();
$archiveQueryInfo = [
$archiveQueryInfo = [
- 'tables' =>
[ 'archive'
],
- 'fields' =>
Revision::selectArchiveFields()
,
+ 'tables' =>
$arQuery['tables'
],
+ 'fields' =>
$arQuery['fields']
,
'conds' => [
'ar_rev_id' => $ids,
],
'options' => [ 'ORDER BY' => 'ar_rev_id DESC' ],
'conds' => [
'ar_rev_id' => $ids,
],
'options' => [ 'ORDER BY' => 'ar_rev_id DESC' ],
- 'join_conds' =>
[
],
+ 'join_conds' =>
$arQuery['joins'
],
];
ChangeTags::modifyDisplayQuery(
];
ChangeTags::modifyDisplayQuery(