Server update, 2012-12-10

We’ve just finished pushing out an update to the musicbrainz.org servers. While work continues on the new edit system and an ingestion solution, this is a fairly small release of mostly bug fixes. Thanks to Pavan Chander and the MusicBrainz team for their work on this release!

Bug

  • [MBS-5035] – Removing release leaves orphaned recordings
  • [MBS-5126] – Orphaned recordings do not get removed (regression)
  • [MBS-5548] – Git commit data output isn’t HTML escaped
  • [MBS-5576] – Release group bar when adding disc IDs is one column too short
  • [MBS-5581] – Some stuff untranslated that wasn’t before
  • [MBS-5618] – Wikipedia abstract logic doesn’t properly encode certain characters
  • [MBS-5622] – MB registration captcha does not work over SSL

Improvement

  • [MBS-4228] – Improve artist alias description
  • [MBS-4568] – Add <bdi> tags to help with rendering of RTL text
  • [MBS-5260] – Cache /text.js somehow
  • [MBS-5317] – Webservice needs to support fmt=json switch to fmt=jsonnew for search queries
  • [MBS-5477] – Show country and gender in artist search results

New Feature

  • [MBS-4108] – Display Wikipedia abstract inline

The Git tag for this release is v-2012-12-10.

Yet another fixed VM uploaded

Though the last version of the 2012-10-15 VM fixed the .ovf to remove an accidentally-included extra disk, this time an incorrect version of a different disk was added. This has been corrected and the finished product tested a bit, so hopefully this time we won’t need another followup blog post!

This time it’s MusicBrainz 2012-10-15.ova, in the usual places.

Server update, 2012-11-27

We’ve just finished pushing out a tiny little update to the MusicBrainz servers. This one improves on the ‘set release group cover art’ feature, but exposing an interface to make these changes. Later work will expose this cover art in more places. So, here’s the grand list of what has changed! Thanks to the MusicBrainz developers for their work on this release.

Bug

  • [MBS-4627] – Highlight all images with pending edits

Improvement

  • [MBS-5265] – Add release-group front cover art support

The Git tag for this release is v-2012-11-27.

Server update, 2012-11-14

We’ve just finishing pushing out another update to the MusicBrainz web servers. Sadly, this one is both a little bit later and quite a bit smaller than our normal releases – blame the summit for that! Many thanks to Frederik “Freso” S. Olesen, Michael Wiencek, Wieland Hoffmann and the MusicBrainz team for their work in this release. Before we get to the release notes, a quick announcement regarding DBDefs:

DBDefs.pm

This release features a new way of working with DBDefs, and we recommend everyone who runs a MusicBrainz server to reset their DBDefs to the new system. However, this should only be necessary if you run a web server – if you only use replication it should be possible to continue with the old DBDefs. To use the new DBDefs:

  1. Copy lib/DBDefs.pm.sample to lib/DBDefs.pm.
  2. Edit lib/DBDefs.pm to match your configuration.

This will give you a DBDefs.pm configuration that will continue to work with future changes to DBDefs, rather than causing exceptions as it previously did.

Release notes

Here’s what we got fixed:

