Page MenuHomePhabricator

"Deadlock found when trying to get lock" (via LinksTable::doWritesQuery: DELETE FROM externallinks)
Open, Needs TriagePublicPRODUCTION ERROR

Description

Error
labels.normalized_message
[{reqId}] {exception_url}   Wikimedia\Rdbms\DBQueryError: Error 1213: Deadlock found when trying to get lock; try restarting transaction
Function: MediaWiki\Deferred\LinksUpdate\LinksTable::doWrites
Query: DELETE FROM `externallinks` WHERE ((el_from = 127
error.stack_trace
from /srv/mediawiki/php-1.41.0-wmf.26/includes/libs/rdbms/database/Database.php(1236)
#0 /srv/mediawiki/php-1.41.0-wmf.26/includes/libs/rdbms/database/Database.php(1220): Wikimedia\Rdbms\Database->getQueryException(string, integer, string, string)
#1 /srv/mediawiki/php-1.41.0-wmf.26/includes/libs/rdbms/database/Database.php(1194): Wikimedia\Rdbms\Database->getQueryExceptionAndLog(string, integer, string, string)
#2 /srv/mediawiki/php-1.41.0-wmf.26/includes/libs/rdbms/database/Database.php(679): Wikimedia\Rdbms\Database->reportQueryError(string, integer, string, string, boolean)
#3 /srv/mediawiki/php-1.41.0-wmf.26/includes/libs/rdbms/database/Database.php(1773): Wikimedia\Rdbms\Database->query(Wikimedia\Rdbms\Query, string)
#4 /srv/mediawiki/php-1.41.0-wmf.26/includes/libs/rdbms/database/DBConnRef.php(119): Wikimedia\Rdbms\Database->delete(string, array, string)
#5 /srv/mediawiki/php-1.41.0-wmf.26/includes/libs/rdbms/database/DBConnRef.php(572): Wikimedia\Rdbms\DBConnRef->__call(string, array)
#6 /srv/mediawiki/php-1.41.0-wmf.26/includes/libs/rdbms/querybuilder/DeleteQueryBuilder.php(222): Wikimedia\Rdbms\DBConnRef->delete(string, array, string)
#7 /srv/mediawiki/php-1.41.0-wmf.26/includes/deferred/LinksUpdate/LinksTable.php(464): Wikimedia\Rdbms\DeleteQueryBuilder->execute()
#8 /srv/mediawiki/php-1.41.0-wmf.26/includes/deferred/LinksUpdate/LinksTable.php(391): MediaWiki\Deferred\LinksUpdate\LinksTable->doWrites()
#9 /srv/mediawiki/php-1.41.0-wmf.26/includes/deferred/LinksUpdate/LinksUpdate.php(288): MediaWiki\Deferred\LinksUpdate\LinksTable->update()
#10 /srv/mediawiki/php-1.41.0-wmf.26/includes/deferred/LinksUpdate/LinksUpdate.php(248): MediaWiki\Deferred\LinksUpdate\LinksUpdate->doIncrementalUpdate()
#11 /srv/mediawiki/php-1.41.0-wmf.26/includes/deferred/DeferredUpdates.php(463): MediaWiki\Deferred\LinksUpdate\LinksUpdate->doUpdate()
#12 /srv/mediawiki/php-1.41.0-wmf.26/includes/deferred/RefreshSecondaryDataUpdate.php(103): DeferredUpdates::attemptUpdate(MediaWiki\Deferred\LinksUpdate\LinksUpdate)
#13 /srv/mediawiki/php-1.41.0-wmf.26/includes/deferred/DeferredUpdates.php(463): RefreshSecondaryDataUpdate->doUpdate()
#14 /srv/mediawiki/php-1.41.0-wmf.26/includes/Storage/DerivedPageDataUpdater.php(1830): DeferredUpdates::attemptUpdate(RefreshSecondaryDataUpdate)
#15 /srv/mediawiki/php-1.41.0-wmf.26/includes/page/WikiPage.php(2101): MediaWiki\Storage\DerivedPageDataUpdater->doSecondaryDataUpdates(array)
#16 /srv/mediawiki/php-1.41.0-wmf.26/includes/jobqueue/jobs/RefreshLinksJob.php(243): WikiPage->doSecondaryDataUpdates(array)
#17 /srv/mediawiki/php-1.41.0-wmf.26/includes/jobqueue/jobs/RefreshLinksJob.php(152): RefreshLinksJob->runForTitle(MediaWiki\Title\Title)
#18 /srv/mediawiki/php-1.41.0-wmf.26/extensions/EventBus/includes/JobExecutor.php(83): RefreshLinksJob->run()
#19 /srv/mediawiki/rpc/RunSingleJob.php(77): MediaWiki\Extension\EventBus\JobExecutor->execute(array)
#20 {main}
Impact
Notes

Seen twice in the last hour for commonswiki.

Might be related to T312666: Remove duplication in externallinks table \cc @Ladsgroup.

Details

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

Event Timeline

Restricted Application added a subscriber: Aklapper. · View Herald Transcript

Are there still issues in the logs?

After a66595f0c938a7acc5307da9f9256517f5616f5b I would assume there are less delete attempts on non-existing rows resulting in gap locks. (only el_to_path is empty string or null)