Bug #30081
closedTypeError - Value (ActiveSupport::TimeWithZone) 'yyyy-mm-dd hh:mm:ss +0000' is not any of: (Time | NilClass)" error when triggering ansible job
Description
Description of problem:
When setting high concurrency level, such as 250+ and disabling the batch triggering, Ansible RunHostJob may get the following error:
---------------------------------------
1: Initialization error: RestClient::Exceptions::ReadTimeout - Timed out reading data from server
2: Failed to initialize: TypeError - Value (ActiveSupport::TimeWithZone) 'yyyy-mm-dd hh:mm:ss +0000' is not any of: (Time | NilClass).
----------------------------------------
This is caused by the connection timeout to the smart proxy dynflow core and then Dynflow was trying to retry the connection but failed with the above TypeError.
Steps to Reproduce:
1. Disable batch triggering
2. Run ansible jobs against 250 hosts or more without setting a concurrency level.
Additional info:
Stacktrace:
--
- "/opt/theforeman/tfm/root/usr/share/gems/gems/algebrick-0.7.3/lib/algebrick/type_check.rb:54:in
`error'"
- "/opt/theforeman/tfm/root/usr/share/gems/gems/algebrick-0.7.3/lib/algebrick/type_check.rb:26:in
`Type!'"
- "/opt/theforeman/tfm/root/usr/share/gems/gems/algebrick-0.7.3/lib/algebrick/product_constructors/abstract.rb:26:in
`block in initialize'"
- "/opt/theforeman/tfm/root/usr/share/gems/gems/algebrick-0.7.3/lib/algebrick/product_constructors/abstract.rb:26:in
`map'"
- "/opt/theforeman/tfm/root/usr/share/gems/gems/algebrick-0.7.3/lib/algebrick/product_constructors/abstract.rb:26:in
`initialize'"
- "/opt/theforeman/tfm/root/usr/share/gems/gems/algebrick-0.7.3/lib/algebrick/product_variant.rb:90:in
`new'"
- "/opt/theforeman/tfm/root/usr/share/gems/gems/algebrick-0.7.3/lib/algebrick/product_variant.rb:90:in
`new'"
- "/opt/theforeman/tfm/root/usr/share/gems/gems/dynflow-1.4.1/lib/dynflow/world.rb:227:in
`plan_event'"
- "/opt/theforeman/tfm/root/usr/share/gems/gems/dynflow-1.4.1/lib/dynflow/action/suspended.rb:13:in
`plan_event'"
- "/opt/theforeman/tfm/root/usr/share/gems/gems/dynflow-1.4.1/lib/dynflow/clock.rb:121:in
`ping'"
- "/opt/theforeman/tfm/root/usr/share/gems/gems/foreman-tasks-0.17.5.2/app/lib/actions/proxy_action.rb:240:in
`block in handle_connection_exception'"
- "/opt/theforeman/tfm/root/usr/share/gems/gems/dynflow-1.4.1/lib/dynflow/action.rb:460:in
`suspend'"
- "/opt/theforeman/tfm/root/usr/share/gems/gems/foreman-tasks-0.17.5.2/app/lib/actions/proxy_action.rb:239:in
`handle_connection_exception'"
- "/opt/theforeman/tfm/root/usr/share/gems/gems/foreman-tasks-0.17.5.2/app/lib/actions/proxy_action.rb:223:in
`rescue in with_connection_error_handling'"
- "/opt/theforeman/tfm/root/usr/share/gems/gems/foreman-tasks-0.17.5.2/app/lib/actions/proxy_action.rb:217:in
`with_connection_error_handling'"
- "/opt/theforeman/tfm/root/usr/share/gems/gems/foreman-tasks-0.17.5.2/app/lib/actions/proxy_action.rb:41:in
`run'"
- "/opt/theforeman/tfm/root/usr/share/gems/gems/dynflow-1.4.1/lib/dynflow/action.rb:563:in
`block (3 levels) in execute_run'"
- "/opt/theforeman/tfm/root/usr/share/gems/gems/dynflow-1.4.1/lib/dynflow/middleware/stack.rb:27:in
`pass'"
- "/opt/theforeman/tfm/root/usr/share/gems/gems/dynflow-1.4.1/lib/dynflow/middleware.rb:19:in
`pass'"
- "/opt/theforeman/tfm/root/usr/share/gems/gems/dynflow-1.4.1/lib/dynflow/middleware.rb:32:in
`run'"
- "/opt/theforeman/tfm/root/usr/share/gems/gems/dynflow-1.4.1/lib/dynflow/middleware/stack.rb:23:in
`call'"
- "/opt/theforeman/tfm/root/usr/share/gems/gems/dynflow-1.4.1/lib/dynflow/middleware/stack.rb:27:in
`pass'"
- "/opt/theforeman/tfm/root/usr/share/gems/gems/dynflow-1.4.1/lib/dynflow/middleware.rb:19:in
`pass'"
- "/opt/theforeman/tfm/root/usr/share/gems/gems/foreman-tasks-0.17.5.2/app/lib/actions/middleware/rails_executor_wrap.rb:14:in
`block in run'"
Updated by The Foreman Bot over 4 years ago
- Status changed from New to Ready For Testing
- Assignee set to Hao Yu
- Pull request https://github.com/theforeman/foreman-tasks/pull/556 added
Updated by The Foreman Bot over 4 years ago
- Fixed in Releases foreman-tasks-2.0.2 added
Updated by Hao Yu over 4 years ago
- Status changed from Ready For Testing to Closed
Applied in changeset 34a861207d8d92957e60f4fc2486027731cbe50a.
Updated by малъ скрылевъ almost 4 years ago
This is the fix.