Uploaded image for project: 'MusicBrainz Server'
  1. MusicBrainz Server
  2. MBS-9442

failed query when submitting big release edit

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Duplicate
    • Icon: Normal Normal
    • None
    • None
    • Edit system
    • None

      I just spend a lot of time editing a massive release (merging/re-ordering/re-naming/adding media, re-naming/adding tracks/recording).

       When I finally tried to submit the edit, I got the following error:

      Failed query: 'UPDATE medium SET position = (SELECT position FROM (VALUES (?::INTEGER, ?::INTEGER), (?::INTEGER, ?::INTEGER), (?::INTEGER, ?::INTEGER), (?::INTEGER, ?::INTEGER), (?::INTEGER, ?::INTEGER), (?::INTEGER, ?::INTEGER), (?::INTEGER, ?::INTEGER), (?::INTEGER, ?::INTEGER), (?::INTEGER, ?::INTEGER), (?::INTEGER, ?::INTEGER), (?::INTEGER, ?::INTEGER), (?::INTEGER, ?::INTEGER), (?::INTEGER, ?::INTEGER), (?::INTEGER, ?::INTEGER), (?::INTEGER, ?::INTEGER), (?::INTEGER, ?::INTEGER)) AS mpos (medium, position) WHERE mpos.medium = medium.id) WHERE id IN (?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?)' (2061035 6 2061028 13 2061039 9 2061032 18 2061025 4 2061024 1 2061030 16 2061026 5 2061038 8 2061029 15 2061031 17 2061023 2 2061033 18 2061037 7 2061027 4 2167956 11 2061035 2061028 2061039 2061032 2061025 2061024 2061030 2061026 2061038 2061029 2061031 2061023 2061033 2061037 2061027 2167956) 23505 DBD::Pg::st execute failed: ERROR: duplicate key value violates unique constraint "medium_uniq" DETAIL: Key (release, "position")=(1928543, 4) already exists. [for Statement "UPDATE medium SET position = (SELECT position FROM (VALUES (?::INTEGER, ?::INTEGER), (?::INTEGER, ?::INTEGER), (?::INTEGER, ?::INTEGER), (?::INTEGER, ?::INTEGER), (?::INTEGER, ?::INTEGER), (?::INTEGER, ?::INTEGER), (?::INTEGER, ?::INTEGER), (?::INTEGER, ?::INTEGER), (?::INTEGER, ?::INTEGER), (?::INTEGER, ?::INTEGER), (?::INTEGER, ?::INTEGER), (?::INTEGER, ?::INTEGER), (?::INTEGER, ?::INTEGER), (?::INTEGER, ?::INTEGER), (?::INTEGER, ?::INTEGER), (?::INTEGER, ?::INTEGER)) AS mpos (medium, position) WHERE mpos.medium = medium.id) WHERE id IN (?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?)" with ParamValues: 1='2061035', 2='6', 3='2061028', 4='13', 5='2061039', 6='9', 7='2061032', 8='18', 9='2061025', 10='4', 11='2061024', 12='1', 13='2061030', 14='16', 15='2061026', 16='5', 17='2061038', 18='8', 19='2061029', 20='15', 21='2061031', 22='17', 23='2061023', 24='2', 25='2061033', 26='18', 27='2061037', 28='7', 29='2061027', 30='4', 31='2167956', 32='11', 33='2061035', 34='2061028', 35='2061039', 36='2061032', 37='2061025', 38='2061024', 39='2061030', 40='2061026', 41='2061038', 42='2061029', 43='2061031', 44='2061023', 45='2061033', 46='2061037', 47='2061027', 48='2167956'] at lib/Sql.pm line 115. Sql::catch
      {...} (MusicBrainz::Server::Exceptions::DatabaseError=HASH(0x1c9b5eb0)) called at /home/musicbrainz/carton-local/lib/perl5/Try/Tiny.pm line 124 Try::Tiny::try(CODE(0x1bd061c8), Try::Tiny::Catch=REF(0x1c76b760)) called at lib/Sql.pm line 116 Sql::do(Sql=HASH(0x1a9df350), "UPDATE medium SET position =\x{a} (SELECT position"..., 2061035, 6, 2061028, 13, 2061039, 9, 2061032, ...) called at lib/MusicBrainz/Server/Data/Medium.pm line 288 MusicBrainz::Server::Data::Medium::reorder(MusicBrainz::Server::Data::Medium=HASH(0x11d34cd0), 2061025, 4, 2061024, 1, 2061030, 16, 2061026, 5, ...) called at lib/MusicBrainz/Server/Edit/Release/ReorderMediums.pm line 128 MusicBrainz::Server::Edit::Release::ReorderMediums::accept(MusicBrainz::Server::Edit::Release::ReorderMediums=HASH(0x1c8742b8)) called at lib/MusicBrainz/Server/Data/Edit.pm line 755 MusicBrainz::Server::Data::Edit::try {...}
      () called at /home/musicbrainz/carton-local/lib/perl5/Try/Tiny.pm line 101 eval
      {...} called at /home/musicbrainz/carton-local/lib/perl5/Try/Tiny.pm line 94 Try::Tiny::try(CODE(0x1a586808), Try::Tiny::Catch=REF(0x1ca142b8)) called at lib/MusicBrainz/Server/Data/Edit.pm line 790 MusicBrainz::Server::Data::Edit::do_accept(MusicBrainz::Server::Data::Edit=HASH(0x10daf908), MusicBrainz::Server::Edit::Release::ReorderMediums=HASH(0x1c8742b8)) called at lib/MusicBrainz/Server/Data/Edit.pm line 829 MusicBrainz::Server::Data::Edit::ANON_(MusicBrainz::Server::Edit::Release::ReorderMediums=HASH(0x1c8742b8)) called at lib/MusicBrainz/Server/Data/Edit.pm line 852 MusicBrainz::Server::Data::Edit::_close(MusicBrainz::Server::Data::Edit=HASH(0x10daf908), MusicBrainz::Server::Edit::Release::ReorderMediums=HASH(0x1c8742b8), CODE(0x1c417e78)) called at lib/MusicBrainz/Server/Data/Edit.pm line 829 MusicBrainz::Server::Data::Edit::accept(MusicBrainz::Server::Data::Edit=HASH(0x10daf908), MusicBrainz::Server::Edit::Release::ReorderMediums=HASH(0x1c8742b8)) called at lib/MusicBrainz/Server/Data/Edit.pm line 599 MusicBrainz::Server::Data::Edit::create(MusicBrainz::Server::Data::Edit=HASH(0x10daf908), "edit_type", 313, "medium_positions", ARRAY(0x1aa7cc60), "release", MusicBrainz::Server::Entity::Release=HASH(0x1c9f07f0), "editor", MusicBrainz::Server::Authentication::User=HASH(0x1c9c30d8), ...) called at lib/MusicBrainz/Server/Controller/WS/js/Edit.pm line 553 MusicBrainz::Server::Controller::WS::js::Edit::try {...}
      () called at /home/musicbrainz/carton-local/lib/perl5/Try/Tiny.pm line 103 eval
      {...} called at /home/musicbrainz/carton-local/lib/perl5/Try/Tiny.pm line 94 Try::Tiny::try(CODE(0x1bc3b180), Try::Tiny::Catch=REF(0x1c8774b0)) called at lib/MusicBrainz/Server/Controller/WS/js/Edit.pm line 571 MusicBrainz::Server::Controller::WS::js::Edit::create_edits(MusicBrainz::Server::Controller::WS::js::Edit=HASH(0x12b1c280), MusicBrainz::Server=HASH(0x1a2b3440), HASH(0x1a7548f0)) called at lib/MusicBrainz/Server/Controller/WS/js/Edit.pm line 628 MusicBrainz::Server::Controller::WS::js::Edit::_ANON_() called at lib/Sql.pm line 321 Sql::try {...}
      () called at /home/musicbrainz/carton-local/lib/perl5/Try/Tiny.pm line 103 eval
      {...} called at /home/musicbrainz/carton-local/lib/perl5/Try/Tiny.pm line 94 Try::Tiny::try(CODE(0x1bc50178), Try::Tiny::Catch=REF(0x1c874258)) called at lib/Sql.pm line 334 Sql::_auto_transaction(CODE(0x1c764e60), Sql=HASH(0x1a9df350)) called at lib/Sql.pm line 339 Sql::_run_in_transaction_one(CODE(0x1c764e60), Sql=HASH(0x1a9df350)) called at lib/Sql.pm line 354 Sql::run_in_transaction(CODE(0x1c764e60), Sql=HASH(0x1a9df350)) called at lib/MusicBrainz/Server/Model/MB.pm line 19 MusicBrainz::Server::Model::MB::with_transaction(MusicBrainz::Server::Model::MB=HASH(0x10539900), CODE(0x1c764e60)) called at lib/MusicBrainz/Server/Controller/WS/js/Edit.pm line 639 MusicBrainz::Server::Controller::WS::js::Edit::submit_edits(MusicBrainz::Server::Controller::WS::js::Edit=HASH(0x12b1c280), MusicBrainz::Server=HASH(0x1a2b3440), HASH(0x1a7548f0)) called at lib/MusicBrainz/Server/Controller/WS/js/Edit.pm line 603 MusicBrainz::Server::Controller::WS::js::Edit::create(MusicBrainz::Server::Controller::WS::js::Edit=HASH(0x12b1c280), MusicBrainz::Server=HASH(0x1a2b3440)) called at /home/musicbrainz/carton-local/lib/perl5/Catalyst/Action.pm line 358 Catalyst::Action::execute(Catalyst::Action=HASH(0x12fee6e0), MusicBrainz::Server::Controller::WS::js::Edit=HASH(0x12b1c280), MusicBrainz::Server=HASH(0x1a2b3440)) called at /home/musicbrainz/carton-local/lib/perl5/Catalyst.pm line 2057 eval {...}
      called at /home/musicbrainz/carton-local/lib/perl5/Catalyst.pm line 2057 Catalyst::execute(MusicBrainz::Server=HASH(0x1a2b3440), "MusicBrainz::Server::Controller::WS::js::Edit", Catalyst::Action=HASH(0x12fee6e0)) called at lib/Catalyst/Plugin/Sentry.pm line 23 Catalyst::Plugin::Sentry::execute(MusicBrainz::Server=HASH(0x1a2b3440), "MusicBrainz::Server::Controller::WS::js::Edit", Catalyst::Action=HASH(0x12fee6e0)) called at /home/musicbrainz/carton-local/lib/perl5/Catalyst/Action.pm line 353 Catalyst::Action::dispatch(Catalyst::Action=HASH(0x12fee6e0), MusicBrainz::Server=HASH(0x1a2b3440)) called at /home/musicbrainz/carton-local/lib/perl5/Catalyst/ActionChain.pm line 46 Catalyst::ActionChain::dispatch(Catalyst::ActionChain=HASH(0x1bc17158), MusicBrainz::Server=HASH(0x1a2b3440)) called at /home/musicbrainz/carton-local/lib/perl5/Catalyst/Controller.pm line 171 Catalyst::Controller::_ACTION(MusicBrainz::Server::Controller::WS::js::Edit=HASH(0x12b1c280), MusicBrainz::Server=HASH(0x1a2b3440)) called at /home/musicbrainz/carton-local/lib/perl5/Catalyst/Action.pm line 358 Catalyst::Action::execute(Catalyst::Action=HASH(0x12feaa28), MusicBrainz::Server::Controller::WS::js::Edit=HASH(0x12b1c280), MusicBrainz::Server=HASH(0x1a2b3440)) called at /home/musicbrainz/carton-local/lib/perl5/Catalyst.pm line 2057 eval
      {...} called at /home/musicbrainz/carton-local/lib/perl5/Catalyst.pm line 2057 Catalyst::execute(MusicBrainz::Server=HASH(0x1a2b3440), "MusicBrainz::Server::Controller::WS::js::Edit", Catalyst::Action=HASH(0x12feaa28)) called at lib/Catalyst/Plugin/Sentry.pm line 23 Catalyst::Plugin::Sentry::execute(MusicBrainz::Server=HASH(0x1a2b3440), "MusicBrainz::Server::Controller::WS::js::Edit", Catalyst::Action=HASH(0x12feaa28)) called at /home/musicbrainz/carton-local/lib/perl5/Catalyst/Action.pm line 353 Catalyst::Action::dispatch(Catalyst::Action=HASH(0x12feaa28), MusicBrainz::Server=HASH(0x1a2b3440)) called at /home/musicbrainz/carton-local/lib/perl5/Catalyst/Dispatcher.pm line 262 Catalyst::Dispatcher::_do_forward(Catalyst::Dispatcher=HASH(0x63d3e98), "forward", MusicBrainz::Server=HASH(0x1a2b3440), "_ACTION") called at /home/musicbrainz/carton-local/lib/perl5/Catalyst/Dispatcher.pm line 242 Catalyst::Dispatcher::forward(Catalyst::Dispatcher=HASH(0x63d3e98), MusicBrainz::Server=HASH(0x1a2b3440), "_ACTION") called at /home/musicbrainz/carton-local/lib/perl5/Catalyst.pm line 482 Catalyst::forward(MusicBrainz::Server=HASH(0x1a2b3440), "_ACTION") called at /home/musicbrainz/carton-local/lib/perl5/Catalyst/Controller.pm line 135 Catalyst::Controller::_DISPATCH(MusicBrainz::Server::Controller::WS::js::Edit=HASH(0x12b1c280), MusicBrainz::Server=HASH(0x1a2b3440)) called at /home/musicbrainz/carton-local/lib/perl5/Catalyst/Action.pm line 358 Catalyst::Action::execute(Catalyst::Action=HASH(0x12fea608), MusicBrainz::Server::Controller::WS::js::Edit=HASH(0x12b1c280), MusicBrainz::Server=HASH(0x1a2b3440)) called at /home/musicbrainz/carton-local/lib/perl5/Catalyst.pm line 2057 eval {...}
      called at /home/musicbrainz/carton-local/lib/perl5/Catalyst.pm line 2057 Catalyst::execute(MusicBrainz::Server=HASH(0x1a2b3440), "MusicBrainz::Server::Controller::WS::js::Edit", Catalyst::Action=HASH(0x12fea608)) called at lib/Catalyst/Plugin/Sentry.pm line 23 Catalyst::Plugin::Sentry::execute(MusicBrainz::Server=HASH(0x1a2b3440), "MusicBrainz::Server::Controller::WS::js::Edit", Catalyst::Action=HASH(0x12fea608)) called at /home/musicbrainz/carton-local/lib/perl5/Catalyst/Action.pm line 353 Catalyst::Action::dispatch(Catalyst::Action=HASH(0x12fea608), MusicBrainz::Server=HASH(0x1a2b3440)) called at /home/musicbrainz/carton-local/lib/perl5/Catalyst/Dispatcher.pm line 262 Catalyst::Dispatcher::do_forward(Catalyst::Dispatcher=HASH(0x63d3e98), "forward", MusicBrainz::Server=HASH(0x1a2b3440), "/ws/js/edit/_DISPATCH") called at /home/musicbrainz/carton-local/lib/perl5/Catalyst/Dispatcher.pm line 242 Catalyst::Dispatcher::forward(Catalyst::Dispatcher=HASH(0x63d3e98), MusicBrainz::Server=HASH(0x1a2b3440), "/ws/js/edit/_DISPATCH") called at /home/musicbrainz/carton-local/lib/perl5/Catalyst.pm line 482 Catalyst::forward(MusicBrainz::Server=HASH(0x1a2b3440), "/ws/js/edit/_DISPATCH") called at /home/musicbrainz/carton-local/lib/perl5/Catalyst/Dispatcher.pm line 108 Catalyst::Dispatcher::dispatch(Catalyst::Dispatcher=HASH(0x63d3e98), MusicBrainz::Server=HASH(0x1a2b3440)) called at /home/musicbrainz/carton-local/lib/perl5/Catalyst.pm line 2003 Catalyst::dispatch(MusicBrainz::Server=HASH(0x1a2b3440)) called at lib/MusicBrainz/Server.pm line 323 MusicBrainz::Server::ANON() called at lib/MusicBrainz/Server.pm line 298 MusicBrainz::Server::with_translations(MusicBrainz::Server=HASH(0x1a2b3440), CODE(0x1bc0c4c0)) called at lib/MusicBrainz/Server.pm line 324 Class::MOP::Class:::around(CODE(0x33015b0), MusicBrainz::Server=HASH(0x1a2b3440)) called at /home/musicbrainz/carton-local/lib/perl5/x86_64-linux-gnu-thread-multi/Class/MOP/Method/Wrapped.pm line 164 Class::MOP::Method::Wrapped::ANON(MusicBrainz::Server=HASH(0x1a2b3440)) called at lib/MusicBrainz/Server.pm line 338 Class::MOP::Class:::around(CODE(0x12a811a0), MusicBrainz::Server=HASH(0x1a2b3440)) called at /home/musicbrainz/carton-local/lib/perl5/x86_64-linux-gnu-thread-multi/Class/MOP/Method/Wrapped.pm line 164 Class::MOP::Method::Wrapped::ANON(MusicBrainz::Server=HASH(0x1a2b3440)) called at lib/MusicBrainz/Server.pm line 375 Class::MOP::Class:::around(CODE(0x12b686a8), MusicBrainz::Server=HASH(0x1a2b3440)) called at /home/musicbrainz/carton-local/lib/perl5/x86_64-linux-gnu-thread-multi/Class/MOP/Method/Wrapped.pm line 164 Class::MOP::Method::Wrapped::ANON_(MusicBrainz::Server=HASH(0x1a2b3440)) called at /home/musicbrainz/carton-local/lib/perl5/x86_64-linux-gnu-thread-multi/Class/MOP/Method/Wrapped.pm line 35 MusicBrainz::Server::_wrapped_dispatch(MusicBrainz::Server=HASH(0x1a2b3440)) called at /home/musicbrainz/carton-local/lib/perl5/x86_64-linux-gnu-thread-multi/Class/MOP/Method/Wrapped.pm line 95 MusicBrainz::Server::dispatch(MusicBrainz::Server=HASH(0x1a2b3440)) called at /home/musicbrainz/carton-local/lib/perl5/Catalyst.pm line 2394 Catalyst::try
      {...} () called at /home/musicbrainz/carton-local/lib/perl5/Try/Tiny.pm line 103 eval {...}
      called at /home/musicbrainz/carton-local/lib/perl5/Try/Tiny.pm line 94 Try::Tiny::try(CODE(0xcbcbe30), Try::Tiny::Catch=REF(0x1c8773f0)) called at /home/musicbrainz/carton-local/lib/perl5/Catalyst.pm line 2403 Catalyst::handle_request("MusicBrainz::Server", "env", HASH(0x1bd2a778), "response_cb", CODE(0x1c12da68)) called at /home/musicbrainz/carton-local/lib/perl5/Catalyst/Engine.pm line 800 Catalyst::Engine::_ANON_(CODE(0x1c12da68)) called at /home/musicbrainz/carton-local/lib/perl5/Plack/Middleware/HTTPExceptions.pm line 32 Plack::Middleware::HTTPExceptions::try
      {...} () called at /home/musicbrainz/carton-local/lib/perl5/Try/Tiny.pm line 103 eval {...}
      called at /home/musicbrainz/carton-local/lib/perl5/Try/Tiny.pm line 94 Try::Tiny::try(CODE(0x1bae2a78), Try::Tiny::Catch=REF(0x1ca19468)) called at /home/musicbrainz/carton-local/lib/perl5/Plack/Middleware/HTTPExceptions.pm line 41 Plack::Middleware::HTTPExceptions::_ANON(CODE(0x1c3a8068)) called at /home/musicbrainz/carton-local/lib/perl5/Plack/Util.pm line 339 Plack::Util::ANON(CODE(0x1ca3a670)) called at /home/musicbrainz/carton-local/lib/perl5/Plack/Util.pm line 339 Plack::Util::ANON(CODE(0x1bf8edd8)) called at /home/musicbrainz/carton-local/lib/perl5/Plack/Util.pm line 339 Plack::Util::ANON_(CODE(0x1bd061b0)) called at /home/musicbrainz/carton-local/lib/perl5/Starlet/Server.pm line 377 Starlet::Server::handle_connection(Plack::Handler::Starlet=HASH(0x6b0c778), HASH(0x1bd2a778), IO::Socket::INET=GLOB(0x1c873f28), CODE(0x12b68b28), "", "", "") called at /home/musicbrainz/carton-local/lib/perl5/Starlet/Server.pm line 190 Starlet::Server::accept_loop(Plack::Handler::Starlet=HASH(0x6b0c778), CODE(0x12b68b28), 63) called at /home/musicbrainz/carton-local/lib/perl5/Plack/Handler/Starlet.pm line 80 Plack::Handler::Starlet::run(Plack::Handler::Starlet=HASH(0x6b0c778), CODE(0x12b68b28)) called at /home/musicbrainz/carton-local/lib/perl5/Plack/Loader.pm line 84 Plack::Loader::run(Plack::Loader=HASH(0xd34690), Plack::Handler::Starlet=HASH(0x6b0c778)) called at /home/musicbrainz/carton-local/lib/perl5/Plack/Runner.pm line 277 Plack::Runner::run(Plack::Runner=HASH(0xb09a08)) called at /home/musicbrainz/carton-local/bin/plackup line 7
      

       

            Unassigned Unassigned
            mschilli Marcel Schilling
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

              Created:
              Updated:
              Resolved:

                Version Package