Performance problems on the Wiki

I’ve had to disable the “FullSearch” moin macro, at least for now – far too many pages were using it, sometimes multiple times on the same page, and each invocation of FullSearch is rather expensive. The result was that the wiki server – which also runs the mailing lists and various other important things – was dying a death.

I don’t know why this has only just started being a problem, because it looks like most of those uses of FullSearch have been in place for a while. But, for whatever reason, it’s a problem now, and the quick fix to stop the server crashing is to disable the macro. Sorry ๐Ÿ˜ฆ

Testing Picard on OS X (Intel)

If you have an intel Mac and would like to try out the first test of a PUID enabled Picard on OS X, please download this DMG and post a comment to let me know if it works.

This DMG:

  • Is for INTEL only
  • Only runs on OS X 10.5 (Leopard)
  • Probably does not have working CD Lookup
  • Might be buggy
  • Is based on the 0.9.0 Picard tarball
  • Is NOT a Universal Binary

If this DMG works for people then I will proceed to try to get 10.4/PPC/disc lookup support working.

Testing a new libofa release

libofa, the Open Fingerprint Architecture library had many issues in the last release and quite a few of them were cleaned up, including the notorious incorrect output bug on Intel Macs. I’ve put together a test release of 0.9.4 to see if people can build this tarball without major problems.

If you’ve had issues with previous builds of libofa, please build and install this tarball. Report any bugs/problems to the usual place, please.

Search server upgraded

The search server has undergone a complete overhaul and things are looking much better and much more stable now. In the last two weeks we have:

  1. Upgraded the search engine to use Lucene 2.2 (we were using 1.0) I would expect a number of bugs and idiosyncrasies to go away now that we’re using an improved search engine. If you have a search bug pending, please take a minute to see if your bug still applies.
  2. Removed all numbered types from the indexes. For instance, if you wanted to search for a band previously you had to search for artype:1. Now you can search for type:group or type:person. In the release search languages, scripts, countries, type and status are now indexed using text strings.
  3. Purchased, installed and deployed a new search server with gobs of RAM. Searches are happening quite fast now.

For details on the new improved search syntax, please take a look at the search syntax page. If you find new bugs, please report them.

General update: Search troubles and solutions

It appears that the world is slowly discovering MusicBrainz. Last month we pushed nearly 2M pages per day and smoke is pouring out of our poor search server. Fortunately we have some money in the bank so, the board of directors approved the purchase a new RAM-heavy server for use as our new search server. Then yesterday, Matthew Mullenweg of WordPress fame donated $5000 to the MetaBrainz Foundation!! That nicely covers the costs of our new search server (~$3000) and then some.

I’m also working on improving the search server so that it runs more efficiently and that we get fewer timeout errors. Things improved yesterday when I redirected all web-based searches to our new server. I hope to cut over the rest of the search traffic (web service traffic) to a better suited server later this afternoon.

In other words — I’m working hard to make sure the site stays responsive, even under the growing loads. Things should improve much more once we can deploy the new server mid-next week.

Stay tuned for more details on the changes on the search server!

Working With Picard, Episode 1


The first episode in my series of “Working with Picard” screencasts has now been recorded, and is available for public consumption ๐Ÿ™‚ A YouTube link to the video is available, and a higher resolution Ogg Theora file is also also available. You’ll probably find the Ogg Theora easier to read due to the higher resolution.

In this first screencast I go through the basics of Picard – how to load files, how the interface works, and basic usage with clusters.

If there’s something that’s unclear, or you have future ideas for screencasts – let me know! Other wise, enjoy the screencast – and show you’re friends and convince why MusicBrainz is so cool (if you haven’t already ๐Ÿ™‚