Page MenuHomePhabricator

[Bug] Intermittent qunit failures (MessageBlobStore::insertMessageBlob failed, database locked during setup)
Closed, ResolvedPublic

Description

not sure if related, but been seeing intermittent qunit issues with wikibase, such as:

https://integration.wikimedia.org/ci/job/mwext-Wikibase-qunit/13386/consoleFull

10:45:22 Chromium 44.0.2403 (Ubuntu 0.0.0) LOG: 'Exception in module-execute in module wikibase.experts.Item.tests:'
10:45:22 Chromium 44.0.2403 (Ubuntu 0.0.0) ERROR: 'TypeError: testExpert is not a function', TypeError{}
10:45:22 Chromium 44.0.2403 (Ubuntu 0.0.0) LOG: 'Exception in module-execute in module wikibase.experts.Property.tests:'
10:45:22 Chromium 44.0.2403 (Ubuntu 0.0.0) ERROR: 'TypeError: testExpert is not a function', TypeError{}
10:45:23 ..
10:45:23 Chromium 44.0.2403 (Ubuntu 0.0.0) test.mediawiki.qunit.testrunner Loader status FAILED
10:45:23 	Modules in error state
10:45:23 	Expected: 
10:45:23 	Actual: wikibase.experts.Item.tests,wikibase.experts.Property.tests
10:45:23 	    at Object.<anonymous> (http://localhost:9876/jenkins-mwext-Wikibase-qunit-13386/load.php?debug=false&lang=en&modules=test.mediawiki.qunit.suites%2Ctestrunner%7Ctest.sinonjs%7Cuser.defaults%7Cutil.CombiningMessageProvider%2CExtendable%2CHashMessageProvider%2CMessageProvider%2CNotifier%2CPrefixingMessageProvider%2ChighlightSubstring%2Cinherit%7Cutil.HashMessageProvider.tests%7Cutil.Notifier.tests%7Cutil.highlightSubstring.tests%7CvalueFormatters%2CvalueParsers%2Cwikibase%7CvalueFormatters.ValueFormatter%2CValueFormatterStore%2Cformatters%2Ctests%7CvalueParsers.ValueParser%2CValueParserStore%2Cparsers%2Ctests%7Cwikibase.Site%2CValueViewBuilder%2CbuildErrorOutput%2CdataTypeStore%2Cdatamodel%7Cwikibase.Site.tests%7Cwikibase.ValueViewBuilder.tests%7Cwikibase.api.RepoApi%2CRepoApiError%2C__namespace%2CgetLocationAgnosticMwApi%7Cwikibase.api.RepoApi.tests%7Cwikibase.api.RepoApiError.tests%7Cwikibase.dataTypeStore.tests%7Cwikibase.datamodel.Claim%2CClaimGroup%2CClaimGroupSet%2CClaimList%2CEntity%2CEntityId%2CFingerprint%2CGroup%2CGroupableCollection%2CItem%2CList%2CMap%2CMultiTerm%2CMultiTermMap%2CProperty%2CPropertyNoValueSnak%2CPropertySomeValueSnak%2CPropertyValueSnak%2CReference%2CReferenceList%2CSet%2CSiteLink%2CSiteLinkSet%2CSnak%2CSnakList%2CStatement%2CStatementGroup%7Cwikibase.datamodel.Claim.tests%7Cwikibase.datamodel.ClaimGroup.tests%7Cwikibase.datamodel.ClaimGroupSet.tests%7Cwikibase.datamodel.ClaimList.tests%7Cwikibase.datamodel.EntityId.tests%7Cwikibase.datamodel.Fingerprint.tests%7Cwikibase.datamodel.Group.tests%7Cwikibase.datamodel.Item.tests%7Cwikibase.datamodel.List.tests%7Cwikibase.datamodel.Map.tests%7Cwikibase.datamodel.MultiTerm.tests%7Cwikibase.datamodel.MultiTermMap.tests%7Cwikibase.datamodel.Property.tests%7Cwikibase.datamodel.Reference.tests%7Cwikibase.datamodel.ReferenceList.tests%7Cwikibase.datamodel.Set.tests%7Cwikibase.datamodel.SiteLink.tests%7Cwikibase.datamodel.SiteLinkSet.tests%7Cwikibase.datamodel.Snak.tests%7Cwikibase.datamodel.SnakList.tests%7Cwikibase.datamodel.Statement.tests&skin=fallback&version=4bc53ed9e49c:280:464)
10:45:23 	    at Object.Test.run (/mnt/jenkins-workspace/workspace/mwext-Wikibase-qunit/src/node_modules/qunitjs/qunit/qunit.js:895:28)
10:45:23 	    at /mnt/jenkins-workspace/workspace/mwext-Wikibase-qunit/src/node_modules/qunitjs/qunit/qunit.js:1024:11
10:45:23 	    at process (/mnt/jenkins-workspace/workspace/mwext-Wikibase-qunit/src/node_modules/qunitjs/qunit/qunit.js:583:24)
10:45:23 	    at begin (/mnt/jenkins-workspace/workspace/mwext-Wikibase-qunit/src/node_modules/qunitjs/qunit/qunit.js:628:2)
10:45:23 	    at /mnt/jenkins-workspace/workspace/mwext-Wikibase-qunit/src/node_modules/qunitjs/qunit/qunit.js:644:4

appears to be db failures to insert resource loader blobs into MessageBlobStore:

https://integration.wikimedia.org/ci/job/mwext-Wikibase-qunit/13386/artifact/log/mw-debug-www.log

0.2809  17.5M  SQL ERROR: database is locked
0.2812  17.5M  MessageBlobStore::insertMessageBlob failed to update DB: exception 'DBQueryError' with message 'A database error has occurred. Did you forget to run maintenance/update.php after upgrading?  See: https://www.mediawiki.org/wiki/Manual:Upgrading#Run_the_update_script
Query: INSERT OR IGNORE INTO msg_resource (mr_lang,mr_resource,mr_blob,mr_timestamp) VALUES ('en','jquery.ui.core.styles','{}','20150904104520')
Function: MessageBlobStore::insertMessageBlob/single-row
Error: 5 database is locked
' in /mnt/jenkins-workspace/workspace/mwext-Wikibase-qunit/src/includes/db/Database.php:1131
Stack trace:
#0 /mnt/jenkins-workspace/workspace/mwext-Wikibase-qunit/src/includes/db/Database.php(1086): DatabaseBase->reportQueryError('database is loc...', 5, 'INSERT OR IGNOR...', 'MessageBlobStor...', false)
#1 /mnt/jenkins-workspace/workspace/mwext-Wikibase-qunit/src/includes/db/Database.php(1973): DatabaseBase->query('INSERT OR IGNOR...', 'MessageBlobStor...')
#2 /mnt/jenkins-workspace/workspace/mwext-Wikibase-qunit/src/includes/db/DatabaseSqlite.php(624): DatabaseBase->insert('msg_resource', Array, 'MessageBlobStor...', Array)
#3 /mnt/jenkins-workspace/workspace/mwext-Wikibase-qunit/src/includes/cache/MessageBlobStore.php(132): DatabaseSqlite->insert('msg_resource', Array, 'MessageBlobStor...', Array)
#4 /mnt/jenkins-workspace/workspace/mwext-Wikibase-qunit/src/includes/cache/MessageBlobStore.php(89): MessageBlobStore->insertMessageBlob('jquery.ui.core....', Object(ResourceLoaderFileModule), 'en')
#5 /mnt/jenkins-workspace/workspace/mwext-Wikibase-qunit/src/includes/resourceloader/ResourceLoader.php(985): MessageBlobStore->get(Object(ResourceLoader), Array, 'en')
#6 /mnt/jenkins-workspace/workspace/mwext-Wikibase-qunit/src/includes/resourceloader/ResourceLoader.php(723): ResourceLoader->makeModuleResponse(Object(ResourceLoaderContext), Array, Array)
#7 /mnt/jenkins-workspace/workspace/mwext-Wikibase-qunit/src/load.php(47): ResourceLoader->respond(Object(ResourceLoaderContext))
#8 {main}

Event Timeline

aude raised the priority of this task from to Needs Triage.
aude updated the task description. (Show Details)
aude subscribed.
aude renamed this task from Intermittent qunit failures (MessageBlobStore::insertMessageBlob failed, database locked during setup) to [Bug] Intermittent qunit failures (MessageBlobStore::insertMessageBlob failed, database locked during setup).Sep 10 2015, 10:41 AM
aude triaged this task as High priority.

We could try switching to MariaDB from sqlite for qunit tests.

I thought T90001 would fix this because it is intended to fix T93097. But when switching to mysql I still get the same failure.

Change 239147 had a related patch set uploaded (by JanZerebecki):
Add missing ResourceLoader dependencies

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

Change 239147 merged by jenkins-bot:
Add missing ResourceLoader dependencies

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

JanZerebecki claimed this task.
JanZerebecki moved this task from Backlog to Done on the Wikidata-Sprint-2015-09-15 board.

Change 240357 had a related patch set uploaded (by JanZerebecki):
Add missing ResourceLoader dependencies

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

Change 240357 abandoned by Hoo man:
Add missing ResourceLoader dependencies

Reason:
No longer relevant

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