]> review.fuel-infra Code Review - openstack-build/neutron-build.git/commit
Replace loopingcall in notifier with a delayed send
authorCarl Baldwin <carl.baldwin@hp.com>
Wed, 2 Apr 2014 16:53:33 +0000 (16:53 +0000)
committerCarl Baldwin <carl.baldwin@hp.com>
Tue, 22 Apr 2014 16:22:02 +0000 (16:22 +0000)
commit3be1d7a75c5ec754825e99e0a8d95b4e1521ae4b
tree4a399779fc0a94af4268c4d46ea6f8fcede85e23
parent09e5726336e8824ed71466c91bae30737941efac
Replace loopingcall in notifier with a delayed send

The loopingcall thread here was started before processes fork and so
the thread stops working after the fork call.  This is a problem that
will probably need to be worked out in the long run.

To ensure that this notifier works correctly in all processes, this
change replaces the persistent loopingcall thread with a thread
created on demand to delay and batch up notifications.  The first
notification will trigger spawning the thread to wait to send it.  Any
notifications that come in the meantime will notice that there is
already a thread waiting to send and will return without spawning.

Change-Id: I519d4e89b8cee341c0e1cfffbce3e77151e8202a
Closes-Bug: #1301035
neutron/notifiers/nova.py
neutron/tests/unit/notifiers/test_notifiers_nova.py