Note: This bug is displayed in read-only format because the product is no longer active in Red Hat Bugzilla.
Red Hat Satellite engineering is moving the tracking of its product development work on Satellite to Red Hat Jira (issues.redhat.com). If you're a Red Hat customer, please continue to file support cases via the Red Hat customer portal. If you're not, please head to the "Satellite project" in Red Hat Jira and file new tickets here. Individual Bugzilla bugs will be migrated starting at the end of May. If you cannot log in to RH Jira, please consult article #7032570. That failing, please send an e-mail to the RH Jira admins at rh-issues@redhat.com to troubleshoot your issue as a user management inquiry. The email creates a ServiceNow ticket with Red Hat. Individual Bugzilla bugs that are migrated will be moved to status "CLOSED", resolution "MIGRATED", and set with "MigratedToJIRA" in "Keywords". The link to the successor Jira issue will be found under "Links", have a little "two-footprint" icon next to it, and direct you to the "Satellite project" in Red Hat Jira (issue links are of type "https://issues.redhat.com/browse/SAT-XXXX", where "X" is a digit). This same link will be available in a blue banner at the top of the page informing you that that bug has been migrated.

Bug 1382719

Summary: Unattended Controller failure generates backtrace of 350.000 characters
Product: Red Hat Satellite Reporter: Peter Vreman <peter.vreman>
Component: Provisioning TemplatesAssignee: satellite6-bugs <satellite6-bugs>
Status: CLOSED WORKSFORME QA Contact:
Severity: medium Docs Contact:
Priority: medium    
Version: 6.2.2CC: bbuckingham, jcallaha, mhulan
Target Milestone: UnspecifiedKeywords: Triaged
Target Release: Unused   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2017-05-10 16:21:38 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On:    
Bug Blocks: 1122832    

Description Peter Vreman 2016-10-07 13:49:34 UTC
Description of problem:
After an error in the unattended/provision controller to preview a provisioning tempalte there is backtrace of 350.000 charcters:

[crash] root@li-lc-1578:/usr/share/foreman# wc --max-line-length /var/log/foreman/production.log
348746 /var/log/foreman/production.log


2016-10-07 13:38:59 [app] [I] Started GET "/unattended/provision?hostname=li-lc-1014.hag.hilti.com" for 10.2.2.11 at 2016-10-07 13:38:59 +0000
2016-10-07 13:38:59 [app] [I] Processing by UnattendedController#host_template as HTML
2016-10-07 13:38:59 [app] [I]   Parameters: {"hostname"=>"li-lc-1014.hag.hilti.com", "kind"=>"provision"}
2016-10-07 13:38:59 [app] [I] Found li-lc-1014.hag.hilti.com
2016-10-07 13:38:59 [app] [W] Action failed
 | NoMethodError: undefined method `path' for nil:NilClass
 | /usr/share/foreman/app/models/operatingsystem.rb:121:in `medium_uri'
 | /opt/theforeman/tfm/root/usr/share/gems/gems/katello-3.0.0.80/app/models/katello/concerns/redhat_extensions.rb:54:in `medium_uri_with_content_uri'
 | /usr/share/foreman/app/models/operatingsystems/redhat.rb:11:in `mediumpath'
....
 | /opt/theforeman/tfm/root/usr/share/gems/gems/logging-1.8.2/lib/logging/diagnostic_context.rb:323:in `call'
 | /opt/theforeman/tfm/root/usr/share/gems/gems/logging-1.8.2/lib/logging/diagnostic_context.rb:323:in `block in create_with_logging_context'
