/**
* Maintenance script to do various checks on external storage.
*
+ * @fixme this should extend the base Maintenance class
* @ingroup Maintenance ExternalStorage
*/
class CheckStorage {
// Check targets of unresolved stubs
$this->checkExternalConcatBlobs( $externalConcatBlobs );
-
// next chunk
}
);
}
unset( $oldIds[$row->blob_id] );
-
}
$extDb->freeResult( $res );
// Write revision list
if ( !file_put_contents( $revFileName, implode( "\n", $revIds ) ) ) {
echo "Error writing revision list, can't restore text\n";
+
return;
}
if ( $exitStatus ) {
echo "mwdumper died with exit status $exitStatus\n";
+
return;
}
$file = fopen( $filteredXmlFileName, 'r' );
if ( !$file ) {
echo "Unable to open filtered XML file\n";
+
return;
}
$dbw->ping();
$source = new ImportStreamSource( $file );
- $importer = new WikiImporter( $source );
+ $importer = new WikiImporter(
+ $source,
+ ConfigFactory::getDefaultInstance()->makeConfig( 'main' )
+ );
$importer->setRevisionCallback( array( &$this, 'importRevision' ) );
$importer->doImport();
}
if ( $content === null ) {
echo "Revision $id is broken, we have no content available\n";
+
return;
}
// be safe, we'll skip it and leave it broken
echo "Revision $id is blank in the dump, may have been broken before export\n";
+
return;
}
if ( !$id ) {
// No ID, can't import
echo "No id tag in revision, can't import\n";
+
return;
}
$oldId = $dbr->selectField( 'revision', 'rev_text_id', array( 'rev_id' => $id ), __METHOD__ );
if ( !$oldId ) {
echo "Missing revision row for rev_id $id\n";
+
return;
}