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

       Web browser: ---
            Bug ID: 43578
           Summary: Watchlist changes need unique revision id
           Product: MediaWiki extensions
           Version: master
          Hardware: All
                OS: All
            Status: NEW
          Severity: normal
          Priority: Unprioritized
         Component: WikidataClient
          Assignee: wikidata-b...@lists.wikimedia.org
          Reporter: aude.w...@gmail.com
                CC: wikibugs-l@lists.wikimedia.org,
                    wikidata-b...@lists.wikimedia.org
    Classification: Unclassified
   Mobile Platform: ---

Right now, if a Wikibase change is the last change for a given Wikipedia
(client) page, then it will show that page multiple times in the watchlist.  We
are currently treating a Wikibase change like a log entry, which do get shown
multiple times in the watchlist.  Wikibase changes should be shown just once.

The query as performed to generate the watchlist:

SELECT
rc_id,rc_timestamp,rc_cur_time,rc_user,rc_user_text,rc_namespace,rc_title,rc_comment,rc_minor,rc_bot,rc_new,rc_cur_id,rc_this_oldid,rc_last_oldid,rc_type,rc_patrolled,rc_ip,rc_old_len,rc_new_len,rc_deleted,rc_logid,rc_log_type,rc_log_action,rc_params,wl_notificationtimestamp,page_latest,ts_tags
FROM `recentchanges` INNER JOIN `watchlist` ON (wl_user = '2' AND
(wl_namespace=rc_namespace) AND (wl_title=rc_title)) LEFT JOIN `page` ON
((rc_cur_id=page_id)) LEFT JOIN `tag_summary` ON ((ts_rc_id=rc_id)) WHERE
(rc_timestamp > '20121229191341') AND (rc_this_oldid=page_latest OR rc_type=3)
ORDER BY rc_timestamp DESC

To fully support wikibase changes in the watchlist, we need to insert a null
revision and have a unique revision id to insert into the rc_cur_id field of
the recentchanges table.

It may be possible to use a hacky GROUP_BY clause in the watchlist query, a
subquery, or other uglyness to make it work without the null revision, but that
would make the watchlist query a bit slower.

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

Reply via email to