Bug

  • [MBS-4180] – Strange behaviour for artist credits when renaming artist
  • [MBS-5200] – Errors are not translatable
  • [MBS-5247] – Fix all the invalid HTML reported by MBS-5246
  • [MBS-5292] – /release/MBID/cover-art doesn’t list cover art if you have not loaded the edits dumps on your slave server
  • [MBS-5389] – Relationship editor doesn’t correctly handle relating a recording on the release to another recording on the release
  • [MBS-5431] – Moving entities to or merging them artists into Deleted Artist should not be allowed
  • [MBS-5438] – Text overlaps help bubble in relationship editor
  • [MBS-5454] – Broken link to `remove recording edit-type’ documentation on remove recording page
  • [MBS-5456] – Middle click paste does not trigger URL match/cleanup
  • [MBS-5464] – Blog posts on the front page are cached for too long
  • [MBS-5471] – No correct search results even with a recording ID (during Add Release)
  • [MBS-5476] – Pressing enter in empty fields selects instruments / vocals
  • [MBS-5480] – screen space with many artists in the add relationship widget
  • [MBS-5485] – Artist comments not always converted to use XML character references
  • [MBS-5509] – Interface language isn’t persistent enough
  • [MBS-5521] – Date placeholders in the relationship editor are not translated
  • [MBS-5529] – New relationship editor overheats
  • [MBS-5538] – Pressing enter in work add adds/removes ISWC instead of submitting

Improvement

  • [MBS-3353] – Accept XX:XX:XX track times
  • [MBS-4578] – Improve configuration of server
  • [MBS-5206] – Guess Case: Remove the Classical mode
  • [MBS-5246] – Implement html5 validation using validator.nu.
  • [MBS-5433] – Include interface language in stack traces
  • [MBS-5445] – All the widgets forms should submit when hitting <Enter> in a field
  • [MBS-5477] – Show country and gender in artist search results
  • [MBS-5537] – Display only ‘Add note’ on the note & vote submit button when the edit is already closed

Task

  • [MBS-5504] – Add "DHHU" to the "Other Databases" whitelist

Sub-task

  • [MBS-5488] – Amazon coverart over SSL
  • [MBS-5489] – Basic switch-scheme-only coverart over SSL

The Git tag for this release is v-2012-11-14.

Server update 2012-10-29

The MusicBrainz team are all mostly back after participating in Google Summer of Code and having a small face-to-face meetup, so we’ve finally got round to getting the latest release out. Because of so much travel, this is a tiny release, but here’s what’s changed:

Bug

  • [MBS-4727] – Regression : Can’t add ISWC when adding work
  • [MBS-5463] – Release editor fails on releases without disambiguation comment
  • [MBS-5478] – Can’t unselect all recordings / works

Improvement

  • [MBS-5422] – Show close time in open auto-editor elections

Virtual Machine for 2012-10-15 release now available

If you’ve been waiting for the VM for the 2012-10-15 version, your wait is over! I’ve updated the Server Setup page with the links to the latest VM. As usual it contains a replicated database that can easily catch up to the latest data.

Grab yours now and start replicating!

UPDATE: This virtual machine is broken — we’ll work to get a new one up soon.

Update on postgresql 8.4 issues and missing functions in upgrade

We’ve been seeing a number of issues with the upgrade scripts for this release reported here on the blog, in IRC, as well as the ticket tracker. We’ve got a couple bits of news for those upgrading from codebases older than mid-August and those using versions of PostgreSQL older than 9.0:

  1. MBS-5473: This is the ERROR: function controlled_for_whitespace(character varying) does not exist migration problem. Slaves with imports done before mid-August are missing a few stored procedures that are necessary for the upgrade. This has been fixed in the master branch as of commit 082e608c074641e2e8df2c0809d35421b02c7899 — to run the upgrade, run git fetch origin, then git checkout 082e608c074641e2e8df2c0809d35421b02c7899, then continue with step #6 of the original instructions. If you already started the upgrade but failed on the ‘merge-duplicate-credits’ script (as is likely, with this bug), don’t worry: at that point in the upgrade, restarting is not an issue.
  2. MBS-5475: This is the ERROR: syntax error at or near “ORDER” migration problem. Unfortunately, this one’s more serious: on PostgreSQL 8.4, our upgrade scripts don’t work, as one uses a feature introduced in 9.0 (as previously mentioned) After some hours of investigation, it appears that this issue can’t be resolved reasonably; therefore, for 8.4 users the upgrade path is a data re-import using a recent (post-schema-change) codebase and a data dump from October 17th or later. We’d also recommend updating to PostgreSQL 9.x at the same time if that is possible.

Sorry again for the inconvenience.

2012-10-15 migration on postgres 8.4 is broken

Our users have reported a bug where migrating a slave DB on postgres 8.4 results in this error:

ERROR: syntax error at or near “ORDER”
LINE 6: SELECT array_agg(artist_credit ORDER BY artist_credit AS…

If you are 8.4 please wait on your migration — we’re hoping to have a workaround ready today. If you need to get this fixed sooner, moving to postgres 9.x or importing the 2012-10-17 data dump would solve this problem.

Sorry for the troubles!

Updating MusicBrainz slave instances for 2012-10-15

If you have a replicated instance of MusicBrainz, please follow these instructions to get your server running on the new schema:

  1. Take down the web server running MusicBrainz, if you’re running a web server.
  2. Turn off cron jobs if you are automatically updating the database via cron jobs.
  3. Make sure your REPLICATION_TYPE setting is RT_SLAVE
  4. Switch to the new code with git fetch origin followed by git checkout v-2012-10-15-schema-change
  5. Run carton install --deployment to install any new perl modules.
  6. Run carton exec -- ./upgrade.sh from the top of the source directory.
  7. Set DB_SCHEMA_SEQUENCE to 16 in lib/DBDefs.pm
  8. Turn cron jobs back on, if needed.
  9. Restart the MusicBrainz web server, if needed.

This upgrade requires quite a bit of disk-space to execute; your slave may run into trouble if there is less than 10Gb of disk space free. If you’re on a disk space constrained machine, you may want to consider re-importing the data rather than upgrading in place. The next data dump should be available in about 14-16 hours from now.