Task #3207
closedBug #3200: [Workbench] Improve AJAX error reporting
Error while adding public_key to a new authorized key
Added by Radhika Chippada over 10 years ago. Updated over 10 years ago.
Updated by Radhika Chippada over 10 years ago
Workbench -> Add a new authorized key -> click on public_key attribute and paste a key. Click on checkbox to save. If the key is invalid, the save operation just hangs and the dialog does not close and the key is not saved.
Exception log (in my local workbench):
API client: 0.000280344 Prepare request https://localhost:3001/arvados/v1/authorized_keys/zzzzz-fngyi-cpfzfkw6su2mnj4
API client: 0.042301374 API transaction
(0.1ms) rollback transaction
#<ArvadosApiClient::ApiError: #<HTTP::Message:0x000000061f8938>>
/home/radhika/arvados/apps/workbench/app/models/arvados_api_client.rb:142:in `api'
/home/radhika/arvados/apps/workbench/app/models/arvados_base.rb:173:in `save'
/home/radhika/arvados/apps/workbench/vendor/bundle/ruby/2.1.0/gems/activerecord-4.1.1/lib/active_record/persistence.rb:232:in `block in update'
/home/radhika/arvados/apps/workbench/vendor/bundle/ruby/2.1.0/gems/activerecord-4.1.1/lib/active_record/transactions.rb:329:in `block in with_transaction_returning_status'
/home/radhika/arvados/apps/workbench/vendor/bundle/ruby/2.1.0/gems/activerecord-4.1.1/lib/active_record/connection_adapters/abstract/database_statements.rb:211:in `block in transaction'
/home/radhika/arvados/apps/workbench/vendor/bundle/ruby/2.1.0/gems/activerecord-4.1.1/lib/active_record/connection_adapters/abstract/database_statements.rb:219:in `within_new_transaction'
/home/radhika/arvados/apps/workbench/vendor/bundle/ruby/2.1.0/gems/activerecord-4.1.1/lib/active_record/connection_adapters/abstract/database_statements.rb:211:in `transaction'
/home/radhika/arvados/apps/workbench/vendor/bundle/ruby/2.1.0/gems/activerecord-4.1.1/lib/active_record/transactions.rb:208:in `transaction'
/home/radhika/arvados/apps/workbench/vendor/bundle/ruby/2.1.0/gems/activerecord-4.1.1/lib/active_record/transactions.rb:326:in `with_transaction_returning_status'
/home/radhika/arvados/apps/workbench/vendor/bundle/ruby/2.1.0/gems/activerecord-4.1.1/lib/active_record/persistence.rb:230:in `update'
/home/radhika/arvados/apps/workbench/app/models/arvados_base.rb:160:in `update_attributes'
/home/radhika/arvados/apps/workbench/app/controllers/application_controller.rb:225:in `update'
/home/radhika/arvados/apps/workbench/vendor/bundle/ruby/2.1.0/gems/actionpack-4.1.1/lib/action_controller/metal/implicit_render.rb:4:in `send_action'
/home/radhika/arvados/apps/workbench/vendor/bundle/ruby/2.1.0/gems/actionpack-4.1.1/lib/abstract_controller/base.rb:189:in `process_action'
/home/radhika/arvados/apps/workbench/vendor/bundle/ruby/2.1.0/gems/actionpack-4.1.1/lib/action_controller/metal/rendering.rb:10:in `process_action'
/home/radhika/arvados/apps/workbench/vendor/bundle/ruby/2.1.0/gems/actionpack-4.1.1/lib/abstract_controller/callbacks.rb:20:in `block in process_action'
/home/radhika/arvados/apps/workbench/vendor/bundle/ruby/2.1.0/gems/activesupport-4.1.1/lib/active_support/callbacks.rb:113:in `call'
/home/radhika/arvados/apps/workbench/vendor/bundle/ruby/2.1.0/gems/activesupport-4.1.1/lib/active_support/callbacks.rb:113:in `call'
/home/radhika/arvados/apps/workbench/vendor/bundle/ruby/2.1.0/gems/activesupport-4.1.1/lib/active_support/callbacks.rb:166:in `block in halting'
/home/radhika/arvados/apps/workbench/vendor/bundle/ruby/2.1.0/gems/activesupport-4.1.1/lib/active_support/callbacks.rb:149:in `call'
/home/radhika/arvados/apps/workbench/vendor/bundle/ruby/2.1.0/gems/activesupport-4.1.1/lib/active_support/callbacks.rb:149:in `block in halting_and_conditional'
/home/radhika/arvados/apps/workbench/vendor/bundle/ruby/2.1.0/gems/activesupport-4.1.1/lib/active_support/callbacks.rb:149:in `call'
/home/radhika/arvados/apps/workbench/vendor/bundle/ruby/2.1.0/gems/activesupport-4.1.1/lib/active_support/callbacks.rb:149:in `block in halting_and_conditional'
/home/radhika/arvados/apps/workbench/vendor/bundle/ruby/2.1.0/gems/activesupport-4.1.1/lib/active_support/callbacks.rb:149:in `call'
/home/radhika/arvados/apps/workbench/vendor/bundle/ruby/2.1.0/gems/activesupport-4.1.1/lib/active_support/callbacks.rb:149:in `block in halting_and_conditional'
/home/radhika/arvados/apps/workbench/vendor/bundle/ruby/2.1.0/gems/activesupport-4.1.1/lib/active_support/callbacks.rb:282:in `call'
/home/radhika/arvados/apps/workbench/vendor/bundle/ruby/2.1.0/gems/activesupport-4.1.1/lib/active_support/callbacks.rb:282:in `block (2 levels) in halting_and_conditional'
/home/radhika/arvados/apps/workbench/app/controllers/application_controller.rb:456:in `require_thread_api_token'
/home/radhika/arvados/apps/workbench/vendor/bundle/ruby/2.1.0/gems/activesupport-4.1.1/lib/active_support/callbacks.rb:424:in `block in make_lambda'
/home/radhika/arvados/apps/workbench/vendor/bundle/ruby/2.1.0/gems/activesupport-4.1.1/lib/active_support/callbacks.rb:281:in `call'
/home/radhika/arvados/apps/workbench/vendor/bundle/ruby/2.1.0/gems/activesupport-4.1.1/lib/active_support/callbacks.rb:281:in `block in halting_and_conditional'
/home/radhika/arvados/apps/workbench/vendor/bundle/ruby/2.1.0/gems/activesupport-4.1.1/lib/active_support/callbacks.rb:299:in `call'
/home/radhika/arvados/apps/workbench/vendor/bundle/ruby/2.1.0/gems/activesupport-4.1.1/lib/active_support/callbacks.rb:299:in `block (2 levels) in halting'
/home/radhika/arvados/apps/workbench/app/controllers/application_controller.rb:439:in `set_thread_api_token'
/home/radhika/arvados/apps/workbench/vendor/bundle/ruby/2.1.0/gems/activesupport-4.1.1/lib/active_support/callbacks.rb:424:in `block in make_lambda'
/home/radhika/arvados/apps/workbench/vendor/bundle/ruby/2.1.0/gems/activesupport-4.1.1/lib/active_support/callbacks.rb:298:in `call'
/home/radhika/arvados/apps/workbench/vendor/bundle/ruby/2.1.0/gems/activesupport-4.1.1/lib/active_support/callbacks.rb:298:in `block in halting'
/home/radhika/arvados/apps/workbench/vendor/bundle/ruby/2.1.0/gems/activesupport-4.1.1/lib/active_support/callbacks.rb:299:in `call'
/home/radhika/arvados/apps/workbench/vendor/bundle/ruby/2.1.0/gems/activesupport-4.1.1/lib/active_support/callbacks.rb:299:in `block (2 levels) in halting'
/home/radhika/arvados/apps/workbench/app/controllers/application_controller.rb:371:in `thread_clear'
/home/radhika/arvados/apps/workbench/vendor/bundle/ruby/2.1.0/gems/activesupport-4.1.1/lib/active_support/callbacks.rb:424:in `block in make_lambda'
/home/radhika/arvados/apps/workbench/vendor/bundle/ruby/2.1.0/gems/activesupport-4.1.1/lib/active_support/callbacks.rb:298:in `call'
/home/radhika/arvados/apps/workbench/vendor/bundle/ruby/2.1.0/gems/activesupport-4.1.1/lib/active_support/callbacks.rb:298:in `block in halting'
/home/radhika/arvados/apps/workbench/vendor/bundle/ruby/2.1.0/gems/activesupport-4.1.1/lib/active_support/callbacks.rb:229:in `call'
/home/radhika/arvados/apps/workbench/vendor/bundle/ruby/2.1.0/gems/activesupport-4.1.1/lib/active_support/callbacks.rb:229:in `block in halting'
/home/radhika/arvados/apps/workbench/vendor/bundle/ruby/2.1.0/gems/activesupport-4.1.1/lib/active_support/callbacks.rb:166:in `call'
/home/radhika/arvados/apps/workbench/vendor/bundle/ruby/2.1.0/gems/activesupport-4.1.1/lib/active_support/callbacks.rb:166:in `block in halting'
/home/radhika/arvados/apps/workbench/vendor/bundle/ruby/2.1.0/gems/activesupport-4.1.1/lib/active_support/callbacks.rb:86:in `call'
/home/radhika/arvados/apps/workbench/vendor/bundle/ruby/2.1.0/gems/activesupport-4.1.1/lib/active_support/callbacks.rb:86:in `run_callbacks'
/home/radhika/arvados/apps/workbench/vendor/bundle/ruby/2.1.0/gems/actionpack-4.1.1/lib/abstract_controller/callbacks.rb:19:in `process_action'
/home/radhika/arvados/apps/workbench/vendor/bundle/ruby/2.1.0/gems/actionpack-4.1.1/lib/action_controller/metal/rescue.rb:29:in `process_action'
/home/radhika/arvados/apps/workbench/vendor/bundle/ruby/2.1.0/gems/actionpack-4.1.1/lib/action_controller/metal/instrumentation.rb:31:in `block in process_action'
/home/radhika/arvados/apps/workbench/vendor/bundle/ruby/2.1.0/gems/activesupport-4.1.1/lib/active_support/notifications.rb:159:in `block in instrument'
/home/radhika/arvados/apps/workbench/vendor/bundle/ruby/2.1.0/gems/activesupport-4.1.1/lib/active_support/notifications/instrumenter.rb:20:in `instrument'
/home/radhika/arvados/apps/workbench/vendor/bundle/ruby/2.1.0/gems/activesupport-4.1.1/lib/active_support/notifications.rb:159:in `instrument'
/home/radhika/arvados/apps/workbench/vendor/bundle/ruby/2.1.0/gems/actionpack-4.1.1/lib/action_controller/metal/instrumentation.rb:30:in `process_action'
/home/radhika/arvados/apps/workbench/vendor/bundle/ruby/2.1.0/gems/actionpack-4.1.1/lib/action_controller/metal/params_wrapper.rb:250:in `process_action'
/home/radhika/arvados/apps/workbench/vendor/bundle/ruby/2.1.0/gems/activerecord-4.1.1/lib/active_record/railties/controller_runtime.rb:18:in `process_action'
/home/radhika/arvados/apps/workbench/vendor/bundle/ruby/2.1.0/gems/actionpack-4.1.1/lib/abstract_controller/base.rb:136:in `process'
/home/radhika/arvados/apps/workbench/vendor/bundle/ruby/2.1.0/gems/actionview-4.1.1/lib/action_view/rendering.rb:30:in `process'
/home/radhika/arvados/apps/workbench/vendor/bundle/ruby/2.1.0/gems/actionpack-4.1.1/lib/action_controller/metal.rb:195:in `dispatch'
/home/radhika/arvados/apps/workbench/vendor/bundle/ruby/2.1.0/gems/actionpack-4.1.1/lib/action_controller/metal/rack_delegation.rb:13:in `dispatch'
/home/radhika/arvados/apps/workbench/vendor/bundle/ruby/2.1.0/gems/actionpack-4.1.1/lib/action_controller/metal.rb:231:in `block in action'
/home/radhika/arvados/apps/workbench/vendor/bundle/ruby/2.1.0/gems/actionpack-4.1.1/lib/action_dispatch/routing/route_set.rb:80:in `call'
/home/radhika/arvados/apps/workbench/vendor/bundle/ruby/2.1.0/gems/actionpack-4.1.1/lib/action_dispatch/routing/route_set.rb:80:in `dispatch'
/home/radhika/arvados/apps/workbench/vendor/bundle/ruby/2.1.0/gems/actionpack-4.1.1/lib/action_dispatch/routing/route_set.rb:48:in `call'
/home/radhika/arvados/apps/workbench/vendor/bundle/ruby/2.1.0/gems/actionpack-4.1.1/lib/action_dispatch/journey/router.rb:71:in `block in call'
/home/radhika/arvados/apps/workbench/vendor/bundle/ruby/2.1.0/gems/actionpack-4.1.1/lib/action_dispatch/journey/router.rb:59:in `each'
/home/radhika/arvados/apps/workbench/vendor/bundle/ruby/2.1.0/gems/actionpack-4.1.1/lib/action_dispatch/journey/router.rb:59:in `call'
/home/radhika/arvados/apps/workbench/vendor/bundle/ruby/2.1.0/gems/actionpack-4.1.1/lib/action_dispatch/routing/route_set.rb:676:in `call'
/home/radhika/arvados/apps/workbench/vendor/bundle/ruby/2.1.0/gems/rack-1.5.2/lib/rack/etag.rb:23:in `call'
/home/radhika/arvados/apps/workbench/vendor/bundle/ruby/2.1.0/gems/rack-1.5.2/lib/rack/conditionalget.rb:35:in `call'
/home/radhika/arvados/apps/workbench/vendor/bundle/ruby/2.1.0/gems/rack-1.5.2/lib/rack/head.rb:11:in `call'
/home/radhika/arvados/apps/workbench/vendor/bundle/ruby/2.1.0/gems/actionpack-4.1.1/lib/action_dispatch/middleware/params_parser.rb:27:in `call'
/home/radhika/arvados/apps/workbench/vendor/bundle/ruby/2.1.0/gems/actionpack-4.1.1/lib/action_dispatch/middleware/flash.rb:254:in `call'
/home/radhika/arvados/apps/workbench/vendor/bundle/ruby/2.1.0/gems/rack-1.5.2/lib/rack/session/abstract/id.rb:225:in `context'
/home/radhika/arvados/apps/workbench/vendor/bundle/ruby/2.1.0/gems/rack-1.5.2/lib/rack/session/abstract/id.rb:220:in `call'
/home/radhika/arvados/apps/workbench/vendor/bundle/ruby/2.1.0/gems/actionpack-4.1.1/lib/action_dispatch/middleware/cookies.rb:560:in `call'
/home/radhika/arvados/apps/workbench/vendor/bundle/ruby/2.1.0/gems/activerecord-4.1.1/lib/active_record/query_cache.rb:36:in `call'
/home/radhika/arvados/apps/workbench/vendor/bundle/ruby/2.1.0/gems/activerecord-4.1.1/lib/active_record/connection_adapters/abstract/connection_pool.rb:621:in `call'
/home/radhika/arvados/apps/workbench/vendor/bundle/ruby/2.1.0/gems/actionpack-4.1.1/lib/action_dispatch/middleware/callbacks.rb:29:in `block in call'
/home/radhika/arvados/apps/workbench/vendor/bundle/ruby/2.1.0/gems/activesupport-4.1.1/lib/active_support/callbacks.rb:82:in `run_callbacks'
/home/radhika/arvados/apps/workbench/vendor/bundle/ruby/2.1.0/gems/actionpack-4.1.1/lib/action_dispatch/middleware/callbacks.rb:27:in `call'
/home/radhika/arvados/apps/workbench/vendor/bundle/ruby/2.1.0/gems/actionpack-4.1.1/lib/action_dispatch/middleware/reloader.rb:73:in `call'
/home/radhika/arvados/apps/workbench/vendor/bundle/ruby/2.1.0/gems/actionpack-4.1.1/lib/action_dispatch/middleware/remote_ip.rb:76:in `call'
/home/radhika/arvados/apps/workbench/vendor/bundle/ruby/2.1.0/gems/actionpack-4.1.1/lib/action_dispatch/middleware/debug_exceptions.rb:17:in `call'
/home/radhika/arvados/apps/workbench/vendor/bundle/ruby/2.1.0/gems/actionpack-4.1.1/lib/action_dispatch/middleware/show_exceptions.rb:30:in `call'
/home/radhika/arvados/apps/workbench/vendor/bundle/ruby/2.1.0/gems/railties-4.1.1/lib/rails/rack/logger.rb:38:in `call_app'
/home/radhika/arvados/apps/workbench/vendor/bundle/ruby/2.1.0/gems/railties-4.1.1/lib/rails/rack/logger.rb:20:in `block in call'
/home/radhika/arvados/apps/workbench/vendor/bundle/ruby/2.1.0/gems/activesupport-4.1.1/lib/active_support/tagged_logging.rb:68:in `block in tagged'
/home/radhika/arvados/apps/workbench/vendor/bundle/ruby/2.1.0/gems/activesupport-4.1.1/lib/active_support/tagged_logging.rb:26:in `tagged'
/home/radhika/arvados/apps/workbench/vendor/bundle/ruby/2.1.0/gems/activesupport-4.1.1/lib/active_support/tagged_logging.rb:68:in `tagged'
/home/radhika/arvados/apps/workbench/vendor/bundle/ruby/2.1.0/gems/railties-4.1.1/lib/rails/rack/logger.rb:20:in `call'
/home/radhika/arvados/apps/workbench/vendor/bundle/ruby/2.1.0/gems/actionpack-4.1.1/lib/action_dispatch/middleware/request_id.rb:21:in `call'
/home/radhika/arvados/apps/workbench/vendor/bundle/ruby/2.1.0/gems/rack-1.5.2/lib/rack/methodoverride.rb:21:in `call'
/home/radhika/arvados/apps/workbench/vendor/bundle/ruby/2.1.0/gems/rack-1.5.2/lib/rack/runtime.rb:17:in `call'
/home/radhika/arvados/apps/workbench/vendor/bundle/ruby/2.1.0/gems/activesupport-4.1.1/lib/active_support/cache/strategy/local_cache_middleware.rb:26:in `call'
/home/radhika/arvados/apps/workbench/vendor/bundle/ruby/2.1.0/gems/rack-1.5.2/lib/rack/lock.rb:17:in `call'
/home/radhika/arvados/apps/workbench/vendor/bundle/ruby/2.1.0/gems/actionpack-4.1.1/lib/action_dispatch/middleware/static.rb:64:in `call'
/home/radhika/arvados/apps/workbench/vendor/bundle/ruby/2.1.0/gems/rack-1.5.2/lib/rack/sendfile.rb:112:in `call'
/home/radhika/arvados/apps/workbench/vendor/bundle/ruby/2.1.0/gems/railties-4.1.1/lib/rails/engine.rb:514:in `call'
/home/radhika/arvados/apps/workbench/vendor/bundle/ruby/2.1.0/gems/railties-4.1.1/lib/rails/application.rb:144:in `call'
/home/radhika/arvados/apps/workbench/vendor/bundle/ruby/2.1.0/gems/railties-4.1.1/lib/rails/railtie.rb:194:in `public_send'
/home/radhika/arvados/apps/workbench/vendor/bundle/ruby/2.1.0/gems/railties-4.1.1/lib/rails/railtie.rb:194:in `method_missing'
/home/radhika/arvados/apps/workbench/vendor/bundle/ruby/2.1.0/gems/passenger-4.0.23/lib/phusion_passenger/rack/thread_handler_extension.rb:77:in `process_request'
/home/radhika/arvados/apps/workbench/vendor/bundle/ruby/2.1.0/gems/passenger-4.0.23/lib/phusion_passenger/request_handler/thread_handler.rb:140:in `accept_and_process_next_request'
/home/radhika/arvados/apps/workbench/vendor/bundle/ruby/2.1.0/gems/passenger-4.0.23/lib/phusion_passenger/request_handler/thread_handler.rb:108:in `main_loop'
/home/radhika/arvados/apps/workbench/vendor/bundle/ruby/2.1.0/gems/passenger-4.0.23/lib/phusion_passenger/request_handler.rb:441:in `block (3 levels) in start_threads'
Updated by Brett Smith over 10 years ago
This is basically bug #3200; if validation fails for whatever reason, the user is not told that but instead the input box hangs.
Updated by Tom Clegg over 10 years ago
- Target version changed from 2014-07-16 Sprint to 2014-08-06 Sprint
Updated by Ward Vandewege over 10 years ago
- Tracker changed from Bug to Task
- Parent task set to #3200
Updated by Brett Smith over 10 years ago
- Status changed from New to In Progress
- Start date set to 07/23/2014
Updated by Brett Smith over 10 years ago
- Status changed from In Progress to Resolved
- % Done changed from 0 to 100
- Remaining (hours) set to 0.0
Applied in changeset arvados|commit:fdc4fd98ee963559ac13e737700a8be1f5c736c7.