[Satellite6] Upgrade from 6.3.z to 6.4 fails on "Katello::Pool.import_all NoMethodError: undefined method `[]' for nil:NilClass"
Environment
Satellite 6.3.3
Satellite 6.3.4
Satellite 6.4
Issue
Upgrading from 6.3.z to 6.4 fails on
/opt/theforeman/tfm-ror51/root/usr/share/gems/gems/activesupport-5.1.6/lib/active_support/message_encryptor.rb:22: warning: previous definition of DEFAULT_CIPHER was here
rake aborted!
NoMethodError: undefined method `[]' for nil:NilClass
/opt/theforeman/tfm/root/usr/share/gems/gems/katello-3.7.0.41/app/lib/katello/resources/candlepin/product.rb:13:in `block in find_for_stacking_id'
/opt/theforeman/tfm/root/usr/share/gems/gems/katello-3.7.0.41/app/lib/katello/resources/candlepin/product.rb:12:in `each'
/opt/theforeman/tfm/root/usr/share/gems/gems/katello-3.7.0.41/app/lib/katello/resources/candlepin/product.rb:12:in `find_for_stacking_id'
/opt/theforeman/tfm/root/usr/share/gems/gems/katello-3.7.0.41/app/models/katello/glue/candlepin/pool.rb:48:in `stacking_subscription'
/opt/theforeman/tfm/root/usr/share/gems/gems/katello-3.7.0.41/app/models/katello/glue/candlepin/pool.rb:104:in `import_data'
/opt/theforeman/tfm/root/usr/share/gems/gems/katello-3.7.0.41/app/models/katello/glue/candlepin/candlepin_object.rb:44:in `block (2 levels) in import_all'
/opt/theforeman/tfm-ror51/root/usr/share/gems/gems/activerecord-5.1.6/lib/active_record/relation/delegation.rb:39:in `each'
/opt/theforeman/tfm-ror51/root/usr/share/gems/gems/activerecord-5.1.6/lib/active_record/relation/delegation.rb:39:in `each'
/opt/theforeman/tfm/root/usr/share/gems/gems/katello-3.7.0.41/app/models/katello/glue/candlepin/candlepin_object.rb:42:in `block in import_all'
/opt/theforeman/tfm-ror51/root/usr/share/gems/gems/activerecord-5.1.6/lib/active_record/relation/delegation.rb:39:in `each'
/opt/theforeman/tfm-ror51/root/usr/share/gems/gems/activerecord-5.1.6/lib/active_record/relation/delegation.rb:39:in `each'
/opt/theforeman/tfm/root/usr/share/gems/gems/katello-3.7.0.41/app/models/katello/glue/candlepin/candlepin_object.rb:38:in `import_all'
/opt/theforeman/tfm/root/usr/share/gems/gems/katello-3.7.0.41/lib/katello/tasks/import_subscriptions.rake:6:in `block (2 levels) in <top (required)>'
/opt/rh/rh-ruby24/root/usr/share/gems/gems/rake-12.0.0/exe/rake:27:in `<top (required)>'
Tasks: TOP => katello:import_subscriptions
(See full trace by running task with --trace)
Importing Subscriptions
foreman-rake katello:import_subscriptions failed! Check the output for error!
Upgrade step set_upstream_pool_id failed. Check logs for more information.
Running foreman-rake console command Katello::Pool.import_all fails on
irb(main):003:0> Katello::Pool.import_all
NoMethodError: undefined method `[]' for nil:NilClass
from katello (3.7.0.41) app/lib/katello/resources/candlepin/product.rb:13:in `block in find_for_stacking_id'
from katello (3.7.0.41) app/lib/katello/resources/candlepin/product.rb:12:in `each'
from katello (3.7.0.41) app/lib/katello/resources/candlepin/product.rb:12:in `find_for_stacking_id'
from katello (3.7.0.41) app/models/katello/glue/candlepin/pool.rb:48:in `stacking_subscription'
from katello (3.7.0.41) app/models/katello/glue/candlepin/pool.rb:104:in `import_data'
from katello (3.7.0.41) app/models/katello/glue/candlepin/candlepin_object.rb:44:in `block (2 levels) in import_all'
from katello (3.7.0.41) app/models/katello/glue/candlepin/candlepin_object.rb:42:in `block in import_all'
from katello (3.7.0.41) app/models/katello/glue/candlepin/candlepin_object.rb:38:in `import_all'
from (irb):3
from lib/tasks/console.rake:5:in `block in <top (required)>'
Resolution
Apply patch
cd /opt/theforeman/tfm/root/usr/share/gems/gems/katello-3.7.0.41
patch -p1 < 7776.patch
For more KB articles/solutions related to Red Hat Satellite 6.x Installation/Upgrade/Update Issues, please refer to the Red Hat Satellite Consolidated Troubleshooting Article for Red Hat Satellite 6.x Installation/Upgrade/Update Issues.
Root Cause
It is a bug, reported in This content is not included.Bugzilla
This solution is part of Red Hat’s fast-track publication program, providing a huge library of solutions that Red Hat engineers have created while supporting our customers. To give you the knowledge you need the instant it becomes available, these articles may be presented in a raw and unedited form.