Merge "[DHCP] Break reference chain to any Exception object when resync"
This commit is contained in:
commit
ca9b8ec0be
@ -237,7 +237,7 @@ class DhcpAgent(manager.Manager):
|
||||
# allocation failure. When the subnet is updated with a new
|
||||
# allocation pool or a port is deleted to free up an IP, this
|
||||
# will automatically be retried on the notification
|
||||
self.schedule_resync(e, network.id)
|
||||
self.schedule_resync(str(e), network.id)
|
||||
if (isinstance(e, oslo_messaging.RemoteError) and
|
||||
e.exc_type == 'NetworkNotFound' or
|
||||
isinstance(e, exceptions.NetworkNotFound)):
|
||||
@ -362,7 +362,7 @@ class DhcpAgent(manager.Manager):
|
||||
net = "*"
|
||||
LOG.debug("resync (%(network)s): %(reason)s",
|
||||
{"reason": r, "network": net})
|
||||
self.sync_state(reasons.keys())
|
||||
self.sync_state(list(reasons.keys()))
|
||||
|
||||
def periodic_resync(self):
|
||||
"""Spawn a thread to periodically resync the dhcp state."""
|
||||
|
@ -672,7 +672,7 @@ class TestDhcpAgent(base.BaseTestCase):
|
||||
sync_state.side_effect = RuntimeError
|
||||
with testtools.ExpectedException(RuntimeError):
|
||||
dhcp._periodic_resync_helper()
|
||||
sync_state.assert_called_once_with(resync_reasons.keys())
|
||||
sync_state.assert_called_once_with(list(resync_reasons.keys()))
|
||||
self.assertEqual(0, len(dhcp.needs_resync_reasons))
|
||||
|
||||
def test_periodic_resync_helper_with_event(self):
|
||||
@ -680,7 +680,7 @@ class TestDhcpAgent(base.BaseTestCase):
|
||||
dhcp = dhcp_agent.DhcpAgent(HOSTNAME)
|
||||
dhcp.schedule_resync('reason1', 'a')
|
||||
dhcp.schedule_resync('reason1', 'b')
|
||||
reasons = dhcp.needs_resync_reasons.keys()
|
||||
reasons = list(dhcp.needs_resync_reasons.keys())
|
||||
with mock.patch.object(dhcp, 'sync_state') as sync_state:
|
||||
sync_state.side_effect = RuntimeError
|
||||
with testtools.ExpectedException(RuntimeError):
|
||||
|
Loading…
Reference in New Issue
Block a user