Page MenuHomePhabricator

PHP Fatal in AffectedPagesFinder::getChangedAspects
Closed, ResolvedPublic3 Estimated Story Points

Description

Trying to execute a ChangeNotification job with the following parameters:

{"database":"wikidatawiki","mediawiki_signature":"6fd3726fe8a61abf4d270caee36404db582b9b4dc75761ca81f05e8510d239c4","meta":{"domain":"www.wikidata.org","dt":"2018-04-12T15:14:17+00:00","id":"2b27d1b5-3e64-11e8-9a6c-90b11c259d72","request_id":"1fdd2a66b9e2f349a505c25f","schema_uri":"mediawiki/job/1","topic":"mediawiki.job.ChangeNotification","uri":"https://www.wikidata.org/wiki/Special:Badtitle/JobSpecification"},"page_namespace":-1,"page_title":"Special:Badtitle/JobSpecification","params":{"changeIds":[661009539,661009880,661009928,661009948,661010313,661010427,661010431,661010757,661010878,661011078,661011394,661011554,661011817,661011958],"repo":false,"rootJobTimestamp":"20180412151417"},"type":"ChangeNotification"}

gives the PHP fatal:

PHP fatal error: <br/>
  Argument 1 passed to Wikibase\Client\Changes\AffectedPagesFinder::getChangedStatementAspects() must be an instance of array, stdClass given

I could find traces of this error in the logs and it's actually spit out as an HTML blob, seemingly bypassing normal MW exception handlers.

Steps to reproduce:

curl -i -XPOST -H 'content-type: application/json' --data @event https://jobrunner.discovery.wmnet/rpc/RunSingleJob.php

where evet file contains the JSON blob shown above.

I'm not sure whether that's a new problem related to switching the job from old job queue to kafka, or it just got more visibility in the new queue

Event Timeline

Change 428827 had a related patch set uploaded (by Ladsgroup; owner: Amir Sarabadani):
[mediawiki/extensions/Wikibase@master] Make sure statements in EntityDiffChangedAspects are not passed around as stdClass

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

Change 428827 merged by jenkins-bot:
[mediawiki/extensions/Wikibase@master] Make sure statements in EntityDiffChangedAspects are not passed around as stdClass

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

Change 428907 had a related patch set uploaded (by Ladsgroup; owner: Amir Sarabadani):
[mediawiki/extensions/Wikibase@wmf/1.31.0-wmf.30] Make sure statements in EntityDiffChangedAspects are not passed around as stdClass

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

Change 428908 had a related patch set uploaded (by Ladsgroup; owner: Amir Sarabadani):
[mediawiki/extensions/Wikibase@wmf/1.32.0-wmf.1] Make sure statements in EntityDiffChangedAspects are not passed around as stdClass

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

Change 428907 merged by Ladsgroup:
[mediawiki/extensions/Wikibase@wmf/1.31.0-wmf.30] Make sure statements in EntityDiffChangedAspects are not passed around as stdClass

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

Change 428908 merged by Ladsgroup:
[mediawiki/extensions/Wikibase@wmf/1.32.0-wmf.1] Make sure statements in EntityDiffChangedAspects are not passed around as stdClass

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

Mentioned in SAL (#wikimedia-operations) [2018-04-25T13:43:23Z] <ladsgroup@tin> Synchronized php-1.31.0-wmf.30/extensions/Wikibase/lib/includes/Changes: [[gerrit:428907|Make sure statements in EntityDiffChangedAspects are not passed around as stdClass (T192085)]] (duration: 01m 17s)

Mentioned in SAL (#wikimedia-operations) [2018-04-25T13:53:20Z] <ladsgroup@tin> Synchronized php-1.32.0-wmf.1/extensions/Wikibase/lib/includes/Changes: [[gerrit:428908|Make sure statements in EntityDiffChangedAspects are not passed around as stdClass (T192085)]] (duration: 01m 16s)

Ladsgroup moved this task from Test (Product Review) to Done on the Wikidata-Ministry-Of-Magic board.

This is fixed, approved by PM

image.png (201×1 px, 32 KB)