| Summary: | backend exception when adding rhevm providerAcct when api down | ||||||||
|---|---|---|---|---|---|---|---|---|---|
| Product: | [Retired] CloudForms Cloud Engine | Reporter: | Dave Johnson <dajohnso> | ||||||
| Component: | aeolus-conductor | Assignee: | Dave Johnson <dajohnso> | ||||||
| Status: | CLOSED ERRATA | QA Contact: | Dave Johnson <dajohnso> | ||||||
| Severity: | unspecified | Docs Contact: | |||||||
| Priority: | unspecified | ||||||||
| Version: | 1.0.0 | CC: | akarol, cpelland, dajohnso, deltacloud-maint, dgao, slinaber, ssachdev, whayutin | ||||||
| Target Milestone: | rc | ||||||||
| Target Release: | --- | ||||||||
| Hardware: | Unspecified | ||||||||
| OS: | Unspecified | ||||||||
| Whiteboard: | |||||||||
| Fixed In Version: | Doc Type: | Bug Fix | |||||||
| Doc Text: | Story Points: | --- | |||||||
| Clone Of: | Environment: | ||||||||
| Last Closed: | 2012-05-15 21:41:55 UTC | Type: | --- | ||||||
| Regression: | --- | Mount Type: | --- | ||||||
| Documentation: | --- | CRM: | |||||||
| Verified Versions: | Category: | --- | |||||||
| oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |||||||
| Cloudforms Team: | --- | Target Upstream Version: | |||||||
| Attachments: |
|
||||||||
This actual error is fixed by upgrading to the 0.3.0 version of rubygems-deltacloud-client. But a new error comes up if you upgrade and connect to something that's not even listening on the port: Errno::ECONNREFUSED (Connection refused - connect(2)): /usr/lib/ruby/1.8/net/http.rb:560:in `initialize' /usr/lib/ruby/1.8/net/http.rb:560:in `open' /usr/lib/ruby/1.8/net/http.rb:560:in `connect' /usr/lib/ruby/1.8/timeout.rb:67:in `timeout' /usr/lib/ruby/1.8/timeout.rb:101:in `timeout' /usr/lib/ruby/1.8/net/http.rb:560:in `connect' /usr/lib/ruby/1.8/net/http.rb:553:in `do_start' /usr/lib/ruby/1.8/net/http.rb:542:in `start' We should rescue this and do something more graceful. Patch on list: https://fedorahosted.org/pipermail/aeolus-devel/2011-July/002858.html Will update when this is pushed. c0ecab5028a582d3b281578a75676de29363a105 in latest fp testing rpm This looks a lot better in the UI as now it displays a error message with the following text: Account rhevm could not be added: uninitialized constant Deltacloud::BackendError But does this help the user diagnose the problem? My concern is that this points to a conductor problem more than helping the user determine that the rhevm api is unreachable. Created attachment 512672 [details] screenshot for comment 4 I agree w/ Dave.. I think the simple fix would be to change.. Deltacloud::BackendError TO: Deltacloud::BackendError, "Please make sure deltacloud is runnng for provider type $provider" Oh huh, so "uninitialized constant Deltacloud::BackendError" is actually an exception being thrown in Deltacloud. The bug happens to occur when it can't reach a backend provider. I'll look into this some more. I've opened https://issues.apache.org/jira/browse/DTACLOUD-60 for this. I lost track of this, but it sounds like it should have been fixed in Deltacloud back in July. Are you able to quickly re-test this to confirm? Hi Matt, I tried adding rhevm providerAcct when api is down. Following is the error message displayed on UI. "Account aziza_rhev could not be added: Connection refused - connect(2)" Is this the correct error message or it should be "Please make sure deltacloud is running for provider type $provider" ? Thanks, Aziza [root@nec-em15 log]# rpm -qa | grep aeolus aeolus-conductor-doc-0.4.0-0.20110921152740gitac47a38.fc15.noarch aeolus-conductor-daemons-0.4.0-0.20110921152740gitac47a38.fc15.noarch rubygem-aeolus-image-0.1.0-3.20110919115936gitd1d24b4.fc15.noarch aeolus-configure-2.0.2-4.20110921102958gitcaa9608.fc15.noarch aeolus-conductor-0.4.0-0.20110921152740gitac47a38.fc15.noarch aeolus-all-0.4.0-0.20110921152740gitac47a38.fc15.noarch making sure all the bugs are at the right version for future queries Fixed in:
commit c2453050541674e15a5bfce2123021c2baa8f5cc
Author: Matt Wagner <matt.wagner>
Date: Thu Oct 6 14:22:17 2011 -0400
humanize_error helper
Resolves https://bugzilla.redhat.com/show_bug.cgi?id=718122
The error is now something to the effect of "Deltacloud is unreachable. Please verify that it is running." Once this patch makes its way into the testing repo, you should no longer see the "Connection refused - connect(2)" text.
Created attachment 529520 [details]
provider cannot be added
Now the error message says provider cannot be added which works for me.
comment 14 was with these rpms aeolus-conductor-doc-0.5.0-0.20111020182515gitc639503.fc15.noarch aeolus-conductor-0.5.0-0.20111020182515gitc639503.fc15.noarch aeolus-conductor-daemons-0.5.0-0.20111020182515gitc639503.fc15.noarch Since the problem described in this bug report should be resolved in a recent advisory, it has been closed with a resolution of ERRATA. For information on the advisory, and where to find the updated files, follow the link below. If the solution does not work for you, open a new bug report. http://rhn.redhat.com/errata/RHEA-2012-0583.html |
Description of problem: With conductor configured for rhevm provider, attempt to add a rhevm provider account when the API is stopped. Error in the UI (uninitialized constant Deltacloud::BackendError) and the following stacktrace in rails.log Processing ProviderAccountsController#create (for 10.11.8.52 at 2011-07-01 00:04:12) [POST] Parameters: {"commit"=>"Save", "action"=>"create", "quota"=>{"maximum_running_instances"=>"unlimited"}, "controller"=>"provider_accounts", "__map"=>{"set_selected_provider"=>{"method"=>"GET", "url"=>"/conductor/provider_accounts/set_selected_provider"}}, "provider_account"=>{"label"=>"rhevm", "provider_id"=>"1", "credentials_hash"=>{"username"=>"rhevm\\administrator", "password"=>"[FILTERED]"}}} DeltaCloud::API::BackendError (uninitialized constant Deltacloud::BackendError): /usr/lib/ruby/gems/1.8/gems/deltacloud-client-0.1.0/lib/deltacloud.rb:294:in `handle_backend_error' /usr/lib/ruby/gems/1.8/gems/deltacloud-client-0.1.0/lib/deltacloud.rb:262:in `request' /usr/lib/ruby/gems/1.8/gems/rest-client-1.6.1/lib/restclient/request.rb:218:in `call' /usr/lib/ruby/gems/1.8/gems/rest-client-1.6.1/lib/restclient/request.rb:218:in `process_result' /usr/lib/ruby/gems/1.8/gems/rest-client-1.6.1/lib/restclient/request.rb:169:in `transmit' /usr/lib/ruby/1.8/net/http.rb:543:in `start' /usr/lib/ruby/gems/1.8/gems/rest-client-1.6.1/lib/restclient/request.rb:166:in `transmit' /usr/lib/ruby/gems/1.8/gems/rest-client-1.6.1/lib/restclient/request.rb:60:in `execute' /usr/lib/ruby/gems/1.8/gems/rest-client-1.6.1/lib/restclient/request.rb:31:in `execute' /usr/lib/ruby/gems/1.8/gems/rest-client-1.6.1/lib/restclient.rb:68:in `get' /usr/lib/ruby/gems/1.8/gems/deltacloud-client-0.1.0/lib/deltacloud.rb:261:in `send' /usr/lib/ruby/gems/1.8/gems/deltacloud-client-0.1.0/lib/deltacloud.rb:261:in `request' /usr/lib/ruby/gems/1.8/gems/deltacloud-client-0.1.0/lib/deltacloud.rb:51:in `valid_credentials?' app/models/provider_account.rb:169:in `valid_credentials?' app/models/provider_account.rb:79:in `validate_credentials' app/controllers/provider_accounts_controller.rb:77:in `create' compass (0.10.4) lib/compass/app_integration/rails/actionpack2/action_controller.rb:7:in `process' haml (3.0.18) rails/./lib/sass/plugin/rack.rb:41:in `call' haml (3.0.18) rails/./lib/sass/plugin/rack.rb:41:in `call' thin (1.2.5) lib/thin/connection.rb:76:in `pre_process' thin (1.2.5) lib/thin/connection.rb:74:in `catch' thin (1.2.5) lib/thin/connection.rb:74:in `pre_process' thin (1.2.5) lib/thin/connection.rb:57:in `process' thin (1.2.5) lib/thin/connection.rb:42:in `receive_data' eventmachine (0.12.10) lib/eventmachine.rb:256:in `run_machine' eventmachine (0.12.10) lib/eventmachine.rb:256:in `run' thin (1.2.5) lib/thin/backends/base.rb:57:in `start' thin (1.2.5) lib/thin/server.rb:156:in `start' thin (1.2.5) lib/thin/controllers/controller.rb:80:in `start' thin (1.2.5) lib/thin/runner.rb:177:in `send' thin (1.2.5) lib/thin/runner.rb:177:in `run_command' thin (1.2.5) lib/thin/runner.rb:143:in `run!' thin (1.2.5) bin/thin:6 /usr/bin/thin:19:in `load' /usr/bin/thin:19