This bug is very old and the code has changed significantly since this
was filed. If this is still valid in Icehouse or later please reopen.

** Changed in: nova
       Status: Confirmed => Invalid

-- 
You received this bug notification because you are a member of Yahoo!
Engineering Team, which is subscribed to OpenStack Compute (nova).
https://bugs.launchpad.net/bugs/1153751

Title:
  invoking nova/utils.py's "execute" with check_exit_code=False causes
  problem in nova-network

Status in OpenStack Compute (Nova):
  Invalid

Bug description:
  version: essex

  In nova/network/linux_net.py, there are six invocations of
  nova/utils.py's "execute" function with "check_exit_code=False." Our
  experiences show that this pattern is problematic. Specifically, the
  process executing a given command may exit unexpectedly.

  All examples below are related to nova/network/linux_net.py.

  Example 1:
  In function "ensure_bridge" of class "LinuxBridgeInterfaceDriver," a command 
"brctl addif" is executed without checking the exit code. The parent process 
calling "_execute" cannot know whether the execution of "brctl addif" succeeds. 
This can cause a bridge and a NIC to remain dissociated. 

  Example 2:
  In function "_device_exists," if the execution of "ip link show dev [device]" 
fails unexpectedly, then neither stdout nor stderr contains any data. According 
to the logic in "_device_exists," such a fault would lead the caller of 
"_device_exists" to think that the device in question exists, which may not be 
the case.

  Example 3:
  In function "restart_dhcp," if the execution of "cat /proc/[pid]/cmdline" 
fails unexpectedly, then there may be no data in the stdout, which in turn will 
cause the caller to believe that a dnsmasq instance has crashed and a new 
instance should be started, while in fact the existing dnsmasq instance works 
properly. 

  The rest occurrences of "check_exit_code=False" raises similar issues.

To manage notifications about this bug go to:
https://bugs.launchpad.net/nova/+bug/1153751/+subscriptions

-- 
Mailing list: https://launchpad.net/~yahoo-eng-team
Post to     : [email protected]
Unsubscribe : https://launchpad.net/~yahoo-eng-team
More help   : https://help.launchpad.net/ListHelp

Reply via email to