Bug #35990
closedParameter 'search' on fact_value API endpoint results in internal server error
Description
Cloned from https://bugzilla.redhat.com/show_bug.cgi?id=2162736
Description of problem:
Searching for facts using CLI ends with error 500.
Version-Release number of selected component (if applicable):
Satellite 6.13 SNAP 6.0
How reproducible:
always
Steps to Reproduce:
1. hammer fact list --search="ipaddress"
Actual results:
Internal Server Error: the server was unable to finish the request. This may be caused by unavailability of some required service, incorrect API call or a server-side bug. There may be more information in the server's logs.
Expected results:
List of facts containing search phrase
Additional info:
production.log contains a note about missing attribute: fact_name_id
2023-01-20T11:58:45 [I|app|7c831d64] Started GET "/api/fact_values?search=ipaddress&page=1&per_page=1000" for 10.1.2.100 at 2023-01-20 11:58:45 -0500 2023-01-20T11:58:45 [I|app|7c831d64] Processing by Api::V2::FactValuesController#index as JSON 2023-01-20T11:58:45 [I|app|7c831d64] Parameters: {"search"=>"ipaddress", "page"=>"1", "per_page"=>"1000", "apiv"=>"v2", "fact_value"=>{}} 2023-01-20T11:58:45 [I|app|7c831d64] Authorized user admin(Admin User) 2023-01-20T11:58:45 [W|app|7c831d64] Action failed 2023-01-20T11:58:45 [I|app|7c831d64] Backtrace for 'Action failed' error (ActiveModel::MissingAttributeError): missing attribute: fact_name_id 7c831d64 | /usr/share/gems/gems/activemodel-6.1.7/lib/active_model/attribute.rb:222:in `value' 7c831d64 | /usr/share/gems/gems/activemodel-6.1.7/lib/active_model/attribute_set/builder.rb:55:in `block in fetch_value' --- shrinked --- 7c831d64 | /usr/share/gems/gems/puma-5.6.5/lib/puma/server.rb:443:in `process_client' 7c831d64 | /usr/share/gems/gems/puma-5.6.5/lib/puma/thread_pool.rb:147:in `block in spawn_thread' 7c831d64 | /usr/share/gems/gems/logging-2.3.1/lib/logging/diagnostic_context.rb:474:in `block in create_with_logging_context' 2023-01-20T11:58:45 [I|app|7c831d64] Rendered api/v2/errors/custom_error.json.rabl within api/v2/layouts/error_layout (Duration: 1.2ms | Allocations: 318) 2023-01-20T11:58:45 [I|app|7c831d64] Rendered layout api/v2/layouts/error_layout.json.erb (Duration: 1.9ms | Allocations: 534) 2023-01-20T11:58:45 [I|app|7c831d64] Completed 500 Internal Server Error in 192ms (Views: 3.6ms | ActiveRecord: 16.8ms | Allocations: 12880)
Searching facts using WebUI works correctly.
Same command worked correctly in Satellite 6.12.