2016-10-07 13:38:59 [app] [I] ESC[1;32mDeface: [WARNING]ESC[0m No :original defined for 'change 500 page content', you should change its definition to include:
 |  :original => '35d2b4f7aac0c083740c6de6775473457e9ae9d8'
2016-10-07 13:38:59 [app] [I] Completed 500 Internal Server Error in 84ms
2016-10-07 13:38:59 [app] [F]
 | ArgumentError (There was no default layout for UnattendedController in #<ActionView::PathSet:0x0000001003c658 @paths=[#<ActionView::OptimizedFileSystemResolver:0x00000007619b10 @pattern=":prefix/:action{.:locale,}{.:formats,}{+:variants,}{.:handlers,}", @cache=#<ActionView::Resolver::Cache:0x00000007619ae8 @data=#<ActionView::Resolver::Cache::SmallCache:0x00000007619ac0 @backend={#<ActionView::LookupContext::DetailsKey:0x0000000cc4bc90 @hash=2557853868515825184>=>#<ActionView::Resolver::Cache::SmallCache:0x0000000cc4a4d0 @backend={"resource_list"=>#<ActionView::Resolver::Cache::SmallCache:0x0000000cc4a368 @backend={"katello/api/v2/root"=>#<ActionView::Resolver::Cache::SmallCache:0x0000000cc4a098 @backend={false=>#<ActionView::Resolver::Cache::SmallCache:0x0000000cc49fa8 @backend={["object_name", "root_name"]=>[]}, @default_proc=nil>}, @default_proc=#<Proc:0x00000003813078@/opt/rh/rh-ror41/root/usr/share/gems/gems/actionview-4.1.5/lib/action_view/template/resolver.rb:45 (lambda)>>}, @default_proc=#<Proc:0x00000003813050@/opt/rh/rh-ror41/root/usr/share/gems/gems/actionview-4.1.5/lib/action_view/template/resolver.rb:46 (lambda)>>, "collection"=>#<ActionView::Resolver::Cache::SmallCache:0x0000000cc5ccc0 @backend={"katello/api/v2/layouts"=>#<ActionView::Resolver::Cache::SmallCache:0x0000000cc5cba8 @backend={false=>#<ActionView::Resolver::Cache::SmallCache:0x0000000cc5cab8 @backend={["object_name", "root_name"]=>[]}, @default_proc=nil>}, @default_proc=#<Proc:0x00000003813078@/opt/rh/rh-ror41/root/usr/share/gems/gems/actionview-4.1.5/lib/action_view/template/resolver.rb:45 (lambda)>>}, @default_proc=#<Proc:0x00000003813050@/opt/rh/rh-ror41/root/usr/share/gems/gems/actionview-4.1.5/lib/action_view/template/resolver.rb:46 (lambda)>>, "index"=>#<ActionView::Resolver::Cache::SmallCache:0x0000000d3244e0 @backend={"katello/api/v2/products"=>#<ActionView::Resolver::Cache::SmallCache:0x0000000d3242b0 @backend={false=>#<ActionView::Resolver::Cache::SmallCache:0x0000000d324120 @backend={["object_name", "root_name"]=>[]}, @default_proc=nil>}, @default_proc=#<Proc:0x00000003813078@/opt/rh/rh-ror41/root/usr/share/gems/gems/actionview-4.1.5/lib/action_view/template/resolver.rb:45 (lambda)>>, "api/v2/taxonomies"=>#<ActionView::Resolver::Cache::SmallCache:0x007f2f0cc70028 @backend={false=>#<ActionView::Resolver::Cache::SmallCache:0x007f2f0cc5fd18 @backend={[]=>[app/views/api/v2/taxonomies/index.json.rabl]}, @default_proc=nil>}, @default_proc=#<Proc:0x00000003813078@/opt/rh/rh-ror41/root/usr/share/gems/gems/actionview-4.1.5/lib/action_view/template/resolver.rb:45 (lambda)>>, "katello/api/v2/content_view_versions"=>#<ActionView::Resolver::Cache::SmallCache:0x007f2f12e228e8 @backend={false=>#<ActionView::Resolver::Cache::SmallCache:0x007f2f12e227f8 @backend={["object_name", "root_name"]=>[]}, @default_proc=nil>}, @default_proc=#<Proc:0x00000003813078@/opt/rh/rh-ror41/root/usr/share/gems/gems/actionview-4.1.5/lib/action_view/template/resolver.rb:45 (lambda)>>, "katello/api/v2/content_views"=>#<ActionView::Resolver::Cache::SmallCache:0x007f2f106ff6d0 @backend={false=>#<ActionView::Resolver::Cache::SmallCache:0x007f2f106ff590 @backend={["object_name", "root_name"]=>[]}, @default_proc=nil>}, @default_proc=#<Proc:0x00000003813078@/opt/rh/rh-ror41/root/usr/share/gems/gems/actionview-4.1.5/lib/action_view/template/resolver.rb:45 (lambda)>>, "katello/api/v2/repositories"=>#<ActionView::Resolver::Cache::SmallCache:0x007f2f0feb9ed0 @backend={false=>#<ActionView::Resolver::Cache::SmallCache:0x007f2f0feb9de0 @backend={["object_name", "root_name"]=>[]}, @default_proc=nil>}, @default_proc=#<Proc:0x00000003813078@/opt/rh/rh-ror41/root/usr/share/gems/gems/actionview-4.1.5/lib/action_view/template/resolver.rb:45 (lambda)>>, "api/v2/operatingsystems"=>#<ActionView::Resolver::Cache::SmallCache:0x0000000b789ed8 @backend={false=>#<ActionView::Resolver::Cache::SmallCache:0x0000000b789d48 @backend={[]=>[app/views/api/v2/operatingsystems/index.json.rabl]}, @default_proc=nil>}, @default_proc=#<Proc:0x00000003813078@/opt/rh/rh-ror41/root/usr/share/gems/gems/actionview-4.1.5/lib/action_view/template/resolver.rb:45 (lambda)>>, "katello/api/v2/environments"=>#<ActionView::Resolver::Cache::SmallCache:0x007f2f101a6da0 @backend={false=>#<ActionView::Resolver::Cache::SmallCache:0x007f2f101a6cb0 @backend={["object_name", "root_name"]=>[]}, @default_proc=nil>}, @default_proc=#<Proc:0x00000003813078@/opt/rh/rh-ror41/root/usr/share/gems/gems/actionview-4.1.5/lib/action_view/template/resolver.rb:45 (lambda)>>, "katello/api/v2/common"=>#<ActionView::Resolver::Cache::SmallCache:0x007f2f12690c10 @backend={false=>#<ActionView::Resolver::Cache::SmallCache:0x007f2f12690b20 @backend={[]=>[]}, @default_proc=nil>}, @default_proc=#<Proc:0x00000003813078@/opt/rh/rh-ror41/root/usr/share/gems/gems/actionview-4.1.5/lib/action_view/template/resolver.rb:45 (lambda)>>, "api/v2/hostgroups"=>#<ActionView::Resolver::Cache::SmallCache:0x0000001082c2c8 @backend={false=>#<ActionView::Resolver::Cache::SmallCache:0x0000001082c1b0 @backend={[]=>[app/views/api/v2/hostgroups/index.json.rabl]}, @default_proc=nil>}, @default_proc=#<Proc:0x00000003813078@/opt/rh/rh-ror41/root/usr/share/gems/gems/actionview-4.1.5/lib/action_view/template/resolver.rb:45 (lambda)>>, "api/v2/domains"=>#<ActionView::Resolver::Cache::SmallCache:0x0000000ff1f6d0 @backend={false=>#<ActionView::Resolver::Cache::SmallCache:0x0000000ff1f4a0 @backend={[]=>[app/views/api/v2/domains/index.json.rabl]}, @default_proc=nil>}, @default_proc=#<Proc:0x00000003813078@/opt/rh/rh-ror41/root/usr/share/gems/gems/actionview-4.1.5/lib/action_view/template/resolver.rb:45 (lambda)>>, "api/v2/subnets"=>#<ActionView::Resolver::Cache::SmallCache:0x0000000f84e1a8 @backend={false=>#<ActionView::Resolver::Cache::SmallCache:0x0000000f84e0b8 @backend={[]=>[app/views/api/v2/subnets/index.json.rabl]}, @default_proc=nil>}, @default_proc=#<Proc:0x00000003813078@/opt/rh/rh-ror41/roo


Version-Release number of selected component (if applicable):


How reproducible:


Steps to Reproduce:
1. Make sure an internal error in template rendering, e.g. a nil access
2. Preview hosts provisioning template
3.

Actual results:
Backtrace of 350KB generated for untattend controller

Expected results:
No additional backtrace generated 

Additional info:

Comment 2 Peter Vreman 2017-05-10 16:21:38 UTC
Closing. Unable to reproduce. Recently i have had many issues with the template rendering including the path nilClass in medium_uri() call above. None of them has generated long backtraces anymore.

Comment 3 Marek Hulan 2017-05-15 12:26:47 UTC
Thanks Peter for letting us know. There were some improvements recently added in upstream in this area too, so it might have been fixed by http://projects.theforeman.org/issues/18345/ (screenshot that might look familiar is in the fixing PRhttps://github.com/theforeman/foreman/pull/4247)