Page MenuHomePhabricator

DBQueryError: Error 1412: Table definition has changed, please retry transaction (db1178) Function: LocalRepo::findFiles
Closed, ResolvedPublicPRODUCTION ERROR

Description

Error
normalized_message
[{reqId}] {exception_url}   Wikimedia\Rdbms\DBQueryError: Error 1412: Table definition has changed, please retry transaction (db1178)
Function: LocalRepo::findFiles
Query: SELECT  img_name,img_size,img_width,img_height,img_metadata,img_bits,img_media_type,img_major_mime,img_minor_mime,img_timestamp,img_sha1,img_actor,image_actor.actor_user AS `img_user`,image_actor.actor_name AS `img_user_text`,comment_img_description.comment_text AS `img_description_text`,comment_img_description.comment_data AS `img_description_data`,comment_img_description.comment_id AS `img_description_cid`,img_metadata  FROM `image` JOIN `actor` `image_actor` ON ((actor_id=img_actor)) JOIN `comment` `comment_img_description` ON ((comment_img_description.comment_id = img_description_id))   WHERE img_name IN ('[svg list redacted]')
exception.trace
from /srv/mediawiki/php-1.39.0-wmf.8/includes/libs/rdbms/database/Database.php(1779)
#0 /srv/mediawiki/php-1.39.0-wmf.8/includes/libs/rdbms/database/Database.php(1763): Wikimedia\Rdbms\Database->getQueryException(string, integer, string, string)
#1 /srv/mediawiki/php-1.39.0-wmf.8/includes/libs/rdbms/database/Database.php(1737): Wikimedia\Rdbms\Database->getQueryExceptionAndLog(string, integer, string, string)
#2 /srv/mediawiki/php-1.39.0-wmf.8/includes/libs/rdbms/database/Database.php(1217): Wikimedia\Rdbms\Database->reportQueryError(string, integer, string, string, boolean)
#3 /srv/mediawiki/php-1.39.0-wmf.8/includes/libs/rdbms/database/Database.php(1983): Wikimedia\Rdbms\Database->query(string, string, integer)
#4 /srv/mediawiki/php-1.39.0-wmf.8/includes/libs/rdbms/database/DBConnRef.php(68): Wikimedia\Rdbms\Database->select(array, array, array, string, array, array)
#5 /srv/mediawiki/php-1.39.0-wmf.8/includes/libs/rdbms/database/DBConnRef.php(279): Wikimedia\Rdbms\DBConnRef->__call(string, array)
#6 /srv/mediawiki/php-1.39.0-wmf.8/includes/filerepo/LocalRepo.php(362): Wikimedia\Rdbms\DBConnRef->select(array, array, array, string, array, array)
#7 /srv/mediawiki/php-1.39.0-wmf.8/extensions/GlobalUsage/includes/Hooks.php(39): LocalRepo->findFiles(array, integer)
#8 /srv/mediawiki/php-1.39.0-wmf.8/includes/HookContainer/HookContainer.php(338): MediaWiki\Extension\GlobalUsage\Hooks::onLinksUpdateComplete(MediaWiki\Deferred\LinksUpdate\LinksUpdate, integer)
#9 /srv/mediawiki/php-1.39.0-wmf.8/includes/HookContainer/HookContainer.php(137): MediaWiki\HookContainer\HookContainer->callLegacyHook(string, array, array, array)
#10 /srv/mediawiki/php-1.39.0-wmf.8/includes/HookContainer/HookRunner.php(2313): MediaWiki\HookContainer\HookContainer->run(string, array)
#11 /srv/mediawiki/php-1.39.0-wmf.8/includes/deferred/LinksUpdate/LinksUpdate.php(262): MediaWiki\HookContainer\HookRunner->onLinksUpdateComplete(MediaWiki\Deferred\LinksUpdate\LinksUpdate, integer)
#12 /srv/mediawiki/php-1.39.0-wmf.8/includes/deferred/AutoCommitUpdate.php(44): MediaWiki\Deferred\LinksUpdate\LinksUpdate->MediaWiki\Deferred\LinksUpdate\{closure}(Wikimedia\Rdbms\DBConnRef, string)
#13 /srv/mediawiki/php-1.39.0-wmf.8/includes/deferred/DeferredUpdates.php(536): AutoCommitUpdate->doUpdate()
#14 /srv/mediawiki/php-1.39.0-wmf.8/includes/deferred/DeferredUpdates.php(419): DeferredUpdates::attemptUpdate(AutoCommitUpdate, Wikimedia\Rdbms\LBFactoryMulti)
#15 /srv/mediawiki/php-1.39.0-wmf.8/includes/deferred/DeferredUpdates.php(229): DeferredUpdates::run(AutoCommitUpdate, Wikimedia\Rdbms\LBFactoryMulti, Monolog\Logger, BufferingStatsdDataFactory, MediaWiki\JobQueue\JobQueueGroupFactory, string)
#16 /srv/mediawiki/php-1.39.0-wmf.8/includes/deferred/DeferredUpdatesScope.php(267): DeferredUpdates::{closure}(AutoCommitUpdate, integer)
#17 /srv/mediawiki/php-1.39.0-wmf.8/includes/deferred/DeferredUpdatesScope.php(196): DeferredUpdatesScope->processStageQueue(integer, integer, Closure)
#18 /srv/mediawiki/php-1.39.0-wmf.8/includes/deferred/DeferredUpdates.php(250): DeferredUpdatesScope->processUpdates(integer, Closure)
#19 /srv/mediawiki/php-1.39.0-wmf.8/extensions/EventBus/includes/JobExecutor.php(105): DeferredUpdates::doUpdates()
#20 /srv/mediawiki/rpc/RunSingleJob.php(76): MediaWiki\Extension\EventBus\JobExecutor->execute(array)
#21 {main}
Impact

Unclear.

Notes

Saw a spike of ~250 similar errors in 1.39.0-wmf.8 (T305214) around 20:30 UTC.

Details

Request URL
https://jobrunner.discovery.wmnet/rpc/RunSingleJob.php

Event Timeline

brennen renamed this task from DBQueryError: Error 1412: Table definition has changed, please retry transaction (db1178) Function: LocalRepo::findFilesQuery: SELECT img_name,img_size,img_width,img_height,img_metadata,img_bits,img_media_type,img_major_mime,img_minor_mime,img_timestamp,img_sha1,img_actor,image_actor.actor_user AS `img_user`,image_actor.actor_name AS `img_user_text`,comment_img_description.comment_text AS `img_description_text`,comment_img_description.comment_data AS `img_description_data`,comment_img_description.comment_id AS `img_description_cid`,img_metadata FROM `image` JOIN `actor` `image_actor` ON ((actor_id=img_actor)) JOIN `comment` `comment_img_description` ON ((comment_img_description.comment_id = img_description_id)) WHERE img_name IN ('[svg list redacted]') to DBQueryError: Error 1412: Table definition has changed, please retry transaction (db1178) Function: LocalRepo::findFiles.Apr 20 2022, 9:01 PM
brennen updated the task description. (Show Details)

db1178 seems s8, so this could be T306560 - which changes the image table

Thanks. Transient effect of that schema change?

I would say so, timestamp matches T306560#7869400.

Yeah if it's wikidata, it should be fine. The table is empty there and I honestly find it weird this happened.

Ladsgroup claimed this task.

Boldly closing.