Virtual Machine for NGS RC1 available for download

I’ve just finished uploading the Virtual Machine for MusicBrainz Next Generation Schema Release Candidate 1. This virtual machine is setup as a slave and can pull replication data from the test server by running the admin/replication/LoadReplicationChanges from the musicbrainz-server codebase about 10 minutes after every hour.

This is an easy way to jump in and take a look at how NGS and replication in NGS will work! (hint: the replication doesn’t change much)

UPDATE: See our wiki page for details on how to use this VM

Next Generation Schema Release Candidate 1 now available for you!

The MusicBrainz development team has been working hard to reach the RC1 milestone for NGS and we’re proud to announce that we’ve just released RC1 for you to play with! Not only do we have a feature-complete (only small enhancements and bug fixes remain) version of NGS, but we also have a shiny new test server to introduce to the world. is our new Mac Mini Server based test server. Since our test server doesn’t get used that much, I really wanted to waste less power running a full sized server. And I really wanted to have the test server co-located with the rest of our machines, so we opted to purchase a Mac Mini for this job (a Mini only sucks 10W of power for most of the time, which is great). This new machine will also (and permanently) be reachable as the new, but the DNS hasn’t propagated yet, so we opted to give the machine a temporary name in honor of its first duties.

Back to RC1: We’ve fixed a ton of bugs and we’ve worked hard to get all the new features in that will be in NGS. From here on out we’re hoping to only fix bugs and do minor enhancements. We do not plan to add new features at this point in time. Our focus is to finish the open bugs and ship NGS as soon as possible. In this release we’ve also included a large batch of usability improvements for the Release Editor, which is getting much closer to being complete.

If you’ve been holding off testing NGS, now is the time for you to jump in. We need a lot more help to test NGS and find all those pesky bugs that still remain. Please play with RC1 and log in with your normal MusicBrainz account credentials. If you find any problems, please report them to our bug tracker. We’re specifically looking at people to test the following:

  • Does the data all display correctly?
  • Have we preserved the editing history sufficiently? Can you find all the edits you’ve made and do they display correctly?
  • Can you make new edits and adjustments to data?

We have a new NGS data dump to go with the RC1 release. Replication has also been turned on for RC1, so if you’re interested in testing the replication, make sure you have the latest code from git, import the data dump and then run admin/LoadReplicationChanges 10 minutes after the hour to get updates for RC1. I hope to release a new virtual machine tomorrow that will allow people to test the replication on their own turf — but I’m not quite ready to promise this yet.

Thanks to everyone who helped work on this release!

MusicBrainz NGS RC1 release: A quick update

After a great day of teamwork in preparing for today’s RC1 release it was the database that wouldn’t play along. Our code is ready, but we’re hitting glitches on the database on our new test server.

We’re now waiting for a new clean migration of the data which takes several hours, so we need to postpone the RC1 release for a few hours. 😦

We’re working hard to get RC1 out ASAP — stay tuned!

MetaBrainz Foundation was in the black for 2010!

I just posted the Profit & Loss for 2010 for the MetaBrainz Foundation!

Short summary: We earned $177k and we’re in the black by almost $5k, but we’re still not raking in the bucks.

But, a tiny non-profit being in the black for this crappy economic climate is awesome and makes me happy. Watch for a full annual report coming in the next few weeks!

Next Generation Schema virtual machine available for download

Using Virtual Box I’ve created a virtual machine that contains a complete NGS installation. This installation also has the latest NGS data (without the edits) loaded in it.

If you’re interested in playing with NGS on your own machine, but don’t want to go through the long setup process, this virtual machine is for you!

To play with this virtual machine on your Windows, Linux or Mac machine, read our wiki page!

Next Generation Schema Release Candidate 1: Monday January 17th

As of today we can finally see the light at the end of the tunnel! We feel confident that we can finish all new features (and most improvements as listed in jira) by January 17th. Once we reach RC1 we’re going to freeze the features for NGS and only work to fix bugs in our codebase.

That said, we hope to release NGS onto the main servers sometime in February.

Its been a very long road to NGS, but it is finally tangibly close. I’m getting excited!

Next Generation public schema frozen & new data dump available

Hello and Happy New Year!

Very late last year we finally hit a milestone we’ve been working towards for quite some time: Freezing the public NGS schema!

The public schema refers to the collection of tables that will be replicated in NGS. See below for a complete list of all those tables. However, we may make small changes to some of the tables in NGS that are not replicated. This should not affect anyone, unless you are actively hacking on the MusicBrainz Server code.

Also, we have a new data dump for this frozen schema available for anyone who would like to play with it. This data dump will cleanly import into the current version of the server source code in git.

All the tables that will be replicated for NGS:

annotation, artist, artist_alias, artist_annotation, artist_meta, artist_tag, artist_credit, artist_credit_name, artist_gid_redirect, artist_name, artist_type, cdtoc, clientversion, country, gender, isrc, l_artist_artist, l_artist_label, l_artist_recording, l_artist_release, l_artist_release_group, l_artist_url, l_artist_work, l_label_label, l_label_recording, l_label_release, l_label_release_group, l_label_url, l_label_work, l_recording_recording, l_recording_release, l_recording_release_group, l_recording_url, l_recording_work, l_release_release, l_release_release_group, l_release_url, l_release_work, l_release_group_release_group, l_release_group_url, l_release_group_work, l_url_url, l_url_work, l_work_work, label, label_alias, label_annotation, label_meta, label_gid_redirect, label_name, label_tag, label_type, language, link, link_attribute, link_attribute_type, link_type, link_type_attribute_type, medium, medium_cdtoc, medium_format, puid, recording, recording_annotation, recording_meta, recording_gid_redirect, recording_puid, recording_tag, release, release_annotation, release_gid_redirect, release_meta, release_label, release_packaging, release_status, release_group, release_group_annotation, release_group_gid_redirect, release_group_meta, release_group_tag, release_group_type, release_name, replication_control, script, script_language, tag, tag_relation, track, track_name, tracklist, tracklist_index, url, work, work_annotation, work_gid_redirect, work_meta, work_name, work_tag, work_type