Created attachment 1231231 [details]
Description of problem:
Version-Release number of selected component (if applicable):
Steps to Reproduce:
1.Go to Settings -> Configuration -> Diagnostics -> CFME Region
2.Select Roles by Servers or Servers by Roles
3. Select a role and suspend it by clicking on configuration -> suspend in toolbar
Error in production.log added in attachment
It looks like ops_controller/diagnostics.rb is calling MiqServer.find with 0 as an argument:
@selected_server = kls.find(from_cid(x_node.split("-").last))
New commit detected on ManageIQ/manageiq/master:
Author: Harpreet Kataria <email@example.com>
AuthorDate: Sun Dec 18 14:29:33 2016 -0500
Commit: Harpreet Kataria <firstname.lastname@example.org>
CommitDate: Sun Dec 18 14:36:07 2016 -0500
Fixed code that sets selected_server record to be used by view.
Use existing parent record to set @selected_server variable that should point to the record selected in the diagnostics tree on the left.
app/controllers/ops_controller/diagnostics.rb | 3 +-
.../controllers/ops_controller/diagnostics_spec.rb | 34 ++++++++++++++++++++++
2 files changed, 35 insertions(+), 2 deletions(-)
Verified in 220.127.116.11. Active roles can be suspended without any errors.