def rpc_loop(self, polling_manager=None): if not polling_manager: polling_manager = polling.get_polling_manager( minimize_polling=False) while self.run_daemon_loop: start = time.time() port_stats = {'regular': {'added': 0, 'updated': 0, 'removed': 0}} if self.fullsync: LOG.info(_LI("Agent out of sync with plugin!")) connected_ports = self._get_dvs_ports() self.added_ports = connected_ports - self.known_ports if cfg.CONF.DVS.clean_on_restart: self._clean_up_vsphere_extra_resources(connected_ports) self.fullsync = False polling_manager.force_polling() if self._agent_has_updates(polling_manager): LOG.debug("Agent rpc_loop - update") self.process_ports() port_stats['regular']['added'] = len(self.added_ports) port_stats['regular']['updated'] = len(self.updated_ports) port_stats['regular']['removed'] = len(self.deleted_ports) polling_manager.polling_completed() self.loop_count_and_wait(start)
def test_manage_polling_minimizer(self): mock_target = 'neutron.agent.common.polling.InterfacePollingMinimizer' with mock.patch('%s.start' % mock_target) as mock_start: with mock.patch('%s.stop' % mock_target) as mock_stop: with polling.get_polling_manager(minimize_polling=True) as pm: self.assertEqual(pm.__class__, polling.InterfacePollingMinimizer) mock_stop.assert_has_calls([mock.call()]) mock_start.assert_has_calls([mock.call()])
def daemon_loop(self): with polling.get_polling_manager( self.minimize_polling, self.ovsdb_monitor_respawn_interval) as pm: self.rpc_loop(polling_manager=pm)
def test_return_always_poll_by_default(self): with polling.get_polling_manager() as pm: self.assertEqual(pm.__class__, base_polling.AlwaysPoll)
def daemon_loop(self): with polling.get_polling_manager() as pm: self.rpc_loop(polling_manager=pm)