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 "Soft deprecate DeferredStringifier class"
[lhc/web/wiklou.git]
/
includes
/
jobqueue
/
jobs
/
RecentChangesUpdateJob.php
diff --git
a/includes/jobqueue/jobs/RecentChangesUpdateJob.php
b/includes/jobqueue/jobs/RecentChangesUpdateJob.php
index
6f349d4
..
d97e4f9
100644
(file)
--- a/
includes/jobqueue/jobs/RecentChangesUpdateJob.php
+++ b/
includes/jobqueue/jobs/RecentChangesUpdateJob.php
@@
-76,23
+76,25
@@
class RecentChangesUpdateJob extends Job {
$lockKey = wfWikiID() . ':recentchanges-prune';
$dbw = wfGetDB( DB_MASTER );
$lockKey = wfWikiID() . ':recentchanges-prune';
$dbw = wfGetDB( DB_MASTER );
- if ( !$dbw->lockIsFree( $lockKey, __METHOD__ )
- || !$dbw->lock( $lockKey, __METHOD__, 1 )
- ) {
- return; // already in progress
+ if ( !$dbw->lock( $lockKey, __METHOD__, 0 ) ) {
+ // already in progress
+ return;
}
$factory = MediaWikiServices::getInstance()->getDBLoadBalancerFactory();
$ticket = $factory->getEmptyTransactionTicket( __METHOD__ );
$cutoff = $dbw->timestamp( time() - $wgRCMaxAge );
}
$factory = MediaWikiServices::getInstance()->getDBLoadBalancerFactory();
$ticket = $factory->getEmptyTransactionTicket( __METHOD__ );
$cutoff = $dbw->timestamp( time() - $wgRCMaxAge );
+ $rcQuery = RecentChange::getQueryInfo();
do {
$rcIds = [];
$rows = [];
do {
$rcIds = [];
$rows = [];
- $res = $dbw->select( 'recentchanges',
- RecentChange::selectFields(),
+ $res = $dbw->select(
+ $rcQuery['tables'],
+ $rcQuery['fields'],
[ 'rc_timestamp < ' . $dbw->addQuotes( $cutoff ) ],
__METHOD__,
[ 'rc_timestamp < ' . $dbw->addQuotes( $cutoff ) ],
__METHOD__,
- [ 'LIMIT' => $wgUpdateRowsPerQuery ]
+ [ 'LIMIT' => $wgUpdateRowsPerQuery ],
+ $rcQuery['joins']
);
foreach ( $res as $row ) {
$rcIds[] = $row->rc_id;
);
foreach ( $res as $row ) {
$rcIds[] = $row->rc_id;
@@
-135,7
+137,7
@@
class RecentChangesUpdateJob extends Job {
$dbw->setSessionOptions( [ 'connTimeout' => 900 ] );
$lockKey = wfWikiID() . '-activeusers';
$dbw->setSessionOptions( [ 'connTimeout' => 900 ] );
$lockKey = wfWikiID() . '-activeusers';
- if ( !$dbw->lock
IsFree( $lockKey, __METHOD__ ) || !$dbw->lock( $lockKey, __METHOD__, 1
) ) {
+ if ( !$dbw->lock
( $lockKey, __METHOD__, 0
) ) {
// Exclusive update (avoids duplicate entries)… it's usually fine to just drop out here,
// if the Job is already running.
return;
// Exclusive update (avoids duplicate entries)… it's usually fine to just drop out here,
// if the Job is already running.
return;