Nearly one year after we released NGS, we have another schema change update with lots of new features!
This release contains 9 new features and improvements that take advantage of the new schema. These are:
More social user profiles which can now have Gravatars, languages (and the users proficiency) age and country.
More expressive aliases for artists, labels and works. Aliases can now have types, sort names and multiple aliases may be used per a locale, along with the ability to mark one alias as ‘primary’ for that locale.
Release group types have been separated into primary and secondary types. A release group now has 1 primary type and may have multiple secondary types. This allows us to have ‘remix compilation albums’, for example
Works may have multiple ISWCs
Artists, labels and relationships may be marked as ‘ended’ to indicate that they have ended, but the exact date is not known
Vinyl style/free text track numbers are now supported.
Works may have a lyrics language associated with them
Artists and labels may have multiple IPIs
We have moved to use ISO 639-3 for our language table. While not all languages are exposed at the moment, this gives us a lot more flexibility going forward.
Many thanks to nikki for going way beyond our expectations for testing (and patience!); to Ian McEwen for his continued work on statistics; and to the MusicBrainz team for making this all happen.
If you have a replicated instance of MusicBrainz, please follow these instructions to get your server running on the new schema:
Take down the web server running MusicBrainz, if you’re running a web server.
Turn off cron jobs if you are automatically updating the database via cron jobs.
Make sure your REPLICATION_TYPE setting is RT_SLAVE
Switch to the new code with git fetch origin followed by git checkout v-2012-05-15-schema-change
Run carton install --deployment. If you have not switched your installation to using carton, please read INSTALL.md on how to do this.
Run carton exec -- ./upgrade.sh from the top of the source directory.
Set DB_SCHEMA_SEQUENCE to 15 in lib/DBDefs.pm
Turn cron jobs back on, if needed.
Restart the MusicBrainz web server, if needed.
If you are running a mbslave mirror, check out the latest code and read the upgrade instructions in the README file.
Bug
[MBS-3189] – Remove unused ref_count column and related functions
On Tuesday 15 May 2012 at 18:00 UTC MusicBrainz will be unavailable for about 15-30 minutes while we release the latest and greatest schema on our main servers.
We’ve talked a bit about our upcoming schema change release, but we hadn’t nailed down the exact date of the release. Now that we’re tangibly close, we’ve settled on the May 15th as the actual release date.
As some of you may know, this summer through Google Summer of Code I’m working on internationalization of musicbrainz-server. As outlined in my proposal, I’m currently looking to find what I call “language liaisons”: folks willing to be the go-to person about a given language for me and other developers.
Auf Deutsch!
What’s expected of liaisons:
Willing to be pestered occasionally, by me or other developers, about language-specific concerns: when adding new features, and thus adding new strings, we’d like to be able to ensure nothing’s added that will need to be changed before it can be translated into a given language.
Willing to file bugs for strings already in the database that are untranslatable, should you find them.
Be on the musicbrainz-i18n mailing list; this will be the main venue for organization and communication about i18n issues.
Ideally, to be an active translator for your language – but this isn’t a requirement, because I’d like to get the widest global coverage I can; even if a language doesn’t currently have a translation, we don’t want to unintentionally sabotage future translators with untranslatable strings!
日本語
I’ll also be determining a (related) list of “target languages” for the summer, with the intention of releasing translation on musicbrainz.org with these languages at the end of the summer. I’ll consider for inclusion on this list languages that are both in active translation on Transifex and have language liaisons.
If you’re interested in being a language liaison, please contact me: ianmcorvidae (at) musicbrainz (dot) org, editor ianmcorvidae, or ianmcorvidae on IRC, and join the mailing list.
We’ve released another set of bug fixes and improvements for the server. Thanks to Joachim LeBlanc, Johannes Weißl and the rest of the MusicBrainz team for helping on this release!
Bug
[MBS-2553] – Change wording for no External Links in the sidebar
[MBS-4041] – Nonexistent elections cause Internal Server Error
[MBS-4544] – Predefined advanced searches on /search no longer work
Sorry for being a week behind on this release, but we’ve just finished pushing out another set of changes. Many thanks to Lukáš Lalinský, Paul Taylor and the rest of the MusicBrainz team for making this release happen! Here’s what we’ve just released:
[MBS-3160] – Add view to artist pages that shows release groups/recordings/etc credited to that artist only (solo releases only – exclude collaborations, feat., etc)
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:
As per my previous blog post, today is the deadline for submitting tickets for consideration in the May 15 2012 schema change release. Eleven tickets have been championed for this release — you can see each of these tickets in the schema change release fix version in jira.
I would like to call your attention to three tickets that I think ought to get more input from the community:
If any of these issues interest you, please take a look and leave a comment if you have any input. Finally, I will be keeping track of the progress of the schema change release on this wiki page.
I’m hoping to put together a complete schema change document that outlines the exact changes to our schema on April 2.
Many thanks to all of the volunteers who adopted tickets and are moving them forward!