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.

rc1.musicbrainz.org 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 test.musicbrainz.org, 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!

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

NGS Developers: Schema changes pushed to master

Ollie and I have been working on a bunch of schema changes to make things more consistent and to add more time stamps to the database. We’ve included other data migration patches from Luks and Murdos as well.

All of these changes have been pushed to the master branch on our git repository. If you pull this branch from our repo, you must reload your data with this fresh NGS snapshot!

On monday we will discuss if we can call our core schema frozen yet. Let’s hope so. ๐Ÿ˜‰

MusicBrainz Server git repo path change

We’ve changed the path to our main MusicBrainz Server git repository. The repo is now available at:
git://git.musicbrainz.org/musicbrainz-server.git.

Please update your local repos accordingly!

To update a repo run:
git remote set-url origin git://git.musicbrainz.org/musicbrainz-server.git

Where origin is the name of the remote repo (run git remote -v to find that out if you’re not sure).

Note: The previous path has been turned into a symlink to ease this transition, but it will stop working as of November 1st so make sure to update sooner rather than later!

If you are a developer with write access, replace the url above with:
ssh://mbgitrw@git.musicbrainz.org:10015/musicbrainz-server.git.

Next Generation Schema: Release Candidate 1

We’re working hard to get to the Release Candidate 1 release for NGS. We’ve got lots of code reviews in progress, lots of code being committed and a lot of activity all working towards shipping NGS.

However, as we’re working an exposing new features we’re still getting a number of new bugs submitted that expose other issues that we need to address. This is the problem with porting a very large old codebase — we need to simply slog through it and get it done as soon as we can.

With those caveats, I’ll say that I expect the RC1 release to happen somewhere near the end of November. When we get closer and our bug list is converging, I’ll post an actual date for this release. In the meantime, we’re going to put our heads down and get more work done.

Sorry for being vague about this — but I would much rather not slip anymore releases.

New NGS data dump available

I’ve just pushed out a new NGS data dump.

We’re finishing up work on the migration scripts and we’re hoping to finalize the last schema change for NGS next week. After that the NGS schema will be officially frozen in anticipation of the release. After this change I will update the data on the test server and restart the replication feed for one (hopefully) last time.

Stay tuned for more updates!

Looking for short term contract software engineer

MusixMatch would like to have a feature (or two) added to NGS, but I’m dedicated to not piling on more work for the MusicBrainz engineering team. MusixMatch has agreed to pay for the development of these features via paid software engineer and then submit the patch for inclusion into NGS.

If you’re a software engineer and you have experience using Perl and Postgres and are available immediately to hack on some new features to NGS, please send mail to helpwanted at musicbrainz dot org.