X-Git-Url: https://git.cyclocoop.org/%7B%7B%20url_for%28?a=blobdiff_plain;f=maintenance%2Fshell.php;h=75b2e22ce91ae930a3df01dc98c60645f4f7a5dd;hb=075ab54a4494f8652447744de7366f6d9355de26;hp=5df5b54f874ddf94e4ae9e6810b2230dfeb13c2f;hpb=fb36b7d94317720379513116c6062a21d23f973e;p=lhc%2Fweb%2Fwiklou.git diff --git a/maintenance/shell.php b/maintenance/shell.php index 5df5b54f87..75b2e22ce9 100644 --- a/maintenance/shell.php +++ b/maintenance/shell.php @@ -36,6 +36,7 @@ use MediaWiki\Logger\LoggerFactory; use MediaWiki\Logger\ConsoleSpi; +use MediaWiki\MediaWikiServices; require_once __DIR__ . '/Maintenance.php'; @@ -57,7 +58,7 @@ class MediaWikiShell extends Maintenance { public function execute() { if ( !class_exists( \Psy\Shell::class ) ) { - $this->error( 'PsySH not found. Please run composer with the --dev option.', 1 ); + $this->fatalError( 'PsySH not found. Please run composer with the --dev option.' ); } $traverser = new \PhpParser\NodeTraverser(); @@ -83,17 +84,13 @@ class MediaWikiShell extends Maintenance { $d = intval( $this->getOption( 'd' ) ); if ( $d > 0 ) { LoggerFactory::registerProvider( new ConsoleSpi ); + // Some services hold Logger instances in object properties + MediaWikiServices::resetGlobalInstance(); } if ( $d > 1 ) { # Set DBO_DEBUG (equivalent of $wgDebugDumpSql) - # XXX copy pasted from eval.php :( - $lb = wfGetLB(); - $serverCount = $lb->getServerCount(); - for ( $i = 0; $i < $serverCount; $i++ ) { - $server = $lb->getServerInfo( $i ); - $server['flags'] |= DBO_DEBUG; - $lb->setServerInfo( $i, $server ); - } + wfGetDB( DB_MASTER )->setFlag( DBO_DEBUG ); + wfGetDB( DB_REPLICA )->setFlag( DBO_DEBUG ); } }