From 3e2452ad6480e726fee8fdf2e3817ef09b0ba34d Mon Sep 17 00:00:00 2001 From: Alon Levy Date: Fri, 10 Apr 2015 18:13:36 +0200 Subject: server/rz_kernel: switch to 0.5 second polling.. until an actual select/eventfd based solution is implemented --- src/server/rz_kernel.py | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) (limited to 'src/server') diff --git a/src/server/rz_kernel.py b/src/server/rz_kernel.py index 1336fd70..2debd293 100644 --- a/src/server/rz_kernel.py +++ b/src/server/rz_kernel.py @@ -99,15 +99,17 @@ class RZ_Kernel(object): Handle periodic server tasks: - manage rzdoc subscriber lists """ - while False == self.should_stop: - + while True: for rzdoc, r_assoc_set in self.rzdoc_reader_assoc_map.items(): for r_assoc in r_assoc_set: if r_assoc.err_count__IO > 3: r_assoc_set.remove(r_assoc) log.info('rz_kernel: evicting reader: IO error count exceeded limit: remote-addr: %s, rzdoc: %s' % (r_assoc.remote_socket_addr, rzdoc.name)) - time.sleep(self.heartbeat_period_sec) + for i in xrange(self.heartbeat_period_sec * 2): + if False == self.should_stop: + return; + time.sleep(0.5) self.executor = ThreadPoolExecutor(max_workers=8) self.executor.submit(kernel_heartbeat) -- cgit v1.3.1