Page MenuHomePhabricator

Watchlist changes need unique revision id
Open, NormalPublic

Description

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.

Details

Reference
bz43578

Event Timeline

bzimport raised the priority of this task from to Normal.Nov 22 2014, 1:16 AM
bzimport set Reference to bz43578.
bzimport added a subscriber: Unknown Object (MLST).
aude created this task.Jan 2 2013, 9:01 AM
Lydia_Pintscher removed a subscriber: Unknown Object (MLST).
Lydia_Pintscher removed a subscriber: Unknown Object (MLST).
Sitic added a subscriber: Sitic.Jun 13 2015, 6:39 PM

The watchlist can sometimes become too spammy due to wikidata.
Here is a screenshot that shows part of a 100x entries of the same edit!

Restricted Application added a subscriber: Aklapper. · View Herald TranscriptMar 16 2016, 5:33 PM
Restricted Application added a subscriber: TerraCodes. · View Herald TranscriptApr 19 2016, 9:24 PM
hoo added a subscriber: hoo.Aug 10 2017, 2:07 PM

Just to clarify this is about the following:

Someones edits the "Berlin" page on your wiki and there's also a Wikibase change to an Item used on the "Berlin" page. In that case both the local edit to the "Berlin" page and the edit done to the Wikibase item will show up in your watchlist.

This is not about excessive watchlist entries for other reasons, please see T90436: Improve usage tracking granularity to avoid irrelevant changes showing in the watchlist. for that.

Restricted Application added a subscriber: PokestarFan. · View Herald TranscriptAug 10 2017, 2:07 PM