Page MenuHomePhabricator

[regression - wmf.12] RC page - Timeout with "may be bad faith" and "likely good"
Closed, DuplicatePublic

Description

Timeout with "may be bad faith" and "likely good".

On enwiki

A database query error has occurred. This may indicate a bug in the software.[WYod0gpAMFUAALhrRdIAAACN] 2017-08-08 20:24:46: Fatal exception of type "Wikimedia\Rdbms\DBQueryError"

Event Timeline

I looked up the error code in logstash and it said your URL was /wiki/Special:RecentChanges?limit=500&days=30&urlversion=2&watchlist=watched%3Bwatchednew&damaging=likelygood&userExpLevel=unregistered%3Bnewcomer&hidemyself=1&hidelastrevision=1&hideWikibase=1&hidelog=1&namespace=1%3B2%3B3&invert=1&goodfaith=maybebad. You were combining "may be bad faith" with "likely good" (as well as some other filters), so there were probably no results and it took a long time to go through everything and find that there were no results, since you set days=30.

We should display a more user-friendlier message.

There was a report about filters that include Watchlist filters being extremely slow, so I re-checked the previous query for 50 changes in 7 days /wiki/Special:RecentChanges?limit=50&days=7&urlversion=2&damaging=likelygood&userExpLevel=unregistered%3Bnewcomer&hidemyself=1&hidelastrevision=1&hideWikibase=1&hidelog=1&watchlist=watched%3Bwatchednew&namespace=1%3B2%3B3&invert=1&goodfaith=maybebad

The query takes a really long time - around 10 min.

As far as I could see, the Watchlist filters are not specifically conducive to slow performance; the performance is poor in general for filters that include User intent prediction filters and Namespaces (esp with the option 'Exclude selected') - the results were fetched and displayed in the range of 55 sec-1.3 min. Since the above query includes Watchlist, excluded Namespaces, and good faith filters, it becomes especially slow.

This is similar to both T164796: Very long search times on RC Page for "Very likely good faith" + "Likely have problems" (on en.wiki only?) and T164292: Long search times for combo of “Very likely good” + (“Likely bad faith” OR "V. likely bad faith" OR "May be bad faith").

Joe suggested that it's different from T164796: Very long search times on RC Page for "Very likely good faith" + "Likely have problems" (on en.wiki only?) because "Very likely good faith" + "Likely have problems." is more useful than the current bug's query (damaging=likelygood and goodfaith=maybebad).

That could mean it's a duplicate of T164292: Long search times for combo of “Very likely good” + (“Likely bad faith” OR "V. likely bad faith" OR "May be bad faith") (though the current bug is "maybe bad faith", which is not mentioned on the other title). Similar to what I mentioned there, I am hesitant about creating a broad list of combinations that are manually chosen to return no results (even though they might if left to run). It seems fiddly, and ideally these different groups are supposed to be orthogonal.

If we just treat this as a performance issue (to be solved without a special short-circuit), then it's a duplicate of T164796: Very long search times on RC Page for "Very likely good faith" + "Likely have problems" (on en.wiki only?).

Mattflaschen-WMF renamed this task from [regression - wmf.12] RC page - Fatal exception of type "Wikimedia\Rdbms\DBQueryError" to [regression - wmf.12] RC page - Timeout with "may be bad faith" and "likely good".Aug 31 2017, 5:45 PM
Mattflaschen-WMF updated the task description. (Show Details)