Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- diff --git a/migrateToRevDel.php b/migrateToRevDel.php
- index 4722106..4b9673b 100644
- --- a/migrateToRevDel.php
- +++ b/migrateToRevDel.php
- @@ -79,26 +79,60 @@ class MigrateOversightRevisions extends Maintenance {
- $insertData[$fieldPrefix . 'len'] = strlen( $revText );
- $insertData[$fieldPrefix . 'sha1'] = Revision::base36Sha1( $revText );
- - $parentIdLookupConditions = array(
- - $pageIdFieldName => $hiddenRow->hidden_page,
- - $fieldPrefix . 'timestamp' => $hiddenRow->hidden_timestamp,
- - $revIdFieldName . ' < ' . $hiddenRow->hidden_rev_id
- - );
- -
- if ( $tableName == 'archive' ) {
- - $parentIdLookupConditions['ar_namespace'] = $hiddenRow->hidden_namespace;
- - $parentIdLookupConditions['ar_title'] = $hiddenRow->hidden_title;
- + $insertData['ar_parent_id'] = null;
- $insertData['ar_namespace'] = $hiddenRow->hidden_namespace;
- $insertData['ar_title'] = $hiddenRow->hidden_title;
- + } else {
- + $parentIdFromRevision = $dbw->selectRow(
- + 'revision',
- + array( 'rev_id', 'rev_timestamp' ),
- + array(
- + 'rev_page' => $hiddenRow->hidden_page,
- + 'rev_timestamp < ' . $hiddenRow->hidden_timestamp,
- + 'rev_id < ' . $hiddenRow->hidden_rev_id
- + ),
- + array(
- + 'LIMIT' => 1,
- + 'ORDER BY' => 'rev_timestamp'
- + )
- + );
- + $parentIdFromHidden = $dbw->selectRow(
- + 'hidden',
- + array( 'hidden_rev_id', 'hidden_timestamp' ),
- + array(
- + 'hidden_page' => $hiddenRow->hidden_page,
- + 'hidden_timestamp < ' . $hiddenRow->hidden_timestamp,
- + 'hidden_rev_id < ' . $hiddenRow->hidden_rev_id
- + ),
- + $options = array(
- + 'LIMIT' => 1,
- + 'ORDER BY' => 'hidden_timestamp'
- + )
- + );
- + $parentIdFromArchive = $dbw->selectRow(
- + 'archive',
- + array( 'ar_rev_id', 'ar_timestamp' ),
- + array(
- + 'ar_page_id' => $hiddenRow->hidden_page,
- + 'ar_timestamp < ' . $hiddenRow->hidden_timestamp,
- + 'ar_rev_id < ' . $hiddenRow->hidden_rev_id
- + ),
- + array(
- + 'LIMIT' => 1,
- + 'ORDER BY' => 'ar_timestamp'
- + )
- + );
- +
- + $timestampsToRevIds = array(
- + $parentIdFromRevision["rev_timestamp"] => $parentIdFromRevision["rev_id"],
- + $parentIdFromHidden["hidden_timestamp"] => $parentIdFromHidden["hidden_rev_id"],
- + $parentIdFromArchive["ar_timestamp"] => $parentIdFromArchive["ar_rev_id"]
- + );
- +
- + $insertData['rev_parent_id'] = $timestampsToRevIds[max( array_keys( $timestampsToRevIds ) )];
- }
- - $insertData[$fieldPrefix . 'parent_id'] = $dbw->selectField(
- - $tableName,
- - $revIdFieldName,
- - $parentIdLookupConditions,
- - $options = array( 'LIMIT' => 1, 'ORDER BY' => $revIdFieldName )
- - );
- -
- $dbw->insert( $tableName, $insertData, __METHOD__ );
- $dbw->insert( 'logging', array(
Advertisement
Add Comment
Please, Sign In to add comment