Bug #19280
closedFailed to destroy host on 1.15 RC
Description
Upgraded from 1.14 to 1.15.
Every host I attempt to delete yields the error below. Repeating the delete attempt seems to work.
ActiveRecord::RecordNotDestroyed Failed to destroy the record /usr/share/foreman/vendor/ruby/2.3.0/gems/activerecord-4.2.8/lib/active_record/persistence.rb:185:in `destroy!' /usr/share/foreman/vendor/ruby/2.3.0/gems/activerecord-4.2.8/lib/active_record/associations/has_many_association.rb:171:in `each' /usr/share/foreman/vendor/ruby/2.3.0/gems/activerecord-4.2.8/lib/active_record/associations/has_many_association.rb:171:in `delete_records' /usr/share/foreman/vendor/ruby/2.3.0/gems/activerecord-4.2.8/lib/active_record/associations/collection_association.rb:532:in `remove_records' /usr/share/foreman/vendor/ruby/2.3.0/gems/activerecord-4.2.8/lib/active_record/associations/collection_association.rb:525:in `block in delete_or_destroy' /usr/share/foreman/vendor/ruby/2.3.0/gems/activerecord-4.2.8/lib/active_record/associations/collection_association.rb:190:in `block in transaction' /usr/share/foreman/vendor/ruby/2.3.0/gems/activerecord-4.2.8/lib/active_record/connection_adapters/abstract/database_statements.rb:211:in `transaction' /usr/share/foreman/vendor/ruby/2.3.0/gems/activerecord-4.2.8/lib/active_record/transactions.rb:220:in `transaction' /usr/share/foreman/vendor/ruby/2.3.0/gems/activerecord-4.2.8/lib/active_record/associations/collection_association.rb:189:in `transaction' /usr/share/foreman/vendor/ruby/2.3.0/gems/activerecord-4.2.8/lib/active_record/associations/collection_association.rb:525:in `delete_or_destroy' /usr/share/foreman/vendor/ruby/2.3.0/gems/activerecord-4.2.8/lib/active_record/associations/collection_association.rb:286:in `destroy' /usr/share/foreman/vendor/ruby/2.3.0/gems/activerecord-4.2.8/lib/active_record/associations/collection_association.rb:230:in `destroy_all' /usr/share/foreman/vendor/ruby/2.3.0/gems/activerecord-4.2.8/lib/active_record/associations/has_many_association.rb:27:in `handle_dependency' /usr/share/foreman/vendor/ruby/2.3.0/gems/activerecord-4.2.8/lib/active_record/associations/builder/association.rb:146:in `block in add_destroy_callbacks' /usr/share/foreman/vendor/ruby/2.3.0/gems/activesupport-4.2.8/lib/active_support/callbacks.rb:448:in `instance_exec' /usr/share/foreman/vendor/ruby/2.3.0/gems/activesupport-4.2.8/lib/active_support/callbacks.rb:448:in `block in make_lambda' /usr/share/foreman/vendor/ruby/2.3.0/gems/activesupport-4.2.8/lib/active_support/callbacks.rb:164:in `block in halting' /usr/share/foreman/vendor/ruby/2.3.0/gems/activesupport-4.2.8/lib/active_support/callbacks.rb:504:in `block in call' /usr/share/foreman/vendor/ruby/2.3.0/gems/activesupport-4.2.8/lib/active_support/callbacks.rb:504:in `each' /usr/share/foreman/vendor/ruby/2.3.0/gems/activesupport-4.2.8/lib/active_support/callbacks.rb:504:in `call' /usr/share/foreman/vendor/ruby/2.3.0/gems/activesupport-4.2.8/lib/active_support/callbacks.rb:92:in `__run_callbacks__' /usr/share/foreman/vendor/ruby/2.3.0/gems/activesupport-4.2.8/lib/active_support/callbacks.rb:778:in `_run_destroy_callbacks' /usr/share/foreman/vendor/ruby/2.3.0/gems/activerecord-4.2.8/lib/active_record/callbacks.rb:292:in `destroy' /usr/share/foreman/vendor/ruby/2.3.0/gems/activerecord-4.2.8/lib/active_record/transactions.rb:281:in `block in destroy' /usr/share/foreman/vendor/ruby/2.3.0/gems/activerecord-4.2.8/lib/active_record/transactions.rb:351:in `block in with_transaction_returning_status' /usr/share/foreman/vendor/ruby/2.3.0/gems/activerecord-4.2.8/lib/active_record/connection_adapters/abstract/database_statements.rb:213:in `block in transaction' /usr/share/foreman/vendor/ruby/2.3.0/gems/activerecord-4.2.8/lib/active_record/connection_adapters/abstract/transaction.rb:184:in `within_new_transaction' /usr/share/foreman/vendor/ruby/2.3.0/gems/activerecord-4.2.8/lib/active_record/connection_adapters/abstract/database_statements.rb:213:in `transaction' /usr/share/foreman/vendor/ruby/2.3.0/gems/activerecord-4.2.8/lib/active_record/transactions.rb:220:in `transaction' /usr/share/foreman/vendor/ruby/2.3.0/gems/activerecord-4.2.8/lib/active_record/transactions.rb:348:in `with_transaction_returning_status' /usr/share/foreman/vendor/ruby/2.3.0/gems/activerecord-4.2.8/lib/active_record/transactions.rb:281:in `destroy' /usr/share/foreman/app/controllers/hosts_controller.rb:134:in `destroy' /usr/share/foreman/vendor/ruby/2.3.0/gems/actionpack-4.2.8/lib/action_controller/metal/implicit_render.rb:4:in `send_action' /usr/share/foreman/vendor/ruby/2.3.0/gems/actionpack-4.2.8/lib/abstract_controller/base.rb:198:in `process_action' /usr/share/foreman/vendor/ruby/2.3.0/gems/actionpack-4.2.8/lib/action_controller/metal/rendering.rb:10:in `process_action' /usr/share/foreman/vendor/ruby/2.3.0/gems/actionpack-4.2.8/lib/abstract_controller/callbacks.rb:20:in `block in process_action' /usr/share/foreman/vendor/ruby/2.3.0/gems/activesupport-4.2.8/lib/active_support/callbacks.rb:117:in `call' /usr/share/foreman/vendor/ruby/2.3.0/gems/activesupport-4.2.8/lib/active_support/callbacks.rb:555:in `block (2 levels) in compile' /usr/share/foreman/vendor/ruby/2.3.0/gems/activesupport-4.2.8/lib/active_support/callbacks.rb:505:in `call' /usr/share/foreman/vendor/ruby/2.3.0/gems/activesupport-4.2.8/lib/active_support/callbacks.rb:498:in `block (2 levels) in around' /usr/share/foreman/vendor/ruby/2.3.0/gems/activesupport-4.2.8/lib/active_support/callbacks.rb:313:in `block (2 levels) in halting' /usr/share/foreman/app/controllers/concerns/application_shared.rb:15:in `set_timezone' /usr/share/foreman/vendor/ruby/2.3.0/gems/activesupport-4.2.8/lib/active_support/callbacks.rb:432:in `block in make_lambda' /usr/share/foreman/vendor/ruby/2.3.0/gems/activesupport-4.2.8/lib/active_support/callbacks.rb:312:in `block in halting' /usr/share/foreman/vendor/ruby/2.3.0/gems/activesupport-4.2.8/lib/active_support/callbacks.rb:497:in `block in around' /usr/share/foreman/vendor/ruby/2.3.0/gems/activesupport-4.2.8/lib/active_support/callbacks.rb:505:in `call' /usr/share/foreman/vendor/ruby/2.3.0/gems/activesupport-4.2.8/lib/active_support/callbacks.rb:498:in `block (2 levels) in around' /usr/share/foreman/vendor/ruby/2.3.0/gems/activesupport-4.2.8/lib/active_support/callbacks.rb:313:in `block (2 levels) in halting' /usr/share/foreman/app/models/concerns/foreman/thread_session.rb:32:in `clear_thread' /usr/share/foreman/vendor/ruby/2.3.0/gems/activesupport-4.2.8/lib/active_support/callbacks.rb:432:in `block in make_lambda' /usr/share/foreman/vendor/ruby/2.3.0/gems/activesupport-4.2.8/lib/active_support/callbacks.rb:312:in `block in halting' /usr/share/foreman/vendor/ruby/2.3.0/gems/activesupport-4.2.8/lib/active_support/callbacks.rb:497:in `block in around' /usr/share/foreman/vendor/ruby/2.3.0/gems/activesupport-4.2.8/lib/active_support/callbacks.rb:505:in `call' /usr/share/foreman/vendor/ruby/2.3.0/gems/activesupport-4.2.8/lib/active_support/callbacks.rb:498:in `block (2 levels) in around' /usr/share/foreman/vendor/ruby/2.3.0/gems/activesupport-4.2.8/lib/active_support/callbacks.rb:313:in `block (2 levels) in halting' /usr/share/foreman/app/controllers/concerns/foreman/controller/topbar_sweeper.rb:12:in `set_topbar_sweeper_controller' /usr/share/foreman/vendor/ruby/2.3.0/gems/activesupport-4.2.8/lib/active_support/callbacks.rb:432:in `block in make_lambda' /usr/share/foreman/vendor/ruby/2.3.0/gems/activesupport-4.2.8/lib/active_support/callbacks.rb:312:in `block in halting' /usr/share/foreman/vendor/ruby/2.3.0/gems/activesupport-4.2.8/lib/active_support/callbacks.rb:497:in `block in around' /usr/share/foreman/vendor/ruby/2.3.0/gems/activesupport-4.2.8/lib/active_support/callbacks.rb:505:in `call' /usr/share/foreman/vendor/ruby/2.3.0/gems/activesupport-4.2.8/lib/active_support/callbacks.rb:498:in `block (2 levels) in around' /usr/share/foreman/vendor/ruby/2.3.0/gems/activesupport-4.2.8/lib/active_support/callbacks.rb:313:in `block (2 levels) in halting' /usr/share/foreman/vendor/ruby/2.3.0/gems/audited-4.4.1/lib/audited/sweeper.rb:14:in `around' /usr/share/foreman/vendor/ruby/2.3.0/gems/activesupport-4.2.8/lib/active_support/callbacks.rb:455:in `public_send' /usr/share/foreman/vendor/ruby/2.3.0/gems/activesupport-4.2.8/lib/active_support/callbacks.rb:455:in `block in make_lambda' /usr/share/foreman/vendor/ruby/2.3.0/gems/activesupport-4.2.8/lib/active_support/callbacks.rb:312:in `block in halting' /usr/share/foreman/vendor/ruby/2.3.0/gems/activesupport-4.2.8/lib/active_support/callbacks.rb:497:in `block in around' /usr/share/foreman/vendor/ruby/2.3.0/gems/activesupport-4.2.8/lib/active_support/callbacks.rb:505:in `call' /usr/share/foreman/vendor/ruby/2.3.0/gems/activesupport-4.2.8/lib/active_support/callbacks.rb:92:in `__run_callbacks__' /usr/share/foreman/vendor/ruby/2.3.0/gems/activesupport-4.2.8/lib/active_support/callbacks.rb:778:in `_run_process_action_callbacks' /usr/share/foreman/vendor/ruby/2.3.0/gems/activesupport-4.2.8/lib/active_support/callbacks.rb:81:in `run_callbacks' /usr/share/foreman/vendor/ruby/2.3.0/gems/actionpack-4.2.8/lib/abstract_controller/callbacks.rb:19:in `process_action' /usr/share/foreman/vendor/ruby/2.3.0/gems/actionpack-4.2.8/lib/action_controller/metal/rescue.rb:29:in `process_action' /usr/share/foreman/vendor/ruby/2.3.0/gems/actionpack-4.2.8/lib/action_controller/metal/instrumentation.rb:32:in `block in process_action' /usr/share/foreman/vendor/ruby/2.3.0/gems/activesupport-4.2.8/lib/active_support/notifications.rb:164:in `block in instrument' /usr/share/foreman/vendor/ruby/2.3.0/gems/activesupport-4.2.8/lib/active_support/notifications/instrumenter.rb:20:in `instrument' /usr/share/foreman/vendor/ruby/2.3.0/gems/activesupport-4.2.8/lib/active_support/notifications.rb:164:in `instrument' /usr/share/foreman/vendor/ruby/2.3.0/gems/actionpack-4.2.8/lib/action_controller/metal/instrumentation.rb:30:in `process_action' /usr/share/foreman/vendor/ruby/2.3.0/gems/actionpack-4.2.8/lib/action_controller/metal/params_wrapper.rb:250:in `process_action' /usr/share/foreman/vendor/ruby/2.3.0/gems/activerecord-4.2.8/lib/active_record/railties/controller_runtime.rb:18:in `process_action' /usr/share/foreman/vendor/ruby/2.3.0/gems/actionpack-4.2.8/lib/abstract_controller/base.rb:137:in `process' /usr/share/foreman/vendor/ruby/2.3.0/gems/actionview-4.2.8/lib/action_view/rendering.rb:30:in `process' /usr/share/foreman/vendor/ruby/2.3.0/gems/actionpack-4.2.8/lib/action_controller/metal.rb:196:in `dispatch' /usr/share/foreman/vendor/ruby/2.3.0/gems/actionpack-4.2.8/lib/action_controller/metal/rack_delegation.rb:13:in `dispatch' /usr/share/foreman/vendor/ruby/2.3.0/gems/actionpack-4.2.8/lib/action_controller/metal.rb:237:in `block in action' /usr/share/foreman/vendor/ruby/2.3.0/gems/actionpack-4.2.8/lib/action_dispatch/routing/route_set.rb:74:in `dispatch' /usr/share/foreman/vendor/ruby/2.3.0/gems/actionpack-4.2.8/lib/action_dispatch/routing/route_set.rb:43:in `serve' /usr/share/foreman/vendor/ruby/2.3.0/gems/actionpack-4.2.8/lib/action_dispatch/journey/router.rb:43:in `block in serve' /usr/share/foreman/vendor/ruby/2.3.0/gems/actionpack-4.2.8/lib/action_dispatch/journey/router.rb:30:in `each' /usr/share/foreman/vendor/ruby/2.3.0/gems/actionpack-4.2.8/lib/action_dispatch/journey/router.rb:30:in `serve' /usr/share/foreman/vendor/ruby/2.3.0/gems/actionpack-4.2.8/lib/action_dispatch/routing/route_set.rb:817:in `call' /usr/share/foreman/vendor/ruby/2.3.0/gems/apipie-rails-0.4.0/lib/apipie/static_dispatcher.rb:65:in `call' /usr/share/foreman/vendor/ruby/2.3.0/gems/apipie-rails-0.4.0/lib/apipie/extractor/recorder.rb:132:in `call' /usr/share/foreman/vendor/ruby/2.3.0/gems/apipie-rails-0.4.0/lib/apipie/middleware/checksum_in_headers.rb:27:in `call' /usr/share/foreman/vendor/ruby/2.3.0/gems/rack-1.6.5/lib/rack/etag.rb:24:in `call' /usr/share/foreman/vendor/ruby/2.3.0/gems/rack-1.6.5/lib/rack/conditionalget.rb:38:in `call' /usr/share/foreman/vendor/ruby/2.3.0/gems/rack-1.6.5/lib/rack/head.rb:13:in `call' /usr/share/foreman/vendor/ruby/2.3.0/gems/actionpack-4.2.8/lib/action_dispatch/middleware/params_parser.rb:27:in `call' /usr/share/foreman/lib/middleware/catch_json_parse_errors.rb:8:in `call' /usr/share/foreman/vendor/ruby/2.3.0/gems/actionpack-4.2.8/lib/action_dispatch/middleware/flash.rb:260:in `call' /usr/share/foreman/vendor/ruby/2.3.0/gems/rack-1.6.5/lib/rack/session/abstract/id.rb:225:in `context' /usr/share/foreman/vendor/ruby/2.3.0/gems/rack-1.6.5/lib/rack/session/abstract/id.rb:220:in `call' /usr/share/foreman/vendor/ruby/2.3.0/gems/actionpack-4.2.8/lib/action_dispatch/middleware/cookies.rb:560:in `call' /usr/share/foreman/vendor/ruby/2.3.0/gems/activerecord-4.2.8/lib/active_record/query_cache.rb:36:in `call' /usr/share/foreman/vendor/ruby/2.3.0/gems/activerecord-4.2.8/lib/active_record/connection_adapters/abstract/connection_pool.rb:653:in `call' /usr/share/foreman/vendor/ruby/2.3.0/gems/actionpack-4.2.8/lib/action_dispatch/middleware/callbacks.rb:29:in `block in call' /usr/share/foreman/vendor/ruby/2.3.0/gems/activesupport-4.2.8/lib/active_support/callbacks.rb:88:in `__run_callbacks__' /usr/share/foreman/vendor/ruby/2.3.0/gems/activesupport-4.2.8/lib/active_support/callbacks.rb:778:in `_run_call_callbacks' /usr/share/foreman/vendor/ruby/2.3.0/gems/activesupport-4.2.8/lib/active_support/callbacks.rb:81:in `run_callbacks' /usr/share/foreman/vendor/ruby/2.3.0/gems/actionpack-4.2.8/lib/action_dispatch/middleware/callbacks.rb:27:in `call' /usr/share/foreman/vendor/ruby/2.3.0/gems/actionpack-4.2.8/lib/action_dispatch/middleware/remote_ip.rb:78:in `call' /usr/share/foreman/vendor/ruby/2.3.0/gems/actionpack-4.2.8/lib/action_dispatch/middleware/debug_exceptions.rb:17:in `call' /usr/share/foreman/vendor/ruby/2.3.0/gems/actionpack-4.2.8/lib/action_dispatch/middleware/show_exceptions.rb:30:in `call' /usr/share/foreman/vendor/ruby/2.3.0/gems/railties-4.2.8/lib/rails/rack/logger.rb:38:in `call_app' /usr/share/foreman/vendor/ruby/2.3.0/gems/railties-4.2.8/lib/rails/rack/logger.rb:22:in `call' /usr/share/foreman/lib/middleware/tagged_logging.rb:18:in `call' /usr/share/foreman/vendor/ruby/2.3.0/gems/actionpack-4.2.8/lib/action_dispatch/middleware/request_id.rb:21:in `call' /usr/share/foreman/vendor/ruby/2.3.0/gems/rack-1.6.5/lib/rack/methodoverride.rb:22:in `call' /usr/share/foreman/vendor/ruby/2.3.0/gems/rack-1.6.5/lib/rack/runtime.rb:18:in `call' /usr/share/foreman/vendor/ruby/2.3.0/gems/activesupport-4.2.8/lib/active_support/cache/strategy/local_cache_middleware.rb:28:in `call' /usr/share/foreman/vendor/ruby/2.3.0/gems/actionpack-4.2.8/lib/action_dispatch/middleware/static.rb:120:in `call' /usr/share/foreman/vendor/ruby/2.3.0/gems/rack-1.6.5/lib/rack/sendfile.rb:113:in `call' /usr/share/foreman/vendor/ruby/2.3.0/gems/secure_headers-3.6.2/lib/secure_headers/middleware.rb:12:in `call' /usr/share/foreman/vendor/ruby/2.3.0/gems/railties-4.2.8/lib/rails/engine.rb:518:in `call' /usr/share/foreman/vendor/ruby/2.3.0/gems/railties-4.2.8/lib/rails/application.rb:165:in `call' /usr/share/foreman/vendor/ruby/2.3.0/gems/railties-4.2.8/lib/rails/railtie.rb:194:in `public_send' /usr/share/foreman/vendor/ruby/2.3.0/gems/railties-4.2.8/lib/rails/railtie.rb:194:in `method_missing' /usr/share/foreman/vendor/ruby/2.3.0/gems/rack-1.6.5/lib/rack/urlmap.rb:66:in `block in call' /usr/share/foreman/vendor/ruby/2.3.0/gems/rack-1.6.5/lib/rack/urlmap.rb:50:in `each' /usr/share/foreman/vendor/ruby/2.3.0/gems/rack-1.6.5/lib/rack/urlmap.rb:50:in `call' /usr/lib/ruby/vendor_ruby/phusion_passenger/rack/thread_handler_extension.rb:97:in `process_request' /usr/lib/ruby/vendor_ruby/phusion_passenger/request_handler/thread_handler.rb:160:in `accept_and_process_next_request' /usr/lib/ruby/vendor_ruby/phusion_passenger/request_handler/thread_handler.rb:113:in `main_loop' /usr/lib/ruby/vendor_ruby/phusion_passenger/request_handler.rb:416:in `block (3 levels) in start_threads' /usr/lib/ruby/vendor_ruby/phusion_passenger/utils.rb:113:in `block in create_thread_and_abort_on_exception' /usr/share/foreman/vendor/ruby/2.3.0/gems/logging-2.2.0/lib/logging/diagnostic_context.rb:474:in `block in create_with_logging_context'
Updated by Daniel Lobato Garcia over 7 years ago
- Translation missing: en.field_release set to 209
Setting to 1.15 as we should fix this for the next RC
Updated by Daniel Lobato Garcia over 7 years ago
Have you tried with multiple hosts? Does this happen with every host? Have you tried with managed vs unmanaged hosts?
I'm trying to reproduce this on 1.15 but to no avail yet
Updated by Josh Benner over 7 years ago
- Create host (only minimum required fields, single interface)
- Click "delete" at
/hosts/<hostname>
- Observe error
- Click "back" on error page
- Navigate to host page again
- Click "delete" button
- Successful delete
If I follow the same process, but first flag it as unmanaged, the delete is successful.
Updated by Daniel Lobato Garcia over 7 years ago
Thanks that's helpful. I will report back the results after trying to do exactly that.
Updated by Dominic Cleal over 7 years ago
- Related to Bug #14702: Improve error messages when deleting multiple host fails because of proxy errors added
Updated by Dominic Cleal over 7 years ago
- Category set to Host creation
- Translation missing: en.field_release deleted (
209)
Unset the release as it's passed.
This could also be caused by a smart proxy error or a plugin, do check the smart proxy log at the time of the deletion for errors and ensure you can reproduce this using Foreman without any plugins.
Updated by Dominic Cleal over 7 years ago
The description in comment 3 sounds similar to #19599, but I'd need to confirm that DHCP is in use (possibly with the ISC DHCP provider), see the corresponding smart proxy logs, and more of production.log before suggesting it's a duplicate.