Page MenuHomePhabricator

ItemChange ErrorExceptions on Wikibase master
Closed, ResolvedPublic

Description

Spotted while switching the beta cluster over from using the Wikidata build to master of the extensions.
They are not related to the build.

I believe I produced these by making a new item, and then loading recent changes on either a client or repo.

[{exception_id}] {exception_url} ErrorException from line 73 of /srv/mediawiki-staging/php-master/extensions/Wikibase/lib/includes/Changes/ItemChange.php: PHP Warning: get_class() expects parameter 1 to be object, string given

[{exception_id}] {exception_url} ErrorException from line 309 of /srv/mediawiki-staging/php-master/includes/debug/MWDebug.php: PHP Warning: Cannot get sitelink diff from . Change #1371937, type wikibase-item~add [Called from Wikibase\ItemChange::logWarn
/srv/mediawiki-staging/php-master/extensions/Wikibase/lib/includes/Changes/ItemChange.php:73
PHP Warning: get_class() expects parameter 1 to be object, string given
#0 [internal function]: MWExceptionHandler::handleError(integer, string, string, integer, array)
#1 /srv/mediawiki-staging/php-master/extensions/Wikibase/lib/includes/Changes/ItemChange.php(73): get_class(string)
#2 /srv/mediawiki-staging/php-master/extensions/Wikibase/lib/includes/Changes/ItemChange.php(32): Wikibase\ItemChange->logWarning(string)
#3 /srv/mediawiki-staging/php-master/extensions/Wikibase/repo/includes/ChangeDispatcher.php(346): Wikibase\ItemChange->getSiteLinkDiff()
#4 /srv/mediawiki-staging/php-master/extensions/Wikibase/repo/includes/ChangeDispatcher.php(405): Wikibase\Repo\ChangeDispatcher->isRelevantChange(Wikibase\ItemChange, string)
#5 /srv/mediawiki-staging/php-master/extensions/Wikibase/repo/includes/ChangeDispatcher.php(315): Wikibase\Repo\ChangeDispatcher->filterChanges(string, array, integer)
#6 /srv/mediawiki-staging/php-master/extensions/Wikibase/repo/includes/ChangeDispatcher.php(234): Wikibase\Repo\ChangeDispatcher->getPendingChanges(string, integer)
#7 /srv/mediawiki-staging/php-master/extensions/Wikidata/extensions/Wikibase/repo/maintenance/dispatchChanges.php(272): Wikibase\Repo\ChangeDispatcher->dispatchTo(array)
#8 /srv/mediawiki-staging/php-master/maintenance/doMaintenance.php(95): Wikibase\DispatchChanges->execute()
#9 /srv/mediawiki-staging/php-master/extensions/Wikidata/extensions/Wikibase/repo/maintenance/dispatchChanges.php(366): require_once(string)
#10 /srv/mediawiki-staging/multiversion/MWScript.php(100): require_once(string)
#11 {main}
/srv/mediawiki-staging/php-master/includes/debug/MWDebug.php:309
PHP Warning: Cannot get sitelink diff from . Change #1371938, type wikibase-item~update [Called from Wikibase\ItemChange::logWarning in /srv/mediawiki-staging/php-master/extensions/Wikibase/lib/includes/Changes/ItemChange.php at line 76]
#0 [internal function]: MWExceptionHandler::handleError(integer, string, string, integer, array)
#1 /srv/mediawiki-staging/php-master/includes/debug/MWDebug.php(309): trigger_error(string, integer)
#2 /srv/mediawiki-staging/php-master/includes/debug/MWDebug.php(164): MWDebug::sendMessage(string, array, string, integer)
#3 /srv/mediawiki-staging/php-master/includes/GlobalFunctions.php(1209): MWDebug::warning(string, integer, integer, string)
#4 /srv/mediawiki-staging/php-master/extensions/Wikibase/lib/includes/Changes/ItemChange.php(76): wfLogWarning(string)
#5 /srv/mediawiki-staging/php-master/extensions/Wikibase/lib/includes/Changes/ItemChange.php(32): Wikibase\ItemChange->logWarning(string)
#6 /srv/mediawiki-staging/php-master/extensions/Wikibase/repo/includes/ChangeDispatcher.php(346): Wikibase\ItemChange->getSiteLinkDiff()
#7 /srv/mediawiki-staging/php-master/extensions/Wikibase/repo/includes/ChangeDispatcher.php(405): Wikibase\Repo\ChangeDispatcher->isRelevantChange(Wikibase\ItemChange, string)
#8 /srv/mediawiki-staging/php-master/extensions/Wikibase/repo/includes/ChangeDispatcher.php(315): Wikibase\Repo\ChangeDispatcher->filterChanges(string, array, integer)
#9 /srv/mediawiki-staging/php-master/extensions/Wikibase/repo/includes/ChangeDispatcher.php(234): Wikibase\Repo\ChangeDispatcher->getPendingChanges(string, integer)
#10 /srv/mediawiki-staging/php-master/extensions/Wikidata/extensions/Wikibase/repo/maintenance/dispatchChanges.php(272): Wikibase\Repo\ChangeDispatcher->dispatchTo(array)
#11 /srv/mediawiki-staging/php-master/maintenance/doMaintenance.php(95): Wikibase\DispatchChanges->execute()
#12 /srv/mediawiki-staging/php-master/extensions/Wikidata/extensions/Wikibase/repo/maintenance/dispatchChanges.php(366): require_once(string)
#13 /srv/mediawiki-staging/multiversion/MWScript.php(100): require_once(string)
#14 {main}

