[Bug 345644] New: webclient: inserting duplicate repository not handled
https://bugzilla.novell.com/show_bug.cgi?id=345644 Summary: webclient: inserting duplicate repository not handled Product: openSUSE.org Version: unspecified Platform: Other OS/Version: Other Status: NEW Severity: Normal Priority: P5 - None Component: BuildService AssignedTo: bnc-team-screening@forge.provo.novell.com ReportedBy: dmueller@novell.com QAContact: adrian@novell.com Found By: --- Hi, I'd like to add another repository to a project, e.g. opensync-0.3x to KDE:KDE4, the stupid-user way of clicking on expert and adding it results in: OpenSUSE Frontend Error: Error Details: Errorcode: uncaught_exception Message: Mysql::Error: Duplicate entry '316-openSUSE_Factory' for key 2: INSERT INTO repositories (`name`, `db_project_id`) VALUES('openSUSE_Factory', 316) Exception from API: ActiveRecord::StatementInvalid: Mysql::Error: Duplicate entry '316-openSUSE_Factory' for key 2: INSERT INTO repositories (`name`, `db_project_id`) VALUES('openSUSE_Factory', 316) Stack Trace: /usr/lib64/ruby/gems/1.8/gems/activerecord-1.15.3/lib/active_record/connection_adapters/abstract_adapter.rb:128:in `log' /usr/lib64/ruby/gems/1.8/gems/activerecord-1.15.3/lib/active_record/connection_adapters/mysql_adapter.rb:243:in `execute' /usr/lib64/ruby/gems/1.8/gems/activerecord-1.15.3/lib/active_record/connection_adapters/mysql_adapter.rb:253:in `insert' /usr/lib64/ruby/gems/1.8/gems/activerecord-1.15.3/lib/active_record/base.rb:1811:in `create_without_callbacks' /usr/lib64/ruby/gems/1.8/gems/activerecord-1.15.3/lib/active_record/callbacks.rb:254:in `create_without_timestamps' /usr/lib64/ruby/gems/1.8/gems/activerecord-1.15.3/lib/active_record/timestamp.rb:39:in `create' /usr/lib64/ruby/gems/1.8/gems/activerecord-1.15.3/lib/active_record/base.rb:1789:in `create_or_update_without_callbacks' /usr/lib64/ruby/gems/1.8/gems/activerecord-1.15.3/lib/active_record/callbacks.rb:242:in `create_or_update' /usr/lib64/ruby/gems/1.8/gems/activerecord-1.15.3/lib/active_record/base.rb:1545:in `save_without_validation' /usr/lib64/ruby/gems/1.8/gems/activerecord-1.15.3/lib/active_record/validations.rb:752:in `save_without_transactions' /usr/lib64/ruby/gems/1.8/gems/activerecord-1.15.3/lib/active_record/transactions.rb:129:in `save' /usr/lib64/ruby/gems/1.8/gems/activerecord-1.15.3/lib/active_record/connection_adapters/abstract/database_statements.rb:59:in `transaction' /usr/lib64/ruby/gems/1.8/gems/activerecord-1.15.3/lib/active_record/transactions.rb:95:in `transaction' /usr/lib64/ruby/gems/1.8/gems/activerecord-1.15.3/lib/active_record/transactions.rb:121:in `transaction' /usr/lib64/ruby/gems/1.8/gems/activerecord-1.15.3/lib/active_record/transactions.rb:129:in `save' /usr/lib64/ruby/gems/1.8/gems/activerecord-1.15.3/lib/active_record/associations/association_collection.rb:94:in `create' /srv/www/opensuse/frontend/current/public/../config/../app/models/db_project.rb:142:in `store_axml' /srv/www/opensuse/common/current/lib/activexml/node.rb:304:in `call' /srv/www/opensuse/common/current/lib/activexml/node.rb:304:in `method_missing' /usr/lib64/ruby/1.8/rexml/element.rb:934:in `each' /usr/lib64/ruby/1.8/rexml/xpath.rb:53:in `each' /usr/lib64/ruby/1.8/rexml/element.rb:934:in `each' /srv/www/opensuse/common/current/lib/activexml/node.rb:302:in `method_missing' /srv/www/opensuse/frontend/current/public/../config/../app/models/db_project.rb:139:in `store_axml' /usr/lib64/ruby/gems/1.8/gems/activerecord-1.15.3/lib/active_record/connection_adapters/abstract/database_statements.rb:59:in `transaction' /usr/lib64/ruby/gems/1.8/gems/activerecord-1.15.3/lib/active_record/transactions.rb:95:in `transaction' /srv/www/opensuse/frontend/current/public/../config/../app/models/db_project.rb:55:in `store_axml' /srv/www/opensuse/frontend/current/public/../config/../app/models/db_project.rb:32:in `store_axml' /usr/lib64/ruby/gems/1.8/gems/activerecord-1.15.3/lib/active_record/connection_adapters/abstract/database_statements.rb:59:in `transaction' /usr/lib64/ruby/gems/1.8/gems/activerecord-1.15.3/lib/active_record/transactions.rb:95:in `transaction' /srv/www/opensuse/frontend/current/public/../config/../app/models/db_project.rb:28:in `store_axml' /srv/www/opensuse/common/current/lib/activexml/transport.rb:230:in `save' /srv/www/opensuse/common/current/lib/activexml/base.rb:89:in `save' /srv/www/opensuse/frontend/current/public/../config/../app/controllers/source_controller.rb:252:in `project_meta' /usr/lib64/ruby/gems/1.8/gems/actionpack-1.13.3/lib/action_controller/base.rb:1095:in `send' /usr/lib64/ruby/gems/1.8/gems/actionpack-1.13.3/lib/action_controller/base.rb:1095:in `perform_action_without_filters' /usr/lib64/ruby/gems/1.8/gems/actionpack-1.13.3/lib/action_controller/filters.rb:632:in `call_filter' /usr/lib64/ruby/gems/1.8/gems/actionpack-1.13.3/lib/action_controller/filters.rb:638:in `call_filter' /usr/lib64/ruby/gems/1.8/gems/actionpack-1.13.3/lib/action_controller/filters.rb:438:in `call' /usr/lib64/ruby/gems/1.8/gems/actionpack-1.13.3/lib/action_controller/filters.rb:637:in `call_filter' /usr/lib64/ruby/gems/1.8/gems/actionpack-1.13.3/lib/action_controller/filters.rb:638:in `call_filter' /usr/lib64/ruby/gems/1.8/gems/actionpack-1.13.3/lib/action_controller/filters.rb:438:in `call' /usr/lib64/ruby/gems/1.8/gems/actionpack-1.13.3/lib/action_controller/filters.rb:637:in `call_filter' /usr/lib64/ruby/gems/1.8/gems/actionpack-1.13.3/lib/action_controller/filters.rb:638:in `call_filter' /usr/lib64/ruby/gems/1.8/gems/actionpack-1.13.3/lib/action_controller/filters.rb:438:in `call' /usr/lib64/ruby/gems/1.8/gems/actionpack-1.13.3/lib/action_controller/filters.rb:637:in `call_filter' /usr/lib64/ruby/gems/1.8/gems/actionpack-1.13.3/lib/action_controller/filters.rb:638:in `call_filter' /usr/lib64/ruby/gems/1.8/gems/actionpack-1.13.3/lib/action_controller/filters.rb:438:in `call' /usr/lib64/ruby/gems/1.8/gems/actionpack-1.13.3/lib/action_controller/filters.rb:637:in `call_filter' /usr/lib64/ruby/gems/1.8/gems/actionpack-1.13.3/lib/action_controller/filters.rb:638:in `call_filter' /usr/lib64/ruby/gems/1.8/gems/actionpack-1.13.3/lib/action_controller/filters.rb:438:in `call' /usr/lib64/ruby/gems/1.8/gems/actionpack-1.13.3/lib/action_controller/filters.rb:637:in `call_filter' /usr/lib64/ruby/gems/1.8/gems/actionpack-1.13.3/lib/action_controller/filters.rb:619:in `perform_action_without_benchmark' /usr/lib64/ruby/gems/1.8/gems/actionpack-1.13.3/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' /usr/lib64/ruby/1.8/benchmark.rb:293:in `measure' /usr/lib64/ruby/gems/1.8/gems/actionpack-1.13.3/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' /usr/lib64/ruby/gems/1.8/gems/actionpack-1.13.3/lib/action_controller/rescue.rb:83:in `perform_action' /usr/lib64/ruby/gems/1.8/gems/actionpack-1.13.3/lib/action_controller/base.rb:430:in `send' /usr/lib64/ruby/gems/1.8/gems/actionpack-1.13.3/lib/action_controller/base.rb:430:in `process_without_filters' /usr/lib64/ruby/gems/1.8/gems/actionpack-1.13.3/lib/action_controller/filters.rb:624:in `process_without_session_management_support' /usr/lib64/ruby/gems/1.8/gems/actionpack-1.13.3/lib/action_controller/session_management.rb:114:in `process' /usr/lib64/ruby/gems/1.8/gems/actionpack-1.13.3/lib/action_controller/base.rb:330:in `process' /usr/lib64/ruby/gems/1.8/gems/rails-1.2.3/lib/dispatcher.rb:41:in `dispatch' /usr/lib64/ruby/gems/1.8/gems/rails-1.2.3/lib/fcgi_handler.rb:168:in `process_request' /usr/lib64/ruby/gems/1.8/gems/rails-1.2.3/lib/fcgi_handler.rb:143:in `process_each_request!' /usr/lib64/ruby/gems/1.8/gems/rails-1.2.3/lib/fcgi_handler.rb:109:in `with_signal_handler' /usr/lib64/ruby/gems/1.8/gems/rails-1.2.3/lib/fcgi_handler.rb:142:in `process_each_request!' /usr/lib64/ruby/vendor_ruby/1.8/fcgi.rb:612:in `each_cgi' /usr/lib64/ruby/vendor_ruby/1.8/fcgi.rb:609:in `each' /usr/lib64/ruby/vendor_ruby/1.8/fcgi.rb:609:in `each_cgi' /usr/lib64/ruby/gems/1.8/gems/rails-1.2.3/lib/fcgi_handler.rb:141:in `process_each_request!' /usr/lib64/ruby/gems/1.8/gems/rails-1.2.3/lib/fcgi_handler.rb:55:in `process!' /usr/lib64/ruby/gems/1.8/gems/rails-1.2.3/lib/fcgi_handler.rb:25:in `process!' /srv/www/opensuse/frontend/current/public/dispatch.fcgi:24 it should either handle it more gracefully or allow editing or existing repositories this way. -- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug.
https://bugzilla.novell.com/show_bug.cgi?id=345644
Martin Mrazik
https://bugzilla.novell.com/show_bug.cgi?id=345644
Cornelius Schumacher
https://bugzilla.novell.com/show_bug.cgi?id=345644
Dirk Mueller
participants (1)
-
bugzilla_noreply@novell.com