Aude has uploaded a new change for review.
https://gerrit.wikimedia.org/r/233411
Change subject: Update Wikidata - add limit for pending changes in dispatcher
......................................................................
Update Wikidata - add limit for pending changes in dispatcher
This limits the number of passes per wiki, when selecting pending
changes for dispatch.
Sometimes 0 changes are found for a small wiki and the dispatcher
can get stuck in a loop until it finds enough to dispatch to that
wiki.
Bug: T105592
Change-Id: If822cd3091cfceab52f2aab80d1a06e97b70b544
---
M composer.lock
M extensions/Wikibase/repo/includes/ChangeDispatcher.php
M vendor/composer/installed.json
3 files changed, 7 insertions(+), 5 deletions(-)
git pull ssh://gerrit.wikimedia.org:29418/mediawiki/extensions/Wikidata
refs/changes/11/233411/1
diff --git a/composer.lock b/composer.lock
index 43ade12..de31a86 100644
--- a/composer.lock
+++ b/composer.lock
@@ -1379,7 +1379,7 @@
"source": {
"type": "git",
"url":
"https://gerrit.wikimedia.org/r/mediawiki/extensions/Wikibase",
- "reference": "1981ec428ebe0d59ffd52b1003945161f45fee0e"
+ "reference": "b607ec094cecf02c937a9ddbe8f48c4c046185f7"
},
"require": {
"data-values/common": "~0.3.0",
@@ -1461,7 +1461,7 @@
"issues": "https://phabricator.wikimedia.org/",
"irc": "irc://irc.freenode.net/wikidata"
},
- "time": "2015-08-19 18:22:18"
+ "time": "2015-08-24 14:00:06"
},
{
"name": "wikibase/wikimedia-badges",
diff --git a/extensions/Wikibase/repo/includes/ChangeDispatcher.php
b/extensions/Wikibase/repo/includes/ChangeDispatcher.php
index 9bd7563..83d5393 100644
--- a/extensions/Wikibase/repo/includes/ChangeDispatcher.php
+++ b/extensions/Wikibase/repo/includes/ChangeDispatcher.php
@@ -276,12 +276,13 @@
$batch = array();
$batchSize = 0;
$chunkSize = $this->batchSize * $this->batchChunkFactor;
+ $chunksExamined = 0;
// Track the change ID from which the next pass should start.
// Note that this is non-trivial due to programmatic filtering.
$lastIdSeen = $after;
- while ( $batchSize < $this->batchSize ) {
+ while ( $batchSize < $this->batchSize && $chunksExamined < 15 )
{
// get a chunk of changes
$chunk = $this->chunkedChangesAccess->loadChunk(
$after+1, $chunkSize );
@@ -300,6 +301,7 @@
$batch = array_merge( $batch, $filtered );
$batchSize = count( $batch );
+ $chunksExamined++;
//XXX: We could try to adapt $chunkSize based on ratio
of changes that get filtered out:
// $chunkSize = ( $this->batchSize - count( $batch
) ) * ( count_before / count_after );
diff --git a/vendor/composer/installed.json b/vendor/composer/installed.json
index a1ed104..ca09130 100644
--- a/vendor/composer/installed.json
+++ b/vendor/composer/installed.json
@@ -1467,7 +1467,7 @@
"source": {
"type": "git",
"url":
"https://gerrit.wikimedia.org/r/mediawiki/extensions/Wikibase",
- "reference": "1981ec428ebe0d59ffd52b1003945161f45fee0e"
+ "reference": "b607ec094cecf02c937a9ddbe8f48c4c046185f7"
},
"require": {
"data-values/common": "~0.3.0",
@@ -1497,7 +1497,7 @@
"require-dev": {
"squizlabs/php_codesniffer": "~2.1"
},
- "time": "2015-08-19 18:20:33",
+ "time": "2015-08-10 11:08:57",
"type": "mediawiki-extension",
"installation-source": "source",
"autoload": {
--
To view, visit https://gerrit.wikimedia.org/r/233411
To unsubscribe, visit https://gerrit.wikimedia.org/r/settings
Gerrit-MessageType: newchange
Gerrit-Change-Id: If822cd3091cfceab52f2aab80d1a06e97b70b544
Gerrit-PatchSet: 1
Gerrit-Project: mediawiki/extensions/Wikidata
Gerrit-Branch: wmf/1.26wmf19
Gerrit-Owner: Aude <[email protected]>
_______________________________________________
MediaWiki-commits mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits