Public bug reported: The 'NUMATopologyFilter' makes a call to 'numa_fit_instance_to_host' in order to determine whether an instance with a sample topology could fit on a given host. This function is provided with an InstanceNUMATopology object, which was extracted from the RequestSpec provided to the filter. However, the 'numa_fit_instance_to_host' call has the side effect of modifying a couple of fields on this InstanceNUMATopology object, notably the pinning information, which appears to be propagated to subsequent calls of the filter. The reason for this propagation is presumably Python's "call-by-object" model [1].
We should ensure the original RequestSpec is not modified, thus preventing possible issues in the future. [1] https://jeffknupp.com/blog/2012/11/13/is-python-callbyvalue-or- callbyreference-neither/ ** Affects: nova Importance: Undecided Assignee: Stephen Finucane (stephenfinucane) Status: In Progress -- 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/1655979 Title: NUMATopologyFilter modifies the provided RequestSpec Status in OpenStack Compute (nova): In Progress Bug description: The 'NUMATopologyFilter' makes a call to 'numa_fit_instance_to_host' in order to determine whether an instance with a sample topology could fit on a given host. This function is provided with an InstanceNUMATopology object, which was extracted from the RequestSpec provided to the filter. However, the 'numa_fit_instance_to_host' call has the side effect of modifying a couple of fields on this InstanceNUMATopology object, notably the pinning information, which appears to be propagated to subsequent calls of the filter. The reason for this propagation is presumably Python's "call-by-object" model [1]. We should ensure the original RequestSpec is not modified, thus preventing possible issues in the future. [1] https://jeffknupp.com/blog/2012/11/13/is-python-callbyvalue-or- callbyreference-neither/ To manage notifications about this bug go to: https://bugs.launchpad.net/nova/+bug/1655979/+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

