Page MenuHomePhabricator

'InvalidArgumentException' with message 'Unknown data value type "globecoordinate" has no associated DataValue class'
Closed, ResolvedPublic

Description

Unexpected non-MediaWiki exception encountered, of type "InvalidArgumentException"
exception 'InvalidArgumentException' with message 'Unknown data value type "globecoordinate" has no associated DataValue class' in /usr/local/apache/common-local/php-1.22wmf5/extensions/DataValues/DataValues/includes/DataValueFactory.php:140
Stack trace:
#0 /usr/local/apache/common-local/php-1.22wmf5/extensions/DataValues/DataValues/includes/DataValueFactory.php(101): DataValues\DataValueFactory->getDataValueClass('globecoordinate')
#1 /usr/local/apache/common-local/php-1.22wmf5/extensions/Wikibase/DataModel/DataModel/Snak/SnakObject.php(171): DataValues\DataValueFactory->newDataValue('globecoordinate', Array)
#2 /usr/local/apache/common-local/php-1.22wmf5/extensions/Wikibase/DataModel/DataModel/Claim/Claim.php(205): Wikibase\SnakObject::newFromArray(Array)
#3 /usr/local/apache/common-local/php-1.22wmf5/extensions/Wikibase/DataModel/DataModel/Claim/Statement.php(172): Wikibase\Claim::newFromArray(Array)
#4 /usr/local/apache/common-local/php-1.22wmf5/extensions/Wikibase/DataModel/DataModel/Claim/Claim.php(202): Wikibase\Statement::newFromArray(Array)
#5 /usr/local/apache/common-local/php-1.22wmf5/extensions/Wikibase/DataModel/DataModel/Entity/Entity.php(719): Wikibase\Claim::newFromArray(Array)
#6 /usr/local/apache/common-local/php-1.22wmf5/extensions/Wikibase/DataModel/DataModel/Entity/Entity.php(702): Wikibase\Entity->unstubClaims()
#7 /usr/local/apache/common-local/php-1.22wmf5/extensions/Wikibase/client/includes/parserhooks/PropertyParserFunction.php(102): Wikibase\Entity->getClaims()
#8 /usr/local/apache/common-local/php-1.22wmf5/extensions/Wikibase/client/includes/parserhooks/PropertyParserFunction.php(138): Wikibase\PropertyParserFunction->getClaimsForProperty(Object(Wikibase\Item), 'P107')
#9 /usr/local/apache/common-local/php-1.22wmf5/extensions/Wikibase/client/includes/parserhooks/PropertyParserFunction.php(188): Wikibase\PropertyParserFunction->renderForEntityId(Object(Wikibase\EntityId), 'P107')
#10 [internal function]: Wikibase\PropertyParserFunction::render(Object(Parser), 'P107')

full stack trace

http://dpaste.com/1227106/

(made a hotfix to the deployment to catch and handle any exceptions in the parser function at the renderForEntityId level)


Version: master
Severity: major

Details

Reference
bz49417

Event Timeline

bzimport raised the priority of this task from to Needs Triage.Nov 22 2014, 2:07 AM
bzimport set Reference to bz49417.
bzimport added a subscriber: Unknown Object (MLST).

https://gerrit.wikimedia.org/r/#/c/67932/ and https://gerrit.wikimedia.org/r/#/c/67900/ are the hotfixes

The lua patch should probably go into master and wmf6 definitely.

For the parser function, probably also backport that to wmf6 and see if DanielK's error handling is sufficient in master to deal with this sort of issue.

This floods when trying to run jobs.

Related URL: https://gerrit.wikimedia.org/r/67969 (Gerrit Change Ida64d89b8f44cc862c17558294cea2f1f3d1ecde)

I was able to reproduce the issue in the jobs.

