deleteEqualMessages.php: Avoid "Transaction already in progress" warning
Set the $commit parameter of WikiPage::doDeleteArticle() to true so
the transaction it starts is explicitly committed. Also fixed similar
bugs in two other maintenance scripts.
Follows-up 02f17b5790.
Bug: T110189
Change-Id: Ifde98066e25cb616f23c8998f9461ebf7a2073d6
This commit is contained in:
parent
92602fefda
commit
49107fcc29
3 changed files with 6 additions and 8 deletions
|
|
@ -97,7 +97,6 @@ class DeleteBatch extends Maintenance {
|
|||
}
|
||||
|
||||
$this->output( $title->getPrefixedText() );
|
||||
$dbw->begin( __METHOD__ );
|
||||
if ( $title->getNamespace() == NS_FILE ) {
|
||||
$img = wfFindFile( $title, array( 'ignoreRedirect' => true ) );
|
||||
if ( $img && $img->isLocal() && !$img->delete( $reason ) ) {
|
||||
|
|
@ -106,8 +105,7 @@ class DeleteBatch extends Maintenance {
|
|||
}
|
||||
$page = WikiPage::factory( $title );
|
||||
$error = '';
|
||||
$success = $page->doDeleteArticle( $reason, false, 0, false, $error, $user );
|
||||
$dbw->commit( __METHOD__ );
|
||||
$success = $page->doDeleteArticle( $reason, false, 0, true, $error, $user );
|
||||
if ( $success ) {
|
||||
$this->output( " Deleted!\n" );
|
||||
} else {
|
||||
|
|
|
|||
|
|
@ -76,10 +76,9 @@ class DeleteDefaultMessages extends Maintenance {
|
|||
$dbw->ping();
|
||||
$title = Title::makeTitle( $row->page_namespace, $row->page_title );
|
||||
$page = WikiPage::factory( $title );
|
||||
$dbw->begin( __METHOD__ );
|
||||
$error = ''; // Passed by ref
|
||||
$page->doDeleteArticle( 'No longer required', false, 0, false, $error, $user );
|
||||
$dbw->commit( __METHOD__ );
|
||||
// FIXME: Deletion failures should be reported, not silently ignored.
|
||||
$page->doDeleteArticle( 'No longer required', false, 0, true, $error, $user );
|
||||
}
|
||||
|
||||
$this->output( "done!\n", 'msg' );
|
||||
|
|
|
|||
|
|
@ -182,14 +182,15 @@ class DeleteEqualMessages extends Maintenance {
|
|||
$this->output( "\n* [[$title]]" );
|
||||
$page = WikiPage::factory( $title );
|
||||
$error = ''; // Passed by ref
|
||||
$page->doDeleteArticle( 'No longer required', false, 0, false, $error, $user );
|
||||
// FIXME: Deletion failures should be reported, not silently ignored.
|
||||
$page->doDeleteArticle( 'No longer required', false, 0, true, $error, $user );
|
||||
if ( $result['hasTalk'] && $doDeleteTalk ) {
|
||||
$title = Title::makeTitle( NS_MEDIAWIKI_TALK, $result['title'] );
|
||||
$this->output( "\n* [[$title]]" );
|
||||
$page = WikiPage::factory( $title );
|
||||
$error = ''; // Passed by ref
|
||||
$page->doDeleteArticle( 'Orphaned talk page of no longer required message',
|
||||
false, 0, false, $error, $user );
|
||||
false, 0, true, $error, $user );
|
||||
}
|
||||
}
|
||||
$this->output( "\n\ndone!\n" );
|
||||
|
|
|
|||
Loading…
Reference in a new issue