What is meta? ×
Meta Stack Exchange is where users like you discuss bugs, features, and support issues that affect the software powering all 130 Stack Exchange communities.

There's a question in the PHP tag, How to squeeze error message out of PDO?

I've been using this question as a dupe-target and a general reference link for ages. (It's got so many incoming links, it breaks the "linked" display!)

Before the new search came up, I could search for it using php squeeze pdo, where:

  • squeeze is only in the title
  • php is both in the question text, and is a tag
  • pdo is both in the title, the question text, and is a tag

In the new search, that question is no longer part of the search results at all any more! All I see in the results is pages containing the reference question's title because they link to it. Manually searching for the tag, [php] squeeze pdo, still finds it fine.

I'm not sure what's going on here - the fact that it's completely missing looks like a bug?

Either way, I guess this suggests that search terms in the title should be given a lot more weight, and that search terms inside a link to another question should be given a lot less weight... although the latter is probably Google-level stuff and overkill.

share|improve this question
11  
Maybe the number of incoming links/duplicate questions should also factor in the ranking of search results. This would be pretty much reinventing Google Page Rank, but maybe that is already a possible feature for the search backend. –  Mad Scientist Jan 28 '13 at 11:49
3  
I've definitely noticed this on MSO where the FAQ entry for X will show up below a billion 0 voted "How do I X" posts –  Ben Brocka Feb 3 '13 at 17:39
3  
Oddly enough, it's the PHP that's tripping the search up. Converting it to tag syntax or substituting in "message" works as expected. I think Nick mentioned somewhere about there being an issue crossing the title/body boundary, hmm. –  Tim Stone Feb 3 '13 at 17:39
1  
Yeah, the and operation not traversing the title/body combination is the problem. –  Tim Stone Feb 3 '13 at 17:41

2 Answers 2

up vote 5 down vote accepted

A search algorithm change went out this evening that should resolve cases like this based on which fields the terms were in. The way we structure the query has changed to properly AND across all appropriate fields for this search.

This should improve searches for thousands of other cases as well. If you find further examples that are obviously broken, of course keep us alerted so we can continue improving search.

share|improve this answer
    
Works great as far as I can see, thanks! –  Pëkka Feb 26 '13 at 9:52
    
a new one, searching for "UTF-8 all the way through" no longer gives me UTF-8 all the way through –  Pëkka Feb 26 '13 at 19:59
1  
@Pekka웃 - damn, that's a larger issue. I'm taking another pass at query construction - may be a day or so before something goes out, tricky change. –  Nick Craver Feb 26 '13 at 23:21
2  
@Pekka웃 - give it a try now - I altered the stemming parser in a slight way that I hope caused no other regressions, it should be better for almost all cases. –  Nick Craver Feb 27 '13 at 1:39
    
looking good, I tried a series of combinations and they all worked out. One other thing: When you search for, say, Why is processing a sorted array faster than an unsorted arra, it will turn up 0 results even if a question exists that is titled Why is processing a sorted array faster than an unsorted array. It would be nice if it would treat the one non-matching word as "or". But I guess that is a whole different ball game, it's arguably much more minor, and I think that has always been the standard behaviour –  Pëkka Feb 27 '13 at 11:25

Seems like after the change in search algorithm, the weight of keywords have changed.

If you remove the php (searching just for squeeze pdo) you instantly get the correct result.

The best advice I can give you, stay away from obvious and incredibly common keywords.

share|improve this answer
6  
It doesn't seem like the weight has changed, it seems like that keyword excludes the result from search entirely - which doesn't make sense. I'd say this is a bug, it needs fixing rather than us changing the way we use search –  Pëkka Feb 9 '13 at 19:13
3  
[php] squeeze pdo also works fine –  user133440 Feb 17 '13 at 21:10

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .