public function __construct() {
parent::__construct();
$this->mDescription = "Look for 'orphan' revisions hooked to pages which don't exist\n" .
- "and 'childless' pages with no revisions\n" .
- "Then, kill the poor widows and orphans\n" .
- "Man this is depressing";
+ "and 'childless' pages with no revisions\n" .
+ "Then, kill the poor widows and orphans\n" .
+ "Man this is depressing";
$this->addOption( 'fix', 'Actually fix broken entries' );
}
/**
* Lock the appropriate tables for the script
- * @param $db DatabaseBase object
- * @param $extraTable String The name of any extra tables to lock (eg: text)
+ * @param DatabaseBase $db
+ * @param string $extraTable The name of any extra tables to lock (eg: text)
*/
private function lockTables( $db, $extraTable = array() ) {
$tbls = array( 'page', 'revision', 'redirect' );
/**
* Check for orphan revisions
- * @param $fix bool Whether to fix broken revisions when found
+ * @param bool $fix Whether to fix broken revisions when found
*/
private function checkOrphans( $fix ) {
$dbw = wfGetDB( DB_MASTER );
$this->lockTables( $dbw );
}
- $this->output( "Checking for orphan revision table entries... (this may take a while on a large wiki)\n" );
+ $this->output( "Checking for orphan revision table entries... "
+ . "(this may take a while on a large wiki)\n" );
$result = $dbw->query( "
SELECT *
FROM $revision LEFT OUTER JOIN $page ON rev_page=page_id
$orphans = $result->numRows();
if ( $orphans > 0 ) {
global $wgContLang;
+
$this->output( "$orphans orphan revisions...\n" );
- $this->output( sprintf( "%10s %10s %14s %20s %s\n", 'rev_id', 'rev_page', 'rev_timestamp', 'rev_user_text', 'rev_comment' ) );
+ $this->output( sprintf(
+ "%10s %10s %14s %20s %s\n",
+ 'rev_id', 'rev_page', 'rev_timestamp', 'rev_user_text', 'rev_comment'
+ ) );
+
foreach ( $result as $row ) {
$comment = ( $row->rev_comment == '' )
? ''
}
/**
- * @param $fix bool
+ * @param bool $fix
* @todo DON'T USE THIS YET! It will remove entries which have children,
* but which aren't properly attached (eg if page_latest is bogus
* but valid revisions do exist)
$this->lockTables( $dbw );
}
- $this->output( "\nChecking for childless page table entries... (this may take a while on a large wiki)\n" );
+ $this->output( "\nChecking for childless page table entries... "
+ . "(this may take a while on a large wiki)\n" );
$result = $dbw->query( "
SELECT *
FROM $page LEFT OUTER JOIN $revision ON page_latest=rev_id
/**
* Check for pages where page_latest is wrong
- * @param $fix bool Whether to fix broken entries
+ * @param bool $fix Whether to fix broken entries
*/
private function checkSeparation( $fix ) {
$dbw = wfGetDB( DB_MASTER );
$this->lockTables( $dbw, array( 'user', 'text' ) );
}
- $this->output( "\nChecking for pages whose page_latest links are incorrect... (this may take a while on a large wiki)\n" );
+ $this->output( "\nChecking for pages whose page_latest links are incorrect... "
+ . "(this may take a while on a large wiki)\n" );
$result = $dbw->query( "
SELECT *
FROM $page LEFT OUTER JOIN $revision ON page_latest=rev_id