RSS
 

Search is better

04 Mar

We at Grooveshark are right in the middle of a major overhaul of the backend. As such we are all pretty loathe to work on the current trunk right now. But when things need fixing, things need fixing. That’s why Travis and I recently spent a couple of days getting search working better.

As it stands now, search results make a lot more sense than they used to, and they return more results. There was a bug relating to how insanely complicated it is to tell whether a song is actually online (more about that tomorrow), and we weren’t performing all of the checks correctly, so sometimes we were hiding a song that was not actually offline.

We had also apparently temporarily forgotten that ORDER BY field orders ascending, as in lowest to highest, so when we ordered by score, we were taking the worst results, rather than the best. No wonder our results were just downright silly sometimes.

Finally, we have completely eliminated stopwords from our fulltext indexes, and we have set our minimum word length to 1, so if you search for U2, that won’t be too short, and if you search for A Static Lullaby, the A will not be ignored.

Things are still not remotely perfect; those extra checks we weren’t doing make search slower, as do the bigger fulltext indexes; sometimes it takes 30 seconds to come back with anything, and sometimes results still don’t make the most sense ever because of the way we build our search tables. These things will all be fixed too, I promise. In the meantime, be patient and enjoy your more-correct results.

P.S. Priority #1 after file/song is done, is overhauling search completely so that it is both fast and accurate. Stay tuned.

 
 

Leave a Reply