[
https://issues.apache.org/jira/browse/CLOUDSTACK-7193?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14100689#comment-14100689
]
ASF subversion and git services commented on CLOUDSTACK-7193:
-------------------------------------------------------------
Commit 53650ed7bfaeeeaca3218cbf26601162c13f48b9 in cloudstack's branch
refs/heads/master from [~vbernat]
[ https://git-wip-us.apache.org/repos/asf?p=cloudstack.git;h=53650ed ]
CLOUDSTACK-7193: handle domain ID being an int
Recent versions of libvirt (at least 0.9.8) will return an int when
queried for the ID of a domain, not a string. This breaks some parts of
the `security_group.py` script which expects a string containing an
int. Notably, this breaks the part handling VM reboots which is
therefore not executed.
Signed-off-by: Vincent Bernat <[email protected]>
Signed-off-by: Sebastien Goasguen <[email protected]>
> Rebooting a VM doesn't update iptables rules
> --------------------------------------------
>
> Key: CLOUDSTACK-7193
> URL: https://issues.apache.org/jira/browse/CLOUDSTACK-7193
> Project: CloudStack
> Issue Type: Bug
> Security Level: Public(Anyone can view this level - this is the
> default.)
> Components: KVM
> Affects Versions: 4.3.0
> Environment: Ubuntu Lucid 12.04 and more recent
> Reporter: Vincent Bernat
>
> Hi!
> Rebooting a VM doesn't update the iptables rules despite the change on the
> interface name. To reproduce:
> 1. Starts two VM
> 2. Stop the first one.
> 3. Reboot the second one. It will use the vnet device of the first one.
> 4. Checks that the iptables rules for the second one are still referencing
> the old interface.
> The defect seems to be in security_group.py. The periodic
> "get_rule_logs_for_vm" which also handles rebooted VM fails because of the
> following traceback:
> {code}
> 2014-07-28 15:15:19,035 - 'int' object has no attribute 'isdigit'
> Traceback (most recent call last):
> File "/usr/share/cloudstack-common/scripts/vm/network/security_group.py",
> line 705, in get_rule_logs_for_vms
> network_rules_for_rebooted_vm(name)
> File "/usr/share/cloudstack-common/scripts/vm/network/security_group.py",
> line 637, in network_rules_for_rebooted_vm
> [curr_domid, old_domid] = check_domid_changed(vm_name)
> File "/usr/share/cloudstack-common/scripts/vm/network/security_group.py",
> line 619, in check_domid_changed
> if (curr_domid is None) or (not curr_domid.isdigit()):
> AttributeError: 'int' object has no attribute 'isdigit'
> {code}
> This exception is catched by some try...except.
> On Ubuntu Lucid 12.04, a domain ID is an integer. This is with libvirt 0.9.8.
> I also checked that this is still the case with libvirt 1.2.4.
--
This message was sent by Atlassian JIRA
(v6.2#6252)