* @ingroup Maintenance ExternalStorage
*/
+use Wikimedia\Rdbms\IMaintainableDatabase;
use MediaWiki\Logger\LegacyLogger;
use MediaWiki\MediaWikiServices;
use MediaWiki\Shell\Shell;
-use Wikimedia\Rdbms\IDatabase;
$optionsWithArgs = RecompressTracked::getOptionsWithArgs();
require __DIR__ . '/../commandLine.inc';
/**
* Dispatch a command to the next available replica DB.
* This may block until a replica DB finishes its work and becomes available.
+ * @param array|string ...$args
*/
function dispatch( ...$args ) {
$pipes = $this->replicaPipes;
/**
* Gets a DB master connection for the given external cluster name
* @param string $cluster
- * @return IDatabase
+ * @return IMaintainableDatabase
*/
function getExtDB( $cluster ) {
$lbFactory = MediaWikiServices::getInstance()->getDBLoadBalancerFactory();
$lb = $lbFactory->getExternalLB( $cluster );
- return $lb->getConnection( DB_MASTER );
+ return $lb->getMaintenanceConnectionRef( DB_MASTER );
}
/**
/** @var RecompressTracked */
public $parent;
public $blobClass;
- /** @var ConcatenatedGzipHistoryBlob */
+ /** @var ConcatenatedGzipHistoryBlob|false */
public $cgz;
public $referrers;