Page MenuHomePhabricator

Update user-facing documentation to remove reference to old parameter "srbackend=LuceneSearch", as the parameter no longer does anything on Wikimedia wikis running CirrusSearch
Closed, ResolvedPublic

Description

Looks like setting "srbackend=LuceneSearch" nowadays produces exactly the same behaviors as "srbackend=CirrusSearch". If MediaWiki is silently using to Cirrus search, it should inform the user about this.

The current behavior is confusing for users trying to compare the results of multiple search backends.

Examples

Event Timeline

He7d3r raised the priority of this task from to Needs Triage.
He7d3r updated the task description. (Show Details)
He7d3r subscribed.
He7d3r set Security to None.
He7d3r renamed this task from Make "srbackend=LuceneSearch" functional again to Show message to users who set "srbackend" to a backend which is not available (e.g. "LuceneSearch").Dec 23 2015, 12:43 PM
He7d3r updated the task description. (Show Details)

Thanks for the report, @He7d3r.

All (or almost all) Wikimedia wikis now use CirrusSearch. The two backends (LuceneSearch and CirrusSearch) were run alongside each other during the CirrusSearch rollout to help find problems. There are significant costs (in CPU time, disk space, and staff time) in running two backends alongside each other, so the old backend was deprecated and removed.

Whilst we could spend some time adding in a warning if you're explicitly trying to use the old backend, the number of users trying that should be decreasing to zero over time as the old backend was removed. Really, what I'd prefer to do here is try to remove every reference to these commands in the documentation, since they don't do anything any more.

Deskana renamed this task from Show message to users who set "srbackend" to a backend which is not available (e.g. "LuceneSearch") to Update documentation to remove reference to old parameter "srbackend=LuceneSearch", as the parameter no longer does anything.Dec 23 2015, 11:35 PM
Deskana triaged this task as Low priority.

Whilst we could spend some time adding in a warning if you're explicitly trying to use the old backend, the number of users trying that should be decreasing to zero over time as the old backend was removed. Really, what I'd prefer to do here is try to remove every reference to these commands in the documentation, since they don't do anything any more.

I've updated the task title to reflect this.

In that case, the code also needs to be updated, since it still uses the parameter:
https://github.com/wikimedia/mediawiki/blob/688ab25211bc6a37a95283ebd4c85f6528ef45f1/includes/specials/SpecialSearch.php#L126

Very good point. I'm unsure what to do about that. Supporting the possibility of having multiple backends in the code, but not actually running multiple backends in our configuration, seems fine in principle. I don't know whether we should remove that or not.

Certainly, we should not be telling users of Wikimedia wikis that they can use both backends, since that's not true any more. I should update the title of this task (again) to reflect this nuance.

Deskana renamed this task from Update documentation to remove reference to old parameter "srbackend=LuceneSearch", as the parameter no longer does anything to Update user-facing documentation to remove reference to old parameter "srbackend=LuceneSearch", as the parameter no longer does anything on Wikimedia wikis running CirrusSearch.Dec 23 2015, 11:40 PM

That is why I was thinking a simple message/warning wold be enough for users who set the parameter to anything different from the engines available in the current wiki.

E.g.: User sets "srbackend-Foo" but the wiki only has "Bar" and "Baz", then MediaWiki tells the user something like "Search backend Foo is not available on this wiki. Try one of these: Bar, Baz".

That is why I was thinking a simple message/warning wold be enough for users who set the parameter to anything different from the engines available in the current wiki.

Possibly. Sometimes these things are super simple to implement. However, sometimes they are not and then people can waste valuable hours (or even days!) on very minor tasks. The priority is set to reflect this. :-)

I've been doing some work recently around cleaning up documentation on CirrusSearch (T141156). I took a moment to search for references to "srbackend" on Meta and MediaWiki. I was only able to find two passing mentions in the API documentation.

https://www.mediawiki.org/wiki/API:Search

https://www.mediawiki.org/wiki/API:Lists/All

Short of that it appears that over time references have already been removed from the documentation.

Removing from current work as I believe this is not actively being worked on. Please correct me if I'm wrong. :-)

TTO subscribed.

I came across a note to myself saying that this task should be marked as declined based on an IRC discussion on 2015-12-23. I can't locate that discussion, but combined with CKoerner's comment, I think we can now mark this as resolved.

If you think the API should show a warning, that would be a separate task. This one's about "Updating user-facing documentation".