Issue Details (XML | Word | Printable)

Key: MBS-2812
Type: Bug Bug
Status: Closed Closed
Resolution: Fixed
Priority: Normal Normal
Assignee: Oliver Charles
Reporter: Cerdd Eightythree
Votes: 2
Watchers: 4
Operations

If you were logged in you would be able to see more operations.
MusicBrainz Server

Adding track times has caused a failed dependency for an edit which changed the track titles.

Created: 19/Jun/11 09:58 AM   Updated: 11/Jul/11 11:17 AM   Resolved: 11/Jul/11 11:17 AM
Component/s: Edit system
Affects Version/s: Bug fixes, 2011-06-13
Fix Version/s: Schema Change, 2011-07-11

Issue Links:
Duplicate
 
Relates
 


 Description  « Hide

http://musicbrainz.org/edit/14573184 was an edit which changed the titles of the tracks of a release.

One minute after the above edit was entered, http://musicbrainz.org/edit/14573224 was an auto-edit by Modbot to set the track lengths based on a DiscID.

Two weeks later, the first edit expires with two Yes/zero No votes, but fails on a dependency "The tracklist has changed since this edit was created"

I guess there are a couple of issues - the main one is I don't see why changing track lengths, without changing the track order or whatever, should affect changing track titles.

If there is some reason why it does, then Modbot should hold off setting tracktimes if there is an open edit to the track listing which will fail as result.



Sort Order: Ascending order - Click to sort in descending order
Cerdd Eightythree added a comment - 19/Jun/11 09:53 PM

Something similar happened with http://musicbrainz.org/edit/14578430 which was an edit to set the track times for the first 15 tracks on a release. http://musicbrainz.org/edit/14578385 had been entered just before it which was to add a 16th track without touching the original 15 tracks.

I don't see why the edits would conflict, but if there is genuinely a problem, the system shouldn't have allowed me to enter an edit that was doomed to fail (unless it got the 3 yes votes and closed first and presumably 14578385 would have failed instead).


Oliver Charles added a comment - 07/Jul/11 12:37 PM

I have made some changes to this code now, and it should only fail if there is an actual conflict of information. This work needs some extensive testing though, and is available for testing at http://test.musicbrainz.org. Please experiment and see what you find!


Cerdd Eightythree added a comment - 08/Jul/11 03:16 PM

Just tried a track time & track name edit, which worked as expected (edit #14460217 and edit #14460218 on test.musicbrainz.org)

Also tried a track name edit followed by another track name edit before the first closed, which failed as expected (but didn't give any warning that it was likely to do so when the second edit was made - I'll file a separate bug for this user experience enhancement).

The third thing I tried was to repeat the edit where track times were set for a 15 track release, and then a 16th track was added to the release (edits #14460220 and #14460221 on the test server) The track times edit closed and applied, but the 16th track edit refused to close despite a 3Y/0N vote and several hours passing. Trying to force it to close & apply threw up the following error:

Caught exception in MusicBrainz::Server::Controller::Test->accept_edit "Failed query:
'UPDATE release SET edits_pending = numeric_larger(0, edits_pending + ?) WHERE id IN '
(-1 903405)
DBD::Pg::st execute failed: ERROR: current transaction is aborted, commands ignored until end of transaction block at /home/musicbrainz/musicbrainz-server/script/../lib/Sql.pm line 103.

Can be replicated by going to http://test.musicbrainz.org/test/accept-edit/14460220


Oliver Charles added a comment - 08/Jul/11 04:14 PM

Thank you so much for your detailed testing!

I fixed I've addressed that issue with new tracks (or more, tracks with new recordings) now, and your edit was accepted. This work will still be around until monday on test, if you feel like poking it anymore