yahoo-eng-team team mailing list archive
-
yahoo-eng-team team
-
Mailing list archive
-
Message #39073
[Bug 1486861] Re: get_extensions_path fail to remove duplicate path when the path gets appended with a another path
** Changed in: neutron
Status: Fix Committed => Fix Released
** Changed in: neutron
Milestone: None => liberty-rc1
--
You received this bug notification because you are a member of Yahoo!
Engineering Team, which is subscribed to neutron.
https://bugs.launchpad.net/bugs/1486861
Title:
get_extensions_path fail to remove duplicate path when the path gets
appended with a another path
Status in neutron:
Fix Released
Bug description:
get_extensions_path contains logic to eliminate duplicated paths.
However, in the case where the 'api_extensions_path' of config
contains multiple concatenated paths, it treats the concatenated list
as one extension path.
This could be a problem for Neutron services, specifically fwaas,
lbaas and vpnaas. For these, their extension paths are automatically
added in get_extensions_paths. If fwaas extension path is also
specified in CONF.api_extensions_path', for example, and if that path
is appended with a different extension path, the duplicated fwaas
extension paths are not recognized as duplicate.
In an offending case, you would have:
paths = ['fw_ext_path', 'fw_ext_path:some_other_path']
and since 'fw_ext_path' != 'fw_ext_path:some_other_path', both
'fw_ext_path' remains, which causes error later on when Firewall
object's 'super' is called since the module containing the Firewall
class definition of Firewall was loaded twice (python doesn't like
this).
In the above scenario, the paths should have been evaluated as:
paths = ['fw_ext_path', 'fw_ext_path', 'some_other_path']
To manage notifications about this bug go to:
https://bugs.launchpad.net/neutron/+bug/1486861/+subscriptions
References