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 bygit 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
- [MBS-4616] – Add work language statistics
- [MBS-4629] – /cover-art page shows no collections
- [MBS-4637] – Timeline graph won’t graph anything without an entry in statistics/view.js
- [MBS-4640] – Clicking cover art opens box with “����” (4 U+FFFD)
- [MBS-4642] – Thickbox CSS interferes with MB CSS
- [MBS-4647] – Cover art page allows submitting edit with no cover art when JS is off
- [MBS-4648] – Changing cover art type from “other” to unset causes Internal Server Error
- [MBS-4678] – upgrade.sh is not ready for testing
- [MBS-4679] – Internal server error adding secondary types to a release
Improvement
- [MBS-1485] – Alias types
- [MBS-1798] – Lyrics language for works
- [MBS-1799] – Add ISO 639-3 language codes to the database
- [MBS-1981] – Add blog feed to the home page
- [MBS-2240] – Aliases: certain locale can be used only once in the list of aliases
- [MBS-2532] – Allow more than one IPI per artist
- [MBS-2851] – Timeline graph events should be in the database
- [MBS-2885] – Allow more than one ISWC per work
- [MBS-3646] – Split release group attributes into two types
- [MBS-3788] – Alias improvements
- [MBS-4625] – Improve wording of cover art tab when cover art comes from relationships
- [MBS-4676] – Do not allow people entering deprecated relationships