Search server release: 2012-05-15

In case you haven’t gotten enough of release announcements, we have another one for you. Yesterday during the main releases we also released a new search server to match the main server release. Thanks much to Paul Taylor for working on this release to be timed perfectly!

UPDATE: The search server and the MMD schema repositories have been tagged with this tag:



  • [SEARCH-198] – The artist is getting a lowered score on MBS
  • [SEARCH-199] – Search includes empty annotations
  • [SEARCH-200] – Search on release giving to much boost to matches on CatalogNo
  • [SEARCH-201] – explain option doesnt work if search results contain non ISO-8859-1 characters
  • [SEARCH-216] – Null pointer exception when building freedb


  • [SEARCH-157] – Be able to search for a track by its metadata OR its puid
  • [SEARCH-186] – Search Server has hard coded redirect URL
  • [SEARCH-187] – Update Junit Test from 3 to 4
  • [SEARCH-202] – Allow searching for RGs based on their releases’ status
  • [SEARCH-204] – Upgrade codebase to Lucene 3.6
  • [SEARCH-214] – Add release group ID to the web service indexed search results for recordings

New Feature

  • [SEARCH-205] – Search server should return multiple ISWCs for works
  • [SEARCH-207] – Changes due to introduction of ISO-3 language code
  • [SEARCH-208] – Chnages due to Split release group attributes into two types Schema Change
  • [SEARCH-209] – Support for Multiple IPI Artists
  • [SEARCH-211] – Support for new Track ‘Number’ field in a track
  • [SEARCH-212] – Add abiility to index, display and search works by lyrics language as part of schema change
  • [SEARCH-213] – Changes due to MBS-1385:Support unknown end dates


Search server index updating paused

Tomorrow’s release requires us to update the main server and the search servers at the same time. This presents a bit of a chicken-and-the-egg problem: We need to build new indexes even before we’ve migrated the database to our new schema.

To accomplish this, I’ve stopped index updating and created a separate database that will allow me to build some indexes that will be a few hours out of date when we release tomorrow. They will be slightly old, but at least we will have indexes that work.

I expect the indexes to be up to date about 3 hours of the release is complete. If you find the indexed search out of date, please use the direct search in the meantime.

Sorry for any inconveniences this may cause.

Search server release: 2012-03-23

Earlier today we switched the latest release of our search server live. Paul says:

In this new release of the search server the basic search will now search more fields and return variations of what you searched such as spelling mistakes and the scoring has also been improved. Advanced search now lets you search for when a field doesn’t exist and you can do exact searches that take accent characters into account using the new accent fields.

We’ve also upgraded to the latest version of Lucene, added a way to see how scores are calculated for results and added integration tests. Hopefully this will all help with future stability.

UPDATE: This code lives in svn and can be found at r13480. I’ve also created this tag.

Thanks for your hard work on this release, Paul. And also thanks to Ollie for taking time to push the server portions of this live today. Here are our release notes:


  • [SEARCH-168] – Recording Search doesnt consider track duration only recoridng duration
  • [SEARCH-191] – Duplicate qdur values being added to document


  • [SEARCH-152] – Update Code to use Lucene 3.5
  • [SEARCH-160] – Searching artist by name and initial(s) is impossible, the initials are useless
  • [SEARCH-163] – Search for exact string, with no accents
  • [SEARCH-166] – Artist search does not always offer the obvious (to a human!) results
  • [SEARCH-170] – Move Basic search logic from mbserver to searchserver
  • [SEARCH-171] – Basic Search should work more like Solr Dismax Parser
  • [SEARCH-173] – Index Catalogos without space
  • [SEARCH-174] – Provide a way to search for empty/non-empty fields
  • [SEARCH-177] – Support for initialize index remotely http://localhost:8080/?init=mmap
  • [SEARCH-188] – Add Integration Tests

New Feature

  • [SEARCH-172] – Make it possible to search for barcode:"[none]"
  • [SEARCH-194] – Add debugging option to be able to get lucene explain for results

Search server bug fix release: 2011-12-24

On Christmas eve we updated our search servers with a couple of bug fixes, but then got side-tracked with Christmas itself to write this blog post. I’m finally now fixing this. 🙂

We updated our search server so that is it rate limiter enabled, which will allow us to free up another machine in the New Year. We also have two fixes in search to give better results when a name is made up of numbers, or a title contains punctuation characters.

Release Notes – MusicBrainz Search Server – Version 2011-12-24


  • [SEARCH-158] – artist not found when searching
  • [SEARCH-159] – : shoud be ignored when searching

New Feature

  • [SEARCH-161] – Search server should consult ratelimit-server

Many thanks to Paul for working on this!

Search server update 2011-12-08

We’ve just updated our search server with the latest changes and bug fixes!

This update to the Search Server finally solves the search for artist “!!!” problem properly, should now be able to find just about any artist, release, etc that contain any crazy character combination. Also you can now search for number of releases in release groups and artists with unknown gender. The code base has now been updated to Lucene 3.4, which was the latest available when these changes were made (its at 3.5 now).

Thanks for your hard work on this Paul!


  • [SEARCH-33] – Search needs to find a preposterously bad label name: !"@.*!%
  • [SEARCH-51] – Searching for certain characters returns no results, even if they’re valid.
  • [SEARCH-131] – When search for Unknown country it returns <country>UNKNOWN</country> it should return nothing
  • [SEARCH-134] – Annotation search can’t filter by type for release groups


  • [SEARCH-93] – Update Search Index Code to Lucene 3.4
  • [SEARCH-119] – Allow artist search for gender:unknown
  • [SEARCH-124] – Allow searching release groups by # releases
  • [SEARCH-128] – Make Search Server use mmap by default