Server update, 2014-05-26

We’re back with another release on the heels of our schema change. This release includes some fixes that were hot-fixed to the production servers late the other week as well as some that have gone through the usual beta process. As such, most of the changes have to do with new or changed features of that release, plus some assorted refactoring and other bugfixes. Thanks to chirlu, nikki, and the rest of the MetaBrainz team for their hard work on this release!

Happy series editing!

The git tag for this release is v-2014-05-26.

The full list of fixed tickets, as usual:

Bug

  • [MBS-6181] – Deleted editors may be nominated for auto-editorship
  • [MBS-6309] – Search results don’t have a score column anymore after a few pages
  • [MBS-7354] – Internal Server Error in mini relationship editor when a relationship has been removed
  • [MBS-7513] – Uploading PDF cover art requires the user to switch to the “All files” filetype in the file selection dialog
  • [MBS-7514] – New accounts may be called “Deleted Editor #nnn”
  • [MBS-7516] – Age of 0 not displayed in user profiles
  • [MBS-7519] – “PDF file” labels displayed on top of image previews
  • [MBS-7530] – Caught exception in MusicBrainz::Server::Controller::Series->add_alias “The edit could not be created.
  • [MBS-7532] – ISE: Undefined value when relating Release Groups to an ordered Series
  • [MBS-7533] – Can’t create a new series from inline search
  • [MBS-7538] – Regression: Not possible to edit URL relationship attributes
  • [MBS-7539] – series. numbering elements is not auto-edit while setting automatic is
  • [MBS-7543] – “Cancel” does not cancel changes made in mini-relationship-editor for instrument-performer ARs
  • [MBS-7544] – Grouping link types are selectable in the release editor
  • [MBS-7545] – Release editor creates empty URL edits if you just change the release name
  • [MBS-7548] – Automatic series ordering doesn’t work correctly
  • [MBS-7549] – Regression: Release Editor URL seeding does not work anymore
  • [MBS-7550] – Regression: Editor search is broken
  • [MBS-7555] – ISE when changing series order numbering
  • [MBS-7556] – URL cleanup broken on edit URL pages
  • [MBS-7558] – Relationship-editor shows “The end date cannot preceed the begin date” incorrectly
  • [MBS-7559] – Sort name guess case is missing from series alias pages
  • [MBS-7561] – Relationship editor doesn’t show the count of selected recordings
  • [MBS-7562] – Regression: Error trying to unset a label in “edit release label”
  • [MBS-7563] – Multiple failures on “edit label”
  • [MBS-7570] – Add series and instruments as linkable entities in annotations
  • [MBS-7576] – Not possible to add relationships to a non-label from a label edit page
  • [MBS-7579] – Error while trying to add a release
  • [MBS-7593] – Regression: Seeding URLs to mini-relationship editor is broken
  • [MBS-7597] – Replacing recording-work relationship in relationship editor fails
  • [MBS-7599] – Relationship editor doesn’t load relationships for some recordings
  • [MBS-7600] – Firefox: “Edit Note” does not show Add Release Label if the annotation gets removed
  • [MBS-7603] – Replication trigger missing for link_attribute_text_value table

Improvement

  • [MBS-7493] – Redirected MBID pages, slave/beta servers, and non-preferred scheme should use rel=canonical to link to the main site
  • [MBS-7517] – Deleted editors should appear as “deleted”, not as “Limited User”
  • [MBS-7567] – Provide “copy/sort” bubble for all alias sortnames
  • [MBS-7575] – Support creating/editing URL relationships with the /relationship-editor endpoint
  • [MBS-7596] – The relationship editor dialog should work on a copy of the relationship until the dialog is accepted
  • [MBS-7619] – admin/config.sh means configuration is split between files (and since checked-in complicates customization)

Task

  • [MBS-7547] – Remove MAC authentication for WS

MHD San Francisco 2014

MusicBrainz is represented at Music Hack Day San Francisco 2014 this weekend!

If you’re a hacker who is participating, this page collects a number of interesting things about MusicBrainz that lets you get started with MusicBrainz easily.

If you’d like some help with MusicBrainz, come see Rob in the the back of presentation area. Rob is the guy with the crazy hair and the bright orange t-shirt.

Have fun!

Search Server Update, 2014-05-14

Bug

  • [SEARCH-141] – Remove or change setMergeFactor option in IndexBuilder
  • [SEARCH-332] – target element for relationships included in /ws/2/url endpoint is improperly structured to match lookup
  • [SEARCH-336] – searching “Universal Music” and 34. entry is correct “Universal Music”
  • [SEARCH-339] – MB search requires minimum of 4 characters to consider second name
  • [SEARCH-347] – Countries should be sorted before cities in Area search
  • [SEARCH-348] – Full Search Index Failure

