I was wondering if it’s possible to have a service dialog element set to refresh multiple elements in the service dialog. It seems like I can have one element refresh a different single element, but as soon as I try to update multiple elements (who are set to auto-refresh) I start receiving the error:
[----] E, [2016-04-27T10:57:28.517907 #2952:10048ac] ERROR -- : Method STDERR: The following error occurred during inline method preamble evaluation:
[----] E, [2016-04-27T10:57:28.518073 #2952:10048ac] ERROR -- : Method STDERR: DRb::DRbConnError: druby://127.0.0.1:35852 - #<Errno::ECONNREFUSED: Connection refused - connect(2) for "127.0.0.1" port 35852>
[----] E, [2016-04-27T10:57:28.518211 #2952:10048ac] ERROR -- : Method STDERR: /opt/rubies/ruby-2.2.4/lib/ruby/2.2.0/drb/drb.rb:744:in `rescue in block in open'
[----] E, [2016-04-27T10:57:28.518533 #2952:10048ac] ERROR -- : Method STDERR: /opt/rubies/ruby-2.2.4/lib/ruby/2.2.0/drb/drb.rb:738:in `block in open'
[----] E, [2016-04-27T10:57:28.520348 #2952:10048ac] ERROR -- : Method STDERR: /opt/rubies/ruby-2.2.4/lib/ruby/2.2.0/drb/drb.rb:737:in `each'
[----] E, [2016-04-27T10:57:28.520549 #2952:10048ac] ERROR -- : Method STDERR: /opt/rubies/ruby-2.2.4/lib/ruby/2.2.0/drb/drb.rb:737:in `open'
[----] E, [2016-04-27T10:57:28.520771 #2952:10048ac] ERROR -- : Method STDERR: /opt/rubies/ruby-2.2.4/lib/ruby/2.2.0/drb/drb.rb:1248:in `initialize'
[----] E, [2016-04-27T10:57:28.520904 #2952:10048ac] ERROR -- : Method STDERR: /opt/rubies/ruby-2.2.4/lib/ruby/2.2.0/drb/drb.rb:1228:in `new'
[----] E, [2016-04-27T10:57:28.521006 #2952:10048ac] ERROR -- : Method STDERR: /opt/rubies/ruby-2.2.4/lib/ruby/2.2.0/drb/drb.rb:1228:in `open'
[----] E, [2016-04-27T10:57:28.521106 #2952:10048ac] ERROR -- : Method STDERR: /opt/rubies/ruby-2.2.4/lib/ruby/2.2.0/drb/drb.rb:1141:in `block in method_missing'
[----] E, [2016-04-27T10:57:28.521213 #2952:10048ac] ERROR -- : Method STDERR: /opt/rubies/ruby-2.2.4/lib/ruby/2.2.0/drb/drb.rb:1160:in `with_friend'
[----] E, [2016-04-27T10:57:28.521317 #2952:10048ac] ERROR -- : Method STDERR: /opt/rubies/ruby-2.2.4/lib/ruby/2.2.0/drb/drb.rb:1140:in `method_missing'
[----] E, [2016-04-27T10:57:28.521412 #2952:10048ac] ERROR -- : Method STDERR: -:31:in `<main>'
[----] E, [2016-04-27T10:57:28.521518 #2952:10048ac] ERROR -- : Method STDERR: /opt/rubies/ruby-2.2.4/lib/ruby/2.2.0/drb/drb.rb:744:in `rescue in block in open': druby://127.0.0.1:35852 - #<Errno::ECONNREFUSED: Connection refused - connect(2) for "127.0.0.1" port 35852> (DRb::DRbConnError)
[----] E, [2016-04-27T10:57:28.521620 #2952:10048ac] ERROR -- : Method STDERR: from /opt/rubies/ruby-2.2.4/lib/ruby/2.2.0/drb/drb.rb:738:in `block in open'
[----] E, [2016-04-27T10:57:28.521797 #2952:10048ac] ERROR -- : Method STDERR: from /opt/rubies/ruby-2.2.4/lib/ruby/2.2.0/drb/drb.rb:737:in `each'
[----] E, [2016-04-27T10:57:28.521904 #2952:10048ac] ERROR -- : Method STDERR: from /opt/rubies/ruby-2.2.4/lib/ruby/2.2.0/drb/drb.rb:737:in `open'
[----] E, [2016-04-27T10:57:28.522010 #2952:10048ac] ERROR -- : Method STDERR: from /opt/rubies/ruby-2.2.4/lib/ruby/2.2.0/drb/drb.rb:1248:in `initialize'
[----] E, [2016-04-27T10:57:28.522112 #2952:10048ac] ERROR -- : Method STDERR: from /opt/rubies/ruby-2.2.4/lib/ruby/2.2.0/drb/drb.rb:1228:in `new'
[----] E, [2016-04-27T10:57:28.522212 #2952:10048ac] ERROR -- : Method STDERR: from /opt/rubies/ruby-2.2.4/lib/ruby/2.2.0/drb/drb.rb:1228:in `open'
[----] E, [2016-04-27T10:57:28.522314 #2952:10048ac] ERROR -- : Method STDERR: from /opt/rubies/ruby-2.2.4/lib/ruby/2.2.0/drb/drb.rb:1141:in `block in method_missing'
[----] E, [2016-04-27T10:57:28.522416 #2952:10048ac] ERROR -- : Method STDERR: from /opt/rubies/ruby-2.2.4/lib/ruby/2.2.0/drb/drb.rb:1160:in `with_friend'
[----] E, [2016-04-27T10:57:28.522516 #2952:10048ac] ERROR -- : Method STDERR: from /opt/rubies/ruby-2.2.4/lib/ruby/2.2.0/drb/drb.rb:1140:in `method_missing'
[----] E, [2016-04-27T10:57:28.522616 #2952:10048ac] ERROR -- : Method STDERR: from -:31:in `<main>'
[----] I, [2016-04-27T10:57:28.523360 #2952:10e2b84] INFO -- : <AEMethod [/Seagate/Dialogs/Methods/selected_user]> Ending
[----] E, [2016-04-27T10:57:28.523620 #2952:10e2b84] ERROR -- : Aborting instantiation (unknown method return code) because [Method exited with rc=Unknown RC: [1]]
I’ll also see that it calls the instances associated with the dialog element multiple times. I’m currently testing build master.20160426130611_0e9dc42
For a little background I’ve been working on creating a service dialog where a user will select an OpenStack tenant from a drop down list and it will then refresh other fields in the service dialog. These fields will read the value of $evm.root['dialog_cloud_tenant']
and then update their info. For example, one field is a dropdown box that displays the networks available in the OpenStack tenant. I’ll build the dropdown list values like this:
$evm.vmdb('CloudTenant').find(cloud_tenant_id)
.
.
.
cloud_tenant.cloud_networks.each do |network|
networks[network.id] = network.name
end
Updating a single element like this will usually work but as soon as I try to update two it will start breaking. It can be intermittent as well.
A while ago I opened https://github.com/ManageIQ/manageiq/issues/7272 because the dropdown list selections weren’t refreshing other elements at all. As of a couple of weeks ago they started working but maybe work is ongoing on this issue.
Thanks.