Page MenuHomePhabricator

Document what to do about large unusable watchlists in WMF production
Open, Needs TriagePublic

Description

Fairly regularly we get people reporting errors about their watchlist not loading. Usually its because they have very large watchlists (10s of thousands of pages).
(Cf. T41510: Opening Special:EditWatchlist with a large watchlist hits server timeout (Create watchlist pager) and the other tasks mentioned there)

We should have some documentation (wikitech) for how users should try and resolve this; including clearing their watchlist themselves via Special:EditWatchlist, Special:EditWatchlist/raw or Special:EditWatchlist/clear. And in extreme circumstances, it being done server side by someone with shell access.

We should also include information on how users can help prevent this in future. This includes turning off Watchlist preferences such as Add pages and files I edit to my watchlist and Add pages I create and files I upload to my watchlist; this is especially relevant on wikis such as Wikidata where a user may create or edit many items, and not actually be fussed about watching them in future

Event Timeline

Add pages and files I edit to my watchlist and Add pages I create and files I upload to my watchlist

I wonder if we should create a config for this, so certain sites can set this as a default disabled, and users on those large wikis (Eg: wikidata) would need to optin

Fairly regularly we get people reporting errors about their watchlist not loading.

Incomplete list for the records: https://phabricator.wikimedia.org/maniphest/?ids=315603,309446,265347,95888,47380,68212,69123,41510#R

Server-side request: Create a ticket tagged with Wikimedia-maintenance-script-run and asking folks to run mwscript runBatchedQuery.php --wiki wikidatabasename "DELETE FROM watchlist WHERE wl_user = 9999999999 LIMIT 5000;" ?

Fairly regularly we get people reporting errors about their watchlist not loading.

Incomplete list for the records: https://phabricator.wikimedia.org/maniphest/?ids=315603,309446,265347,95888,47380,68212,69123,41510#R

Server-side request: Create a ticket tagged with Wikimedia-maintenance-script-run and asking folks to run mwscript runBatchedQuery.php --wiki wikidatabasename "DELETE FROM watchlist WHERE wl_user = 9999999999 LIMIT 5000;" ?

If we go that route, a dedicated maintenance script might be less error-prone.

Fairly regularly we get people reporting errors about their watchlist not loading.

Incomplete list for the records: https://phabricator.wikimedia.org/maniphest/?ids=315603,309446,265347,95888,47380,68212,69123,41510#R

Server-side request: Create a ticket tagged with Wikimedia-maintenance-script-run and asking folks to run mwscript runBatchedQuery.php --wiki wikidatabasename "DELETE FROM watchlist WHERE wl_user = 9999999999 LIMIT 5000;" ?

If we go that route, a dedicated maintenance script might be less error-prone.

I do hope you are not suggesting that the script must be run without exceptions. Some users may be content with the situation, if they know that they can edit the watchlist in the raw form.

Fairly regularly we get people reporting errors about their watchlist not loading.

Incomplete list for the records: https://phabricator.wikimedia.org/maniphest/?ids=315603,309446,265347,95888,47380,68212,69123,41510#R

Server-side request: Create a ticket tagged with Wikimedia-maintenance-script-run and asking folks to run mwscript runBatchedQuery.php --wiki wikidatabasename "DELETE FROM watchlist WHERE wl_user = 9999999999 LIMIT 5000;" ?

If we go that route, a dedicated maintenance script might be less error-prone.

I do hope you are not suggesting that the script must be run without exceptions. Some users may be content with the situation, if they know that they can edit the watchlist in the raw form.

I'm pretty sure @kostajh is saying if this becomes a common workflow (people requesting their watchlists to be emptied), we make a robust way of doing it (ie a dedicated maintenance script), rather than something very potentially susceptible to user error (typo in the SQL uery could lead to bigger issues).

He is not suggesting we en masse remove peoples watchlists.

Reedy renamed this task from Document what to do about large watchlists in WMF production to Document what to do about large unusable watchlists in WMF production.Aug 26 2022, 4:37 PM