https://logstash-beta.wmflabs.org/goto/e59b90150ba02964f4c36a3555987f6e

Event Timeline

Addshore created this task.Nov 30 2017, 9:48 PM
Restricted Application added a project: User-Ladsgroup. · View Herald TranscriptNov 30 2017, 9:48 PM
Restricted Application added a subscriber: Aklapper. · View Herald Transcript
Addshore triaged this task as High priority.Nov 30 2017, 9:48 PM
Addshore updated the task description. (Show Details)Nov 30 2017, 9:53 PM
Addshore updated the task description. (Show Details)

Change 394432 had a related patch set uploaded (by Ladsgroup; owner: Amir Sarabadani):
[mediawiki/extensions/Wikibase@master] Unserialize compact diff when it's string not array

https://gerrit.wikimedia.org/r/394432

Change 394495 had a related patch set uploaded (by Ladsgroup; owner: Amir Sarabadani):
[mediawiki/extensions/Wikibase@master] Make EntityHandler::getAutosummary() compatible with its parents

https://gerrit.wikimedia.org/r/394495

Change 394496 had a related patch set uploaded (by Addshore; owner: Addshore):
[mediawiki/extensions/ProofreadPage@master] Makr PageContentHander::getAutosummary() compatible with its parents

https://gerrit.wikimedia.org/r/394496

Change 394495 merged by jenkins-bot:
[mediawiki/extensions/Wikibase@master] Make EntityHandler::getAutosummary() compatible with its parents

https://gerrit.wikimedia.org/r/394495

Change 394496 merged by jenkins-bot:
[mediawiki/extensions/ProofreadPage@master] Make PageContentHander::getAutosummary() compatible with its parents

https://gerrit.wikimedia.org/r/394496

Change 394432 merged by jenkins-bot:
[mediawiki/extensions/Wikibase@master] Unserialize compact diff when it's string not array

https://gerrit.wikimedia.org/r/394432

Change 394764 had a related patch set uploaded (by Ladsgroup; owner: Amir Sarabadani):
[mediawiki/extensions/Wikibase@master] Tests for serialize and unserialize of compact diff in EntityChange

https://gerrit.wikimedia.org/r/394764

Change 394764 merged by jenkins-bot:
[mediawiki/extensions/Wikibase@master] Tests for serialize and unserialize of compact diff in EntityChange

https://gerrit.wikimedia.org/r/394764

@Ladsgroup what is the status of this one?

Ladsgroup closed this task as Resolved.Dec 22 2017, 10:17 AM

This has been resolved very long time ago, even I added regression tests to be sure it won't happen. I think we can close this.