Page MenuHomePhabricator

Searches for namespaces only return useless error message ("An error has occurred while searching: The search backend returned an error:")
Closed, DeclinedPublic

Description

If I search for Help: or Template: on either meta.wikimedia.org or mediawiki.org, I get an in-page error in red:

An error has occurred while searching: The search backend returned an error:

(with no text).

E.g. search for Help: or Template: , or on meta search for Research: . But searching for Special: doesn't give an error.

This doesn't happen searching on enwiki. I don't know for sure if meta and mediawiki use lucene


Version: unspecified
Severity: normal

Details

Reference
bz47761

Event Timeline

bzimport raised the priority of this task from to Low.Nov 22 2014, 1:15 AM
bzimport set Reference to bz47761.
bzimport added a subscriber: Unknown Object (MLST).

Looks like fallout from bug 43544.

...or eproducible when searching for

Talk:

on en.wp (I tried reproducing bug 26443).

(In reply to comment #4)
The failure isn't caused by short strings alone, since searching for character glyphs such as 'é' works.
To summarize that discussion on enwiki VPT, searching for the character '�' also produces this red error message, as does ':', '@', '$' '!', '-', '+', etc. (All tested on meta-wiki.)

The problem with searching for namespaces like 'Help:' or 'Template:' is not as simple as the presence of the ':' character, since searching for non-existing 'Foo:' produces some results; the search engine seems to ignore the punctuation.

(In reply to comment #5)

(In reply to comment #4)
The failure isn't caused by short strings alone, since searching for
character
glyphs such as 'é' works.
To summarize that discussion on enwiki VPT, searching for the character '�'
also produces this red error message, as does ':', '@', '$' '!', '-', '+',
etc.
(All tested on meta-wiki.)

Let me venture a guess based on the observed behaviour (I don't actually know anything about the inner working of the search engine). It seems to me that the search engine ignores non-letter characters, presumably deleting them from the search string. It may be that the error is triggered when this deletion results in the empty string: this would explain why 'é' works (it is not deleted, being a letter), '$' doesn't work (it is deleted), and 'abc $' works (the $ is deleted, but there is something left). Also, namespace prefixes are presumably handled in a different way and removed from the actual search string, hence 'Talk:' doesn't work (the resulting string is empty) while 'Talk: zyx' works (the string is nonempty), and 'Foo:' also works (it is not recognized as a prefix, and therefore left in the string).

This is still an issue on meta (where CirrusSearch is not deployed), but not anymore on mediawiki.org (where CirrusSearch is deployed).

  • Bug 49675 has been marked as a duplicate of this bug. ***
  • Bug 50403 has been marked as a duplicate of this bug. ***

Searching for "User:{{unblock reviewed | 1=I came in like a [[Wrecking Ball]].[[User:GMTV Sunshine|GMTV Sunshine]] ([[User talk:GMTV Sunshine#top|talk]]) 17:06, 30 November 2013 (UTC) | decline={{subst:Decline reason here}} ~~~~}}" also gives the same error. Not sure if it's related, but seems so. Also, shame on me for not being able to properly copy paste

This bug is fixed in CirrusSearch. As we're in the process of migrating from Lucene to CirrusSearch, I'm marking this as RESOLVED WONTFIX.