Issue Details (XML | Word | Printable)

Key: MBS-4514
Type: Bug Bug
Status: Reopened Reopened
Priority: Normal Normal
Assignee: Unassigned
Reporter: nikki
Votes: 0
Watchers: 0
Operations

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

Internal server error while adding cover art

Created: 04/Apr/12 09:00 AM   Updated: 15/Feb/13 05:45 AM
Component/s: Cover art
Affects Version/s: None
Fix Version/s: None

Issue Links:
Duplicate
 
Relates
Resolution
 


 Description  « Hide

I think I managed to trigger it by submitting the page, stopping it from loading and then submitting it again.

Caught exception in MusicBrainz::Server::Controller::Release->add_cover_art "The edit could not be created.
POST: $VAR1 = {
          'add-cover-art.id' => '600026412',
          'add-cover-art.type_id' => '1',
          'add-cover-art.position' => '1',
          'add-cover-art.comment' => '',
          'add-cover-art.edit_note' => ''
        };

Exception:$VAR1 = 'Failed query:
	\'INSERT INTO cover_art_archive.cover_art (release, edit, ordering, id, comment)
         VALUES (?, ?, ?, ?, ?)\'
	(765857 16086524 1 600026412 )
DBD::Pg::st execute failed: ERROR:  duplicate key value violates unique constraint "cover_art_pkey"
DETAIL:  Key (id)=(600026412) already exists. at lib/Sql.pm line 103.

 at lib/Sql.pm line 109
	Sql::__ANON__(\'DBD::Pg::st execute failed: ERROR:  duplicate key value viola...\') called at /home/musicbrainz/perl5/lib/perl5/Try/Tiny.pm line 100
	Try::Tiny::try(\'CODE(0x137027b8)\', \'Try::Tiny::Catch=REF(0x1362c678)\') called at lib/Sql.pm line 110
	Sql::do(\'Sql=HASH(0xbc525a8)\', \'INSERT INTO cover_art_archive.cover_art (release, edit, order...\', 765857, 16086524, 1, 600026412, \'\') called at lib/MusicBrainz/Server/Data/CoverArtArchive.pm line 125
	MusicBrainz::Server::Data::CoverArtArchive::insert_cover_art(\'MusicBrainz::Server::Data::CoverArtArchive=HASH(0x9a27ee0)\', 765857, 16086524, 600026412, 1, \'ARRAY(0x136f8510)\', \'\') called at lib/MusicBrainz/Server/Edit/Release/AddCoverArt.pm line 75
	MusicBrainz::Server::Edit::Release::AddCoverArt::post_insert(\'MusicBrainz::Server::Edit::Release::AddCoverArt=HASH(0x136a1a18)\') called at lib/MusicBrainz/Server/Data/Edit.pm line 408
	MusicBrainz::Server::Data::Edit::__ANON__() called at lib/Sql.pm line 264
	Sql::__ANON__() called at /home/musicbrainz/perl5/lib/perl5/Try/Tiny.pm line 76
	eval {...} called at /home/musicbrainz/perl5/lib/perl5/Try/Tiny.pm line 67
	Try::Tiny::try(\'CODE(0x1354de68)\', \'Try::Tiny::Catch=REF(0x1370d628)\') called at lib/Sql.pm line 277
	Sql::_auto_transaction(\'CODE(0x136a21e0)\', \'Sql=HASH(0xbc525a8)\') called at lib/Sql.pm line 282
	Sql::_run_in_transaction_one(\'CODE(0x136a21e0)\', \'Sql=HASH(0xbc525a8)\') called at lib/Sql.pm line 296
	Sql::run_in_transaction(\'CODE(0x136a21e0)\', \'Sql=HASH(0xbc525a8)\') called at lib/MusicBrainz/Server/Data/Edit.pm line 436
	MusicBrainz::Server::Data::Edit::create(\'MusicBrainz::Server::Data::Edit=HASH(0x9cd37a0)\', \'editor_id\', 53705, \'privileges\', 170, \'cover_art_types\', \'ARRAY(0x136f8510)\', \'cover_art_id\', 600026412, ...) called at lib/MusicBrainz/Server/Controller.pm line 85
	MusicBrainz::Server::Controller::__ANON__() called at /home/musicbrainz/perl5/lib/perl5/Try/Tiny.pm line 76
	eval {...} called at /home/musicbrainz/perl5/lib/perl5/Try/Tiny.pm line 67
	Try::Tiny::try(\'CODE(0x135df6f0)\', \'Try::Tiny::Catch=REF(0x136dd5d0)\') called at lib/MusicBrainz/Server/Controller.pm line 101
	MusicBrainz::Server::Controller::_insert_edit(\'MusicBrainz::Server::Controller::Release=HASH(0xb222990)\', \'MusicBrainz::Server=HASH(0x135dd498)\', \'MusicBrainz::Server::Form::Release::AddCoverArt=HASH(0x137021a0)\', \'edit_type\', 314, \'release\', \'MusicBrainz::Server::Entity::Release=HASH(0x13702740)\', \'cover_art_types\', \'ARRAY(0x136f8510)\', ...) called at lib/MusicBrainz/Server/Controller/Release.pm line 443
	MusicBrainz::Server::Controller::Release::add_cover_art(\'MusicBrainz::Server::Controller::Release=HASH(0xb222990)\', \'MusicBrainz::Server=HASH(0x135dd498)\') called at /home/musicbrainz/perl5/lib/perl5/Catalyst/Action.pm line 65
	Catalyst::Action::execute(\'Catalyst::Action=HASH(0xb5c8c80)\', \'MusicBrainz::Server::Controller::Release=HASH(0xb222990)\', \'MusicBrainz::Server=HASH(0x135dd498)\') called at /home/musicbrainz/perl5/lib/perl5/Catalyst.pm line 1667
	eval {...} called at /home/musicbrainz/perl5/lib/perl5/Catalyst.pm line 1667
	Catalyst::execute(\'MusicBrainz::Server=HASH(0x135dd498)\', \'MusicBrainz::Server::Controller::Release\', \'Catalyst::Action=HASH(0xb5c8c80)\') called at /home/musicbrainz/perl5/lib/perl5/Catalyst/Plugin/StackTrace.pm line 94
	Catalyst::Plugin::StackTrace::execute(\'MusicBrainz::Server=HASH(0x135dd498)\', \'MusicBrainz::Server::Controller::Release\', \'Catalyst::Action=HASH(0xb5c8c80)\') called at /home/musicbrainz/perl5/lib/perl5/Catalyst/Action.pm line 60
	Catalyst::Action::dispatch(\'Catalyst::Action=HASH(0xb5c8c80)\', \'MusicBrainz::Server=HASH(0x135dd498)\') called at /home/musicbrainz/perl5/lib/perl5/Catalyst/ActionChain.pm line 38
	Catalyst::ActionChain::dispatch(\'Catalyst::ActionChain=HASH(0x13136738)\', \'MusicBrainz::Server=HASH(0x135dd498)\') called at /home/musicbrainz/perl5/lib/perl5/Catalyst/Controller.pm line 125
	Catalyst::Controller::_ACTION(\'MusicBrainz::Server::Controller::Release=HASH(0xb222990)\', \'MusicBrainz::Server=HASH(0x135dd498)\') called at /home/musicbrainz/perl5/lib/perl5/Catalyst/Action.pm line 65
	Catalyst::Action::execute(\'Catalyst::Action=HASH(0xb5c4898)\', \'MusicBrainz::Server::Controller::Release=HASH(0xb222990)\', \'MusicBrainz::Server=HASH(0x135dd498)\') called at /home/musicbrainz/perl5/lib/perl5/Catalyst.pm line 1667
	eval {...} called at /home/musicbrainz/perl5/lib/perl5/Catalyst.pm line 1667
	Catalyst::execute(\'MusicBrainz::Server=HASH(0x135dd498)\', \'MusicBrainz::Server::Controller::Release\', \'Catalyst::Action=HASH(0xb5c4898)\') called at /home/musicbrainz/perl5/lib/perl5/Catalyst/Plugin/StackTrace.pm line 94
	Catalyst::Plugin::StackTrace::execute(\'MusicBrainz::Server=HASH(0x135dd498)\', \'MusicBrainz::Server::Controller::Release\', \'Catalyst::Action=HASH(0xb5c4898)\') called at /home/musicbrainz/perl5/lib/perl5/Catalyst/Action.pm line 60
	Catalyst::Action::dispatch(\'Catalyst::Action=HASH(0xb5c4898)\', \'MusicBrainz::Server=HASH(0x135dd498)\') called at /home/musicbrainz/perl5/lib/perl5/Catalyst/Dispatcher.pm line 257
	Catalyst::Dispatcher::_do_forward(\'Catalyst::Dispatcher=HASH(0x32c31d0)\', \'forward\', \'MusicBrainz::Server=HASH(0x135dd498)\', \'_ACTION\') called at /home/musicbrainz/perl5/lib/perl5/Catalyst/Dispatcher.pm line 237
	Catalyst::Dispatcher::forward(\'Catalyst::Dispatcher=HASH(0x32c31d0)\', \'MusicBrainz::Server=HASH(0x135dd498)\', \'_ACTION\') called at /home/musicbrainz/perl5/lib/perl5/Catalyst.pm line 342
	Catalyst::forward(\'MusicBrainz::Server=HASH(0x135dd498)\', \'_ACTION\') called at /home/musicbrainz/perl5/lib/perl5/Catalyst/Controller.pm line 99
	Catalyst::Controller::_DISPATCH(\'MusicBrainz::Server::Controller::Release=HASH(0xb222990)\', \'MusicBrainz::Server=HASH(0x135dd498)\') called at /home/musicbrainz/perl5/lib/perl5/Catalyst/Action.pm line 65
	Catalyst::Action::execute(\'Catalyst::Action=HASH(0xb5c41c0)\', \'MusicBrainz::Server::Controller::Release=HASH(0xb222990)\', \'MusicBrainz::Server=HASH(0x135dd498)\') called at /home/musicbrainz/perl5/lib/perl5/Catalyst.pm line 1667
	eval {...} called at /home/musicbrainz/perl5/lib/perl5/Catalyst.pm line 1667
	Catalyst::execute(\'MusicBrainz::Server=HASH(0x135dd498)\', \'MusicBrainz::Server::Controller::Release\', \'Catalyst::Action=HASH(0xb5c41c0)\') called at /home/musicbrainz/perl5/lib/perl5/Catalyst/Plugin/StackTrace.pm line 94
	Catalyst::Plugin::StackTrace::execute(\'MusicBrainz::Server=HASH(0x135dd498)\', \'MusicBrainz::Server::Controller::Release\', \'Catalyst::Action=HASH(0xb5c41c0)\') called at /home/musicbrainz/perl5/lib/perl5/Catalyst/Action.pm line 60
	Catalyst::Action::dispatch(\'Catalyst::Action=HASH(0xb5c41c0)\', \'MusicBrainz::Server=HASH(0x135dd498)\') called at /home/musicbrainz/perl5/lib/perl5/Catalyst/Dispatcher.pm line 257
	Catalyst::Dispatcher::_do_forward(\'Catalyst::Dispatcher=HASH(0x32c31d0)\', \'forward\', \'MusicBrainz::Server=HASH(0x135dd498)\', \'/release/_DISPATCH\') called at /home/musicbrainz/perl5/lib/perl5/Catalyst/Dispatcher.pm line 237
	Catalyst::Dispatcher::forward(\'Catalyst::Dispatcher=HASH(0x32c31d0)\', \'MusicBrainz::Server=HASH(0x135dd498)\', \'/release/_DISPATCH\') called at /home/musicbrainz/perl5/lib/perl5/Catalyst.pm line 342
	Catalyst::forward(\'MusicBrainz::Server=HASH(0x135dd498)\', \'/release/_DISPATCH\') called at /home/musicbrainz/perl5/lib/perl5/Catalyst/Dispatcher.pm line 105
	Catalyst::Dispatcher::dispatch(\'Catalyst::Dispatcher=HASH(0x32c31d0)\', \'MusicBrainz::Server=HASH(0x135dd498)\') called at /home/musicbrainz/perl5/lib/perl5/Catalyst.pm line 1613
	Catalyst::dispatch(\'MusicBrainz::Server=HASH(0x135dd498)\') called at lib/MusicBrainz/Server.pm line 264
	Class::MOP::Class:::around(\'CODE(0x2e96ce8)\', \'MusicBrainz::Server=HASH(0x135dd498)\') called at /home/musicbrainz/perl5/lib/perl5/x86_64-linux-gnu-thread-multi/Class/MOP/Method/Wrapped.pm line 162
	Class::MOP::Method::Wrapped::__ANON__(\'MusicBrainz::Server=HASH(0x135dd498)\') called at /home/musicbrainz/perl5/lib/perl5/x86_64-linux-gnu-thread-multi/Class/MOP/Method/Wrapped.pm line 91
	MusicBrainz::Server::dispatch(\'MusicBrainz::Server=HASH(0x135dd498)\') called at /home/musicbrainz/perl5/lib/perl5/Catalyst.pm line 1963
	Catalyst::__ANON__() called at /home/musicbrainz/perl5/lib/perl5/Try/Tiny.pm line 76
	eval {...} called at /home/musicbrainz/perl5/lib/perl5/Try/Tiny.pm line 67
	Try::Tiny::try(\'CODE(0x1370d3a0)\', \'Try::Tiny::Catch=REF(0x136f8570)\') called at /home/musicbrainz/perl5/lib/perl5/Catalyst.pm line 1969
	Catalyst::handle_request(\'MusicBrainz::Server\', \'env\', \'HASH(0x135e2f10)\') called at /home/musicbrainz/perl5/lib/perl5/Catalyst/Engine.pm line 856
	Catalyst::Engine::__ANON__(\'CODE(0x12b386b0)\') called at /home/musicbrainz/perl5/lib/perl5/Plack/Handler/FCGI.pm line 134
	Plack::Handler::FCGI::run(\'Plack::Handler::FCGI=HASH(0x12ee928)\', \'CODE(0xb77baa8)\') called at /home/musicbrainz/perl5/lib/perl5/Plack/Loader.pm line 88
	Plack::Loader::run(\'Plack::Loader=HASH(0x12c3e28)\', \'Plack::Handler::FCGI=HASH(0x12ee928)\') called at /home/musicbrainz/perl5/lib/perl5/Plack/Runner.pm line 263
	Plack::Runner::run(\'Plack::Runner=HASH(0x10b9a78)\') called at /home/musicbrainz/perl5/bin/plackup line 10
 at lib/Sql.pm line 277
';
 at lib/MusicBrainz/Server/Controller.pm line 101"
Stack trace:
line 97 MusicBrainz::Server::Controller
line 101 MusicBrainz::Server::Controller
line 443 MusicBrainz::Server::Controller::Release
line 264 MusicBrainz::Server
Request data:

$VAR1 = {
          'query_parameters' => {},
          'body_parameters' => {
                                 'add-cover-art.id' => '600026412',
                                 'add-cover-art.type_id' => '1',
                                 'add-cover-art.edit_note' => '',
                                 'add-cover-art.comment' => '',
                                 'add-cover-art.position' => '1'
                               }
        };


Sort Order: Ascending order - Click to sort in descending order
Oliver Charles added a comment - 12/Jun/12 05:23 PM

This will be fixed by MBS-4376


Ian McEwen added a comment - 03/Jul/12 06:58 PM

Is this really in the release? I don't see anything to suggest that, and MBS-4376 isn't.


Ian McEwen added a comment - 03/Jul/12 07:02 PM

Removing from release, it doesn't belong.


Oliver Charles added a comment - 09/Jul/12 10:52 AM

MBS-4376 is no longer in review, so I am reopening it and removing the fix version.


Ian McEwen added a comment - 15/Feb/13 05:45 AM

This is basically the same problem as MBS-4695: the same ID gets reallocated over and over until it's actually used. We should be allocating the ID only on submit.