Improvement

  • [SEARCH-265] – Add editors to the indexed search
  • [SEARCH-341] – Allow searching releases with specific packaging type
  • [SEARCH-352] – Include disambiguation in work index
  • [SEARCH-355] – Label Sortname field removed from Database
  • [SEARCH-356] – Area Sortname field removed from Database

New Feature

Task

  • [SEARCH-338] – Return containing areas in area search

Server upgrade and schema change, 2014-05-14

Hello again! This fortnight, as we’ve mentioned among the past few posts, is our twice-annual schema change release! This means that we’ve got some big changes, as well as special upgrade instructions.

In the former category, we’ve added support for two new entities: Series and Instruments, each of which is exactly what it sounds like. We’ve also done some various cleanup (tables missing from replication, making some attribute-style tables (e.g., label types) trees, and more properly orderable, removing unuseful sortnames). In non-schema-change fixes, we’ve fixed some merging for Artist Credits, show Area names after Places routinely, and perhaps most excitingly, added smaller versions of the relationship editor for other entities. It’s now possible to add relationships to any entity from most entity edit pages, expanding on our previous addition of URL editing!

As far as upgrading:

  1. Ensure you’ve replicated up to the most recent replication packet available with the old schema. (if you’re not sure, run ./admin/replication/LoadReplicationChanges and see what it tells you).
  2. Take down the web server running MusicBrainz, if you’re running a web server.
  3. Turn off cron jobs if you are automatically updating the database via cron jobs.
  4. Make sure your REPLICATION_TYPE setting is RT_SLAVE
  5. Switch to the new code with git fetch origin followed by git checkout v-2014-05-14-schema-change
  6. Run ./upgrade.sh (or carton exec -Ilib -- ./upgrade.sh if you’re using carton, with older installs).
  7. Set DB_SCHEMA_SEQUENCE to 20 in lib/DBDefs.pm
  8. Turn cron jobs back on, if needed.
  9. Restart the MusicBrainz web server, if applicable. It’s also recommended you restart memcached.

The git tag for this release, as mentioned above in the instructions, is v-2014-05-14-schema-change.

Full release notes, as usual:

Bug

  • [MBS-5978] – Replication feed is missing release_tag
  • [MBS-6709] – “None” is no longer the last Packaging type after adding Book and Cassette Case
  • [MBS-7482] – Artist merge with AC renaming does not merge identical ACs

Improvement

  • [MBS-2410] – Label types not a tree anymore
  • [MBS-2714] – Add support for Series.
  • [MBS-5897] – Make it possible to see edit JSON in the case of an ISE or poor data display
  • [MBS-6144] – Remove the apparently-unused script_language table
  • [MBS-6602] – Remove sortnames from areas
  • [MBS-6603] – Remove sortnames from labels
  • [MBS-6651] – Make it possible to disable dates for relationship types
  • [MBS-6886] – Display area after place names
  • [MBS-6887] – Model coordinates without nullable latitude and longitude
  • [MBS-7205] – Link types should track assumed cardinality
  • [MBS-7411] – Don’t require disambiguation comments for places from different areas
  • [MBS-7470] – Merging/combining RG types (primary/secondary) is unintuitive

New Feature

  • [MBS-3674] – Make instruments entities
  • [MBS-6234] – Add a relationship editor to artists, labels, recordings, release-groups, places, areas and works

Task

  • [MBS-7441] – Check non-replicated changes to DB that have happened since last schema change

May 14 schema change release time

The schema change release is approaching fast and we’re making good progress taking care of all the tasks that need to be completed. During yesterday’s meeting we agreed on the time to do this release: 14 May 1600UTC (9am PDT, 11am Chicago, 17h BST, 18h CEST, timezone map).

We will start the release process at this time — the exact time when the site will be down will depend on how long it will take us to walk through our pre-release checklist. We will be announcing the exact downtime via Twitter (@musicbrainz) and via a banner on the main MusicBrainz pages.

We expect our downtime to be somewhere between 15-30 minutes.

Thanks!

Server update, 2014-04-28

Once more now before our upcoming schema change, we’re here with our fortnightly musicbrainz-server release! Some notable changes aside from bug fixes include a few additions to whitelists newly-approved, and enabling thumbnail display for PDF cover art. Thanks to the Internet Archive for making PDF thumbnails work, and thanks to chirlu, nikki, reosarevok, and bitmap for their work this release.

The git tag for this release is v-2014-04-28.

Full list of tickets:

Bug

  • [MBS-4151] – Publisher ARs for different entity types create quite confusing label AR pages
  • [MBS-6166] – Deleted accounts can still have details edited
  • [MBS-6508] – Artist/label create/edit edits fail to display removed or merged areas
  • [MBS-7037] – Chrome displays broken image instead of error message
  • [MBS-7352] – Release editor prints an untrue error “not logged in” after clicking “Enter Edits”
  • [MBS-7376] – Selecting value from a drop-down list by pressing Enter prompts inexplicable behaviour
  • [MBS-7400] – “merge artist” edit with “rename artist credit” option is a tracklist changing edit but is missing in release, release-group and recording edit histories
  • [MBS-7412] – Reorder medium edits are generated for new releases
  • [MBS-7437] – Area can’t be removed from a place
  • [MBS-7438] – Empty edits are created for places due to coordinate padding
  • [MBS-7439] – Internal server error when seeding badly formatted dates to the release editor
  • [MBS-7444] – Release editor seeding should ignore medium position field
  • [MBS-7445] – Not all mediums gets reordered when you delete one
  • [MBS-7447] – Internal server error when seeding invalid track lengths to the release editor
  • [MBS-7450] – Places on the equator don’t have their coordinates displayed
  • [MBS-7451] – Possibility to remove track durations from releases with discID
  • [MBS-7453] – Internal server error in the release editor (new row for relation “release_group” violates check constraint “control_for_whitespace”)
  • [MBS-7455] – ISE for /ws/js/edit/preview: Error: Could not create MusicBrainz::Server::Edit::Release::DeleteReleaseLabel edit
  • [MBS-7456] – Error when using the track parser to parse artists and it can’t find any
  • [MBS-7458] – Internal server error when trying to delete a non-existent user
  • [MBS-7459] – Internal server error displaying add disc ID edit (Can’t call method “release” on an undefined value)
  • [MBS-7464] – Release editor does not use canonical URLs

Improvement

  • [MBS-4758] – Show list of recordings after work rels on work pages
  • [MBS-5552] – Mark edit URL merge-edits properly
  • [MBS-5640] – Don’t embed full size images in the page when no thumbnails are present
  • [MBS-7345] – Sidebar external links: show span.mp pending edit status
  • [MBS-7361] – Provide an HTML markup hook for finding/matching dynamic work attributes
  • [MBS-7460] – Enable thumbnails for PDFs

Task

  • [MBS-7440] – Add Resident Advisor and IMVDb to the otherdbs whitelist
  • [MBS-7454] – Add Rap Genius / Rock Genius and Project Gutenberg to lyrics whitelist

Sub-task

  • [MBS-7448] – Add URL lookup to the website

Server update, 2014-03-31

We’re back with another musicbrainz-server release. Thanks this fortnight to contributions from chirlu, JesseW, reosarevok, and nikki, as well as the MetaBrainz team. This release is all bug fixes and small improvements of various sorts, though we’re likely to, in the next few days, release the code to automatically calculate recording times from track times (where applicable). Stay tuned!

The git tag for this release is v-2014-03-31.

Full changes:

Bug

  • [MBS-4706] – Inconsistent state with pending edits: 2 mediums at position 1
  • [MBS-5512] – “Relate to URL…” is missing the returnto= parameter and returns us to another page
  • [MBS-6681] – URL cleanup (social networking, other databases, etc.) overrides correct relationship types
  • [MBS-6897] – Release has multiple “Disc 1” mediums, apparently impossible to change in the editor
  • [MBS-7142] – Missing release artist in “Remove release label” edit
  • [MBS-7247] – Wrong search generated for CDstub
  • [MBS-7328] – Release Add/edit Recording Search is broken
  • [MBS-7340] – Can’t add work after fixing an error
  • [MBS-7342] – Release editor hangs on “Submitting edits…” after certain errors occur
  • [MBS-7343] – Angle brackets disappear on release editor preview
  • [MBS-7369] – Web page no longer has markup hooks for finding catalogue numbers.
  • [MBS-7372] – Release Editor: CD TOC x Track Parser breaks horribly
  • [MBS-7373] – Edit diff for reordering is misleading
  • [MBS-7378] – Inline search returns duplicate results when searching for the same text twice
  • [MBS-7380] – Statistics for work attributes are wrong
  • [MBS-7387] – ISWC in work meta description (web search description) on works is broken
  • [MBS-7388] – Server allows setting gender for choirs/orchestras
  • [MBS-7401] – “Non-group artists” stat shouldn’t count orchestras and choirs

Improvement

  • [MBS-1271] – Some pages say “please log in to…” and some don’t
  • [MBS-2754] – Recording page shows track number but not disc number for occurences
  • [MBS-6806] – Add social network autoselect for Instagram and blog autoselect for Tumblr
  • [MBS-7272] – Create relationship page should show recording artists
  • [MBS-7356] – ISE page should include a timestamp
  • [MBS-7364] – Artist /create and /edit should show Birth Area etc for Person
  • [MBS-7366] – Add padding to the header on edit pages

New Feature

  • [MBS-7341] – Add a button to reset previous recordings in the release editor

Task

  • [MBS-7368] – Add a name attribute to the type select in the links editor
  • [MBS-7382] – Make orchestra and choir behave and show like group
  • [MBS-7383] – Add orchestra and choir to the stats pages

More details for our 2014-05-15 schema change release

As promised last week, here is a more detailed explanation of what is going to be changing during our May 15th schema change release:

  • [MBS-5978] – Replication feed is missing release_tag: This will not change any database tables but will finally include release_tag data in our Live Data Feed.
  • [MBS-6709] – "None" is no longer the last Packaging type after adding Book and Cassette Case: See below for more details.
  • [MBS-2410] – Label types not a tree anymore: This bug and MBS-6709 add “parent”, “child_order” and “description” columns to all of the yellow tables on this diagram except for language, script and script_language.
  • [MBS-2714] – Add support for Series: Details are provided in the ticket itself.
  • [MBS-6144] – Remove the apparently-unused script_language table: Exactly what it says on the tin.
  • [MBS-6602] – Remove sortnames from areas: Removes the sortname column from the area table.
  • [MBS-6603] – Remove sortnames from labels: Removes the sortname column from the label table.
  • [MBS-6651] – Make it possible to disable dates for relationship types: Adds a “has_dates” boolean column to link_type, to indicate whether a particular relationship type allows dates or not. The upgrade will set them all to “can have dates” for now and we will manually disable the appropriate ones later.
  • [MBS-7205] – Link types should track assumed cardinality: Details are provided in the ticket itself.
  • [MBS-3674] – Make instruments entities: This adds the following tables: instrument, instrument_type, instrument_gid_redirect, instrument_alias, instrument_alias_type, instrument_annotation, edit_instrument, l_*_instrument, l_instrument_* (the usual AR tables to other entities).

Server update, 2014-03-17

Another fortnight and another release with a small crop of bugs and then some! The biggest changes this week:

  • Work attributes support, originally part of last May’s schema change, is finally done and released!
  • PDF support for the Cover Art Archive. PDFs won’t appear as the front cover, since they can’t generally be displayed in a browser and the Internet Archive doesn’t currently create thumbnail images for them.
  • Removing RDFa. Most of you probably never used it anyway, but as we’ve been talking about for a while now, and especially with the great work LinkedBrainz has been doing, it was time to stop poorly half-maintaining rapidly-disintegrating RDFa support on musicbrainz.org itself.

Aside from that, we have the usual crop of fixes, primarily cleanup from the fixes above, the new release editor, and the new URL relationships.

The git tag for this release is v-2014-03-17.

Bug

  • [MBS-5244] – Remove bits of RDFa which were commented out because of invalid HTML.
  • [MBS-6067] – Internal server error when using query parameter with a lookup in the webservice
  • [MBS-7267] – Country column is blank when looking up a FreeDB ID
  • [MBS-7299] – Place types and alias types are not translatable
  • [MBS-7300] – Existing image URLs always link to .jpg when adding an image
  • [MBS-7311] – RE: Guess case dropdown doesn’t update when changed on the other tab
  • [MBS-7319] – Not possible to enter Facebook URLs by typing
  • [MBS-7322] – URL are not added when creating work with ISWC
  • [MBS-7323] – Can’t edit artist because of badly retrieved URL
  • [MBS-7324] – ISE: Caught exception in MusicBrainz::Server::Controller::AutoEditorElections->nominate “Can’t call method “name” on an undefined value at lib/MusicBrainz/Server/Controller/AutoEditorElections.pm line 34, line 3
  • [MBS-7325] – ISE: Caught exception in MusicBrainz::Server::Controller::AutoEditorElections->nominate “Can’t call method “is_auto_editor” on an undefined value at lib/MusicBrainz/Server/Controller/AutoEditorElections.pm line 29, line 3.”
  • [MBS-7326] – ISE: Caught exception in MusicBrainz::Server::Controller::AutoEditorElections->nominate “Forbidden at lib/MusicBrainz/Server/Data/AutoEditorElection.pm line 53, line 3.”
  • [MBS-7329] – Importing a multiple artist freedb release gives a seeding error for the “artist” field
  • [MBS-7332] – ISE trying to see release merge
  • [MBS-7333] – beta: ISRC code missing from heading on ISRC page
  • [MBS-7334] – Beta: IPI codes no longer shown in artist and label sidebars
  • [MBS-7335] – Deprecated relationships are no longer prevented from being added
  • [MBS-7336] – URL error messages don’t always get shown

Improvement

  • [MBS-4116] – Cover art archive: Support .pdf
  • [MBS-7318] – Label bubble should appear when focusing the catalogue number input field

New Feature

  • [MBS-5863] – Dynamic work attributes (UI)

Task

  • [MBS-1263] – RDFa code is too separate from main MB code and is starting to bit rot
  • [MBS-7330] – Add Wikimedia Commons and CPDL to the score whitelist