php maintenance/runJobs.php --verbose --maxtime 1900
2013-06-11 11:20:24 ChangeNotification Special:ChangeNotificationJob repo= changeIds=array(1) STARTING
Unexpected non-MediaWiki exception encountered, of type "InvalidArgumentException"
exception 'InvalidArgumentException' with message 'Unknown data value type "globecoordinate" has no associated DataValue class' in /var/www/common/wikibase-client/extensions/DataValues/DataValues/includes/DataValueFactory.php:140
Stack trace:
#0 /var/www/common/wikibase-client/extensions/DataValues/DataValues/includes/DataValueFactory.php(101): DataValues\DataValueFactory->getDataValueClass('globecoordinate')
#1 /var/www/common/wikibase-client/extensions/Wikibase/DataModel/DataModel/Snak/SnakObject.php(171): DataValues\DataValueFactory->newDataValue('globecoordinate', Array)
#2 /var/www/common/wikibase-client/extensions/Wikibase/DataModel/DataModel/Claim/Claim.php(205): Wikibase\SnakObject::newFromArray(Array)
#3 /var/www/common/wikibase-client/extensions/Wikibase/DataModel/DataModel/Claim/Statement.php(172): Wikibase\Claim::newFromArray(Array)
#4 [internal function]: Wikibase\Statement::newFromArray(Array)
#5 /var/www/common/wikibase-client/extensions/Wikibase/lib/includes/changes/EntityChange.php(402): call_user_func(Array, Array)
#6 [internal function]: Wikibase\EntityChange->objectifyArrays(Array)
#7 /var/www/common/wikibase-client/extensions/Diff/includes/DiffOpFactory.php(134): call_user_func(Array, Array)
#8 /var/www/common/wikibase-client/extensions/Diff/includes/DiffOpFactory.php(82): Diff\DiffOpFactory->arrayToObject(Array)
#9 /var/www/common/wikibase-client/extensions/Wikibase/lib/includes/WikibaseDiffOpFactory.php(46): Diff\DiffOpFactory->newFromArray(Array)
#10 /var/www/common/wikibase-client/extensions/Diff/includes/DiffOpFactory.php(93): Wikibase\WikibaseDiffOpFactory->newFromArray(Array)
#11 /var/www/common/wikibase-client/extensions/Wikibase/lib/includes/WikibaseDiffOpFactory.php(46): Diff\DiffOpFactory->newFromArray(Array)
#12 /var/www/common/wikibase-client/extensions/Wikibase/lib/includes/WikibaseDiffOpFactory.php(62): Wikibase\WikibaseDiffOpFactory->newFromArray(Array)
#13 /var/www/common/wikibase-client/extensions/Wikibase/lib/includes/WikibaseDiffOpFactory.php(40): Wikibase\WikibaseDiffOpFactory->createOperations(Array)
#14 /var/www/common/wikibase-client/extensions/Wikibase/lib/includes/changes/DiffChange.php(157): Wikibase\WikibaseDiffOpFactory->newFromArray(Array)
#15 /var/www/common/wikibase-client/extensions/Wikibase/lib/includes/changes/ChangeRow.php(166): Wikibase\DiffChange->unserializeInfo('{"diff":{"type"...')
#16 /var/www/common/wikibase-client/extensions/Wikibase/lib/includes/changes/ChangeRow.php(208): Wikibase\ChangeRow->getField('info')
#17 /var/www/common/wikibase-client/extensions/Wikibase/lib/includes/changes/EntityChange.php(135): Wikibase\ChangeRow->getInfo('no')
#18 /var/www/common/wikibase-client/extensions/Wikibase/client/includes/ChangeHandler.php(343): Wikibase\EntityChange->getMetadata()
#19 /var/www/common/wikibase-client/extensions/Wikibase/client/includes/ChangeHandler.php(418): Wikibase\ChangeHandler->coalesceRuns(Array)
#20 /var/www/common/wikibase-client/extensions/Wikibase/client/includes/ChangeHandler.php(469): Wikibase\ChangeHandler->coalesceChanges(Array)
#21 /var/www/common/wikibase-client/extensions/Wikibase/lib/includes/ChangeNotificationJob.php(146): Wikibase\ChangeHandler->handleChanges(Array)
#22 /var/www/common/wikibase-client/maintenance/runJobs.php(100): Wikibase\ChangeNotificationJob->run()
#23 /var/www/common/wikibase-client/maintenance/doMaintenance.php(110): RunJobs->execute()
#24 /var/www/common/wikibase-client/maintenance/runJobs.php(153): require_once('/var/www/common...')
#25 {main}

