https://bugzilla.wikimedia.org/show_bug.cgi?id=65765

            Bug ID: 65765
           Summary: update.php displays errors when updating ar_len field
           Product: MediaWiki
           Version: 1.23-git
          Hardware: All
                OS: All
            Status: NEW
          Severity: normal
          Priority: Unprioritized
         Component: Maintenance scripts
          Assignee: wikibugs-l@lists.wikimedia.org
          Reporter: mueller062001-...@yahoo.de
       Web browser: ---
   Mobile Platform: ---

When I run update.php while updating from 1.22 to 1.23, amongst other things
the script maintenance/populateArchiveLength.php is executed to populate the
ar_len column. 

However, this script does not always work correctly so that the following error
occurs (code from populateArchiveLength.php):

    # Go through and update ar_len from these rows.
    foreach ( $res as $row ) {
        $rev = Revision::newFromArchiveRow( $row );
        $content = $rev->getContent();
        if ( !$content ) {
            # This should not happen, but sometimes does (bug 20757)
            $this->output( "Content of archive {$row->ar_id} unavailable!\n" );

In my case this is _not_ caused by bug 20757. Instead, this is caused by the
fact that for old archived revisions, the rows in the archive table do _not_
contain a pointer to the text in the text table, but that the text is stored in
the archive table directly. Obviously the above code cannot handle this
situation properly.

The line

$rev = Revision::newFromArchiveRow( $row );

does not work correctly in this case. It is unable to return information from
inside an archive row.

-- 
You are receiving this mail because:
You are the assignee for the bug.
You are on the CC list for the bug.
_______________________________________________
Wikibugs-l mailing list
Wikibugs-l@lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/wikibugs-l

Reply via email to