Page MenuHomePhabricator

Warning: Destructor threw an object exception: exception 'Wikimedia\Rdbms\DBUnexpectedError' with message 'Wikimedia\Rdbms\Database::close: Expected mass commit of all peer transactions (DBO_TRX set).' in /srv/mediawiki/php-1.31.0-wmf.29/includes/libs/rdbms/database/Database.php:3602
Closed, ResolvedPublicPRODUCTION ERROR

Description

Have only rolled out 1.31.0-wmf.29 to testwiki and already seeing this message at the top of logstash.

Stack trace:

#0 /srv/mediawiki/php-1.31.0-wmf.29/includes/libs/rdbms/database/Database.php(924): Wikimedia\Rdbms\Database->commit()
#1 /srv/mediawiki/php-1.31.0-wmf.29/includes/libs/rdbms/loadbalancer/LoadBalancer.php(1208): Wikimedia\Rdbms\Database->close()
#2 (): Closure$Wikimedia\Rdbms\LoadBalancer::closeAll()
#3 /srv/mediawiki/php-1.31.0-wmf.29/includes/libs/rdbms/loadbalancer/LoadBalancer.php(1631): call_user_func_array()
#4 /srv/mediawiki/php-1.31.0-wmf.29/includes/libs/rdbms/loadbalancer/LoadBalancer.php(1209): Wikimedia\Rdbms\LoadBalancer->forEachOpenConnection()
#5 /srv/mediawiki/php-1.31.0-wmf.29/includes/libs/rdbms/loadbalancer/LoadBalancer.php(1199): Wikimedia\Rdbms\LoadBalancer->closeAll()
#6 (): Wikimedia\Rdbms\LoadBalancer->disable()
#7 /srv/mediawiki/php-1.31.0-wmf.29/includes/libs/rdbms/lbfactory/LBFactory.php(196): call_user_func_array()
#8 (): Closure$Wikimedia\Rdbms\LBFactory::forEachLBCallMethod()
#9 /srv/mediawiki/php-1.31.0-wmf.29/includes/libs/rdbms/lbfactory/LBFactoryMulti.php(425): call_user_func_array()
#10 /srv/mediawiki/php-1.31.0-wmf.29/includes/libs/rdbms/lbfactory/LBFactory.php(199): Wikimedia\Rdbms\LBFactoryMulti->forEachLB()
#11 /srv/mediawiki/php-1.31.0-wmf.29/includes/libs/rdbms/lbfactory/LBFactory.php(143): Wikimedia\Rdbms\LBFactory->forEachLBCallMethod()
#12 /srv/mediawiki/php-1.31.0-wmf.29/includes/libs/rdbms/lbfactory/LBFactory.php(607): Wikimedia\Rdbms\LBFactory->destroy()
#13 (): Wikimedia\Rdbms\LBFactory->__destruct()
#14 {main}

Event Timeline

thcipriani triaged this task as Unbreak Now! priority.Apr 10 2018, 7:56 PM

Added at 1.31.0-wmf.29 blocker, setting to UBN!

Adding @aaron because it's database related

I suspect the transactions are just empty ones with SELECT statements, which don't need to give errors here.

Change 425471 had a related patch set uploaded (by Aaron Schulz; owner: Aaron Schulz):
[mediawiki/core@master] rdbms: fix transaction flushing in Database::close

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

Change 425471 merged by jenkins-bot:
[mediawiki/core@master] rdbms: fix transaction flushing in Database::close

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

Confirmed that the error has gone away in beta:

Screen Shot 2018-04-11 at 18.35.09.png (520×2 px, 99 KB)

Change 425566 had a related patch set uploaded (by Krinkle; owner: Aaron Schulz):
[mediawiki/core@wmf/1.31.0-wmf.29] rdbms: fix transaction flushing in Database::close

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

Change 425566 merged by jenkins-bot:
[mediawiki/core@wmf/1.31.0-wmf.29] rdbms: fix transaction flushing in Database::close

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

Mentioned in SAL (#wikimedia-operations) [2018-04-11T19:09:55Z] <thcipriani@tin> Synchronized php-1.31.0-wmf.29/includes/libs/rdbms/database: [[gerrit:425566|rdbms: fix transaction flushing in Database::close]] T191916 (duration: 01m 01s)

thcipriani assigned this task to aaron.

Looks resolved in prod. Thanks for the patch @aaron !

mmodell changed the subtype of this task from "Task" to "Production Error".Aug 28 2019, 11:09 PM