Comment 11 for bug 1698355

Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix merged to oslo.serialization (stable/ocata)

Reviewed: https://review.openstack.org/500781
Committed: https://git.openstack.org/cgit/openstack/oslo.serialization/commit/?id=be828c35d84f8f10b07f11aa8bbf195a44e730f8
Submitter: Jenkins
Branch: stable/ocata

commit be828c35d84f8f10b07f11aa8bbf195a44e730f8
Author: Ihar Hrachyshka <email address hidden>
Date: Fri Jun 16 11:43:21 2017 -0700

    Don't iterate through addresses in netaddr.IPNetwork

    Currently, to_primitive tries to iterate through all addresses in the
    network, because the type doesn't have a special handling that would
    short curcuit it, but also has __iter__. This may be detrimental to
    performance, up to the point of node crash due to memory exhaustion if
    the passed network range is too large (think of 0.0.0.0/0 or even
    2001::/64). This behavior also makes it impossible to restore the
    original data format (CIDR).

    This patch short curcuits the iteration by handling the IPNetwork type
    as a special case, same as we do for IPAddress.

    Change-Id: I6aecd2d057d282a655ff9e4918c164253142b188
    Closes-Bug: #1698355
    (cherry picked from commit 38ac21b523f23f802557d94b527821bc84deaa16)