Bug #18185
closed
smart proxy refresh throws stackerror
Description
Hi,
I recently upgraded my main foreman/katello server to 3.2.3. Afterwards I reinstalled my secondary puppet smartproxy. Now everytime I refresh the smart proxy there is an error "SystemStackError (stack level too deep)". I have other smart proxies that work fine. Even though it throws an error the refresh seems to work because I can turn off/on features.
CLI:
- hammer proxy refresh-features --name smartproxypuppet.tld
Refresh of smart proxy features failed:
500 Internal Server Error
Production Log:
2017-01-20 16:13:21 7344a677 [app] [I] Started GET "/api/smart_proxies?search=name+%3D+%22smartproxypuppet.tld%22" for 1.1.1.20 at 2017-01-20 16:13:21 +0100
2017-01-20 16:13:21 7344a677 [app] [I] Processing by Api::V2::SmartProxiesController#index as JSON
2017-01-20 16:13:21 7344a677 [app] [I] Parameters: {"search"=>"name = \"smartproxypuppet.tld\"", "apiv"=>"v2", "smart_proxy"=>{}}
2017-01-20 16:13:21 7344a677 [app] [I] Authorized user admin(Admin User)
2017-01-20 16:13:21 7344a677 [app] [I] Rendered api/v2/smart_proxies/index.json.rabl within api/v2/layouts/index_layout (44.5ms)
2017-01-20 16:13:21 7344a677 [app] [I] Completed 200 OK in 113ms (Views: 60.4ms | ActiveRecord: 12.3ms)
2017-01-20 16:13:22 713e4c44 [app] [I] Started PUT "/api/smart_proxies/2/refresh" for 1.1.1.20 at 2017-01-20 16:13:22 +0100
2017-01-20 16:13:22 713e4c44 [app] [I] Processing by Api::V2::SmartProxiesController#refresh as JSON
2017-01-20 16:13:22 713e4c44 [app] [I] Parameters: {"apiv"=>"v2", "id"=>"2", "smart_proxy"=>{}}
2017-01-20 16:13:22 713e4c44 [app] [I] Authorized user admin(Admin User)
2017-01-20 16:14:00 713e4c44 [app] [I] Completed 500 Internal Server Error in 38278ms (ActiveRecord: 1116.1ms)
2017-01-20 16:14:00 713e4c44 [app] [F]
| SystemStackError (stack level too deep):
| app/models/concerns/audit_extensions.rb:56:in `ensure_auditable_and_associated_name'
| katello (3.2.1.1) app/lib/katello/lazy_accessor.rb:80:in `save'
| katello (3.2.1.1) app/models/katello/concerns/smart_proxy_extensions.rb:60:in `update_puppet_path'
| katello (3.2.1.1) app/models/katello/concerns/smart_proxy_extensions.rb:51:in `puppet_path'
| katello (3.2.1.1) app/lib/katello/lazy_accessor.rb:80:in `save'
| katello (3.2.1.1) app/models/katello/concerns/smart_proxy_extensions.rb:60:in `update_puppet_path'
| katello (3.2.1.1) app/models/katello/concerns/smart_proxy_extensions.rb:51:in `puppet_path'
| katello (3.2.1.1) app/lib/katello/lazy_accessor.rb:80:in `save'
| katello (3.2.1.1) app/models/katello/concerns/smart_proxy_extensions.rb:60:in `update_puppet_path'
| katello (3.2.1.1) app/models/katello/concerns/smart_proxy_extensions.rb:51:in `puppet_path'
| katello (3.2.1.1) app/lib/katello/lazy_accessor.rb:80:in `save'
| katello (3.2.1.1) app/models/katello/concerns/smart_proxy_extensions.rb:60:in `update_puppet_path'
| katello (3.2.1.1) app/models/katello/concerns/smart_proxy_extensions.rb:51:in `puppet_path'
| katello (3.2.1.1) app/lib/katello/lazy_accessor.rb:80:in `save'
| katello (3.2.1.1) app/models/katello/concerns/smart_proxy_extensions.rb:60:in `update_puppet_path'
| katello (3.2.1.1) app/models/katello/concerns/smart_proxy_extensions.rb:51:in `puppet_path'
| katello (3.2.1.1) app/lib/katello/lazy_accessor.rb:80:in `save'
[...many many many more...]
| katello (3.2.1.1) app/lib/katello/lazy_accessor.rb:80:in `save'
| katello (3.2.1.1) app/models/katello/concerns/smart_proxy_extensions.rb:60:in `update_puppet_path'
| katello (3.2.1.1) app/models/katello/concerns/smart_proxy_extensions.rb:51:in `puppet_path'
| katello (3.2.1.1) app/lib/katello/lazy_accessor.rb:80:in `save'
| katello (3.2.1.1) app/models/katello/concerns/smart_proxy_extensions.rb:60:in `update_puppet_path'
| katello (3.2.1.1) app/models/katello/concerns/smart_proxy_extensions.rb:51:in `puppet_path'
| katello (3.2.1.1) app/lib/katello/lazy_accessor.rb:80:in `save'
| katello (3.2.1.1) app/models/katello/concerns/smart_proxy_extensions.rb:60:in `update_puppet_path'
| katello (3.2.1.1) app/models/katello/concerns/smart_proxy_extensions.rb:51:in `puppet_path'
| katello (3.2.1.1) app/lib/katello/lazy_accessor.rb:80:in `save'
| katello (3.2.1.1) app/models/katello/concerns/smart_proxy_extensions.rb:60:in `update_puppet_path'
| katello (3.2.1.1) app/models/katello/concerns/smart_proxy_extensions.rb:66:in `refresh_with_puppet_path'
| foreman_remote_execution (1.2.2) app/models/concerns/foreman_remote_execution/smart_proxy_extensions.rb:21:in `refresh_with_remote_execution'
| app/controllers/api/v2/smart_proxies_controller.rb:60:in `refresh'
| app/controllers/api/v2/base_controller.rb:152:in `disable_json_root'
| app/controllers/concerns/application_shared.rb:14:in `set_timezone'
| app/models/concerns/foreman/thread_session.rb:32:in `clear_thread'
| lib/middleware/catch_json_parse_errors.rb:9:in `call'
| lib/middleware/tagged_logging.rb:18:in `call'
Foreman Installer for Capsule:
foreman-installer --scenario capsule\
--capsule-parent-fqdn "foreman.tld"\
--foreman-proxy-register-in-foreman "true"\
--foreman-proxy-foreman-base-url "https://foreman.tld"\
--foreman-proxy-trusted-hosts "foreman.tld"\
--foreman-proxy-trusted-hosts "smartproxypuppet.tld"\
--foreman-proxy-oauth-consumer-key "KEY"\
--foreman-proxy-oauth-consumer-secret "KEY"\
--capsule-pulp-oauth-secret "KEY"\
--capsule-certs-tar "~/smartproxypuppet.tld-certs.tar"\
--capsule-puppet-server-implementation puppetserver\
--capsule-puppet-ca-proxy "https://foreman.tld"\
--foreman-proxy-puppetca false\
--foreman-proxy-templates false\
--foreman-proxy-plugin-remote-execution-ssh-enabled false\
--no-enable-foreman-proxy-plugin-pulp\
--foreman-proxy-plugin-pulp-enabled false
I need to disable pulp in /etc/foreman-proxy/settings.d/pulp.yml afterwards and install httpd before running installer but for that I'll open a separate bug :)
Greetings
Klaas