#0 /var/www/common/wikibase-client/extensions/DataValues/DataValues/includes/DataValueFactory.php(101): DataValues\DataValueFactory->getDataValueClass('globecoordinate')
#1 /var/www/common/wikibase-client/extensions/Wikibase/DataModel/DataModel/Snak/SnakObject.php(171): DataValues\DataValueFactory->newDataValue('globecoordinate', Array)
#2 /var/www/common/wikibase-client/extensions/Wikibase/DataModel/DataModel/Claim/Claim.php(205): Wikibase\SnakObject::newFromArray(Array)
#3 /var/www/common/wikibase-client/extensions/Wikibase/DataModel/DataModel/Claim/Statement.php(172): Wikibase\Claim::newFromArray(Array)
#4 [internal function]: Wikibase\Statement::newFromArray(Array)
#5 /var/www/common/wikibase-client/extensions/Wikibase/lib/includes/changes/EntityChange.php(402): call_user_func(Array, Array)
#6 [internal function]: Wikibase\EntityChange->objectifyArrays(Array)
#7 /var/www/common/wikibase-client/extensions/Diff/includes/DiffOpFactory.php(134): call_user_func(Array, Array)
#8 /var/www/common/wikibase-client/extensions/Diff/includes/DiffOpFactory.php(82): Diff\DiffOpFactory->arrayToObject(Array)
#9 /var/www/common/wikibase-client/extensions/Wikibase/lib/includes/WikibaseDiffOpFactory.php(46): Diff\DiffOpFactory->newFromArray(Array)
#10 /var/www/common/wikibase-client/extensions/Diff/includes/DiffOpFactory.php(93): Wikibase\WikibaseDiffOpFactory->newFromArray(Array)
#11 /var/www/common/wikibase-client/extensions/Wikibase/lib/includes/WikibaseDiffOpFactory.php(46): Diff\DiffOpFactory->newFromArray(Array)
#12 /var/www/common/wikibase-client/extensions/Wikibase/lib/includes/WikibaseDiffOpFactory.php(62): Wikibase\WikibaseDiffOpFactory->newFromArray(Array)
#13 /var/www/common/wikibase-client/extensions/Wikibase/lib/includes/WikibaseDiffOpFactory.php(40): Wikibase\WikibaseDiffOpFactory->createOperations(Array)
#14 /var/www/common/wikibase-client/extensions/Wikibase/lib/includes/changes/DiffChange.php(157): Wikibase\WikibaseDiffOpFactory->newFromArray(Array)
#15 /var/www/common/wikibase-client/extensions/Wikibase/lib/includes/changes/ChangeRow.php(166): Wikibase\DiffChange->unserializeInfo('{"diff":{"type"...')
#16 /var/www/common/wikibase-client/extensions/Wikibase/lib/includes/changes/ChangeRow.php(208): Wikibase\ChangeRow->getField('info')
#17 /var/www/common/wikibase-client/extensions/Wikibase/lib/includes/changes/EntityChange.php(135): Wikibase\ChangeRow->getInfo('no')
#18 /var/www/common/wikibase-client/extensions/Wikibase/client/includes/ChangeHandler.php(343): Wikibase\EntityChange->getMetadata()
#19 /var/www/common/wikibase-client/extensions/Wikibase/client/includes/ChangeHandler.php(418): Wikibase\ChangeHandler->coalesceRuns(Array)
#20 /var/www/common/wikibase-client/extensions/Wikibase/client/includes/ChangeHandler.php(469): Wikibase\ChangeHandler->coalesceChanges(Array)
#21 /var/www/common/wikibase-client/extensions/Wikibase/lib/includes/ChangeNotificationJob.php(146): Wikibase\ChangeHandler->handleChanges(Array)
#22 /var/www/common/wikibase-client/maintenance/runJobs.php(100): Wikibase\ChangeNotificationJob->run()
#23 /var/www/common/wikibase-client/maintenance/doMaintenance.php(110): RunJobs->execute()
#24 /var/www/common/wikibase-client/maintenance/runJobs.php(153): require_once('/var/www/common...')
#25 {main}

https://gerrit.wikimedia.org/r/67969 (Gerrit Change Ida64d89b8f44cc862c17558294cea2f1f3d1ecde) | change APPROVED and MERGED [by Tobias Gritschacher]

Related URL: https://gerrit.wikimedia.org/r/67985 (Gerrit Change Ida64d89b8f44cc862c17558294cea2f1f3d1ecde)

https://gerrit.wikimedia.org/r/67985 (Gerrit Change Ida64d89b8f44cc862c17558294cea2f1f3d1ecde) | change APPROVED and MERGED [by Tobias Gritschacher]

Related URL: https://gerrit.wikimedia.org/r/67986 (Gerrit Change Ida64d89b8f44cc862c17558294cea2f1f3d1ecde)

https://gerrit.wikimedia.org/r/67987 (Gerrit Change I85e387b62ff0f940de31acec166c28ff389114ad) | change APPROVED and MERGED [by jenkins-bot]

https://gerrit.wikimedia.org/r/67986 (Gerrit Change Ida64d89b8f44cc862c17558294cea2f1f3d1ecde) | change APPROVED and MERGED [by jenkins-bot]

Verified in Wikidata demo sprint 22-9