Skip to content

Commit

Permalink
Merge pull request #20827 from jrafanie/jansa_cockpit_is_not_a_pod_wo…
Browse files Browse the repository at this point in the history
…rker

[JANSA] Cockpit is a monitor thread and is not a pod worker. #20823 jansa backport
  • Loading branch information
simaishi authored Nov 19, 2020
2 parents c5c179f + 510f422 commit 8629c33
Show file tree
Hide file tree
Showing 2 changed files with 9 additions and 1 deletion.
4 changes: 3 additions & 1 deletion app/models/miq_server/worker_management/monitor.rb
Original file line number Diff line number Diff line change
Expand Up @@ -78,7 +78,9 @@ def cleanup_orphaned_worker_rows
# Hack for schema-less backport(no new system_uid column):
# reuse existing guid column to store/retrieve the system_uid, pod name in pods.
# https://github.com/ManageIQ/manageiq/pull/20792
orphaned_rows = miq_workers.where.not(:guid => current_pods.keys)
#
# Cockpit is a threaded worker in the orchestrator that spins off a process it monitors and isn't a pod worker.
orphaned_rows = miq_workers.where.not(:type => %w[MiqCockpitWsWorker]).where.not(:guid => current_pods.keys)
unless orphaned_rows.empty?
_log.warn("Removing orphaned worker rows without corresponding pods: #{orphaned_rows.collect(&:guid).inspect}")
orphaned_rows.destroy_all
Expand Down
6 changes: 6 additions & 0 deletions spec/models/miq_server/worker_management/monitor_spec.rb
Original file line number Diff line number Diff line change
Expand Up @@ -78,6 +78,12 @@
server.cleanup_orphaned_worker_rows
expect(MiqWorker.count).to eq(2)
end

it "skips MiqCockpitWsWorker rows" do
worker.update(:guid => "an_actual_guid", :type => "MiqCockpitWsWorker")
server.cleanup_orphaned_worker_rows
expect(MiqCockpitWsWorker.count).to eq(1)
end
end
end

Expand Down

0 comments on commit 8629c33

Please sign in to comment.