jenkins-bot has submitted this change and it was merged.

Change subject: Base continuation on row id for populating subscriptions
......................................................................


Base continuation on row id for populating subscriptions

See https://phabricator.wikimedia.org/P567 for comparisons of the queries 
involved.

Bug: T97440
Change-Id: Ifaaf680841ca1cc2d8da8fdab3df7b9faa7bff6b
---
M repo/includes/store/sql/ChangesSubscriptionTableBuilder.php
1 file changed, 6 insertions(+), 6 deletions(-)

Approvals:
  Hoo man: Looks good to me, approved
  jenkins-bot: Verified



diff --git a/repo/includes/store/sql/ChangesSubscriptionTableBuilder.php 
b/repo/includes/store/sql/ChangesSubscriptionTableBuilder.php
index da56f4f..3b27835 100644
--- a/repo/includes/store/sql/ChangesSubscriptionTableBuilder.php
+++ b/repo/includes/store/sql/ChangesSubscriptionTableBuilder.php
@@ -117,7 +117,7 @@
         * @param ItemId $startItem The item to start with.
         */
        public function fillSubscriptionTable( ItemId $startItem = null ) {
-               $continuation = $startItem === null ? null : array( 
$startItem->getNumericId(), '' );
+               $continuation = $startItem === null ? null : array( 
$startItem->getNumericId(), 0 );
 
                while ( true ) {
                        $count = $this->processSubscriptionBatch( $continuation 
);
@@ -196,23 +196,23 @@
                if ( empty( $continuation ) ) {
                        $continuationCondition = '1';
                } else {
-                       list( $fromItemId, $fromSiteId ) = $continuation;
+                       list( $fromItemId, $fromRowId ) = $continuation;
                        $continuationCondition = 'ips_item_id > ' . 
(int)$fromItemId
                                . ' OR ( '
                                        . 'ips_item_id = ' . (int)$fromItemId
                                        . ' AND '
-                                       . 'ips_site_id > ' . $db->addQuotes( 
$fromSiteId )
+                                       . 'ips_row_id > ' . $fromRowId
                                . ' )';
                }
 
                $res = $db->select(
                        'wb_items_per_site',
-                       array( 'ips_item_id', 'ips_site_id' ),
+                       array( 'ips_row_id', 'ips_item_id', 'ips_site_id' ),
                        $continuationCondition,
                        __METHOD__,
                        array(
                                'LIMIT' => $this->batchSize,
-                               'ORDER BY' => 'ips_item_id, ips_site_id'
+                               'ORDER BY' => 'ips_item_id, ips_row_id'
                        )
                );
 
@@ -247,7 +247,7 @@
                        }
 
                        $subscriptionsPerItem[$itemId][] = $row->ips_site_id;
-                       $continuation = array( $currentItemId, 
$row->ips_site_id );
+                       $continuation = array( $currentItemId, $row->ips_row_id 
);
                }
 
                return $subscriptionsPerItem;

-- 
To view, visit https://gerrit.wikimedia.org/r/207292
To unsubscribe, visit https://gerrit.wikimedia.org/r/settings

Gerrit-MessageType: merged
Gerrit-Change-Id: Ifaaf680841ca1cc2d8da8fdab3df7b9faa7bff6b
Gerrit-PatchSet: 3
Gerrit-Project: mediawiki/extensions/Wikibase
Gerrit-Branch: master
Gerrit-Owner: Aude <aude.w...@gmail.com>
Gerrit-Reviewer: Daniel Kinzler <daniel.kinz...@wikimedia.de>
Gerrit-Reviewer: Hoo man <h...@online.de>
Gerrit-Reviewer: JanZerebecki <jan.wikime...@zerebecki.de>
Gerrit-Reviewer: jenkins-bot <>

_______________________________________________
MediaWiki-commits mailing list
MediaWiki-commits@lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits

Reply via email to