From bcd82ec75f481629bd377e443f6c78f3d0634d12 Mon Sep 17 00:00:00 2001 From: Jan David Mol <mol@astron.nl> Date: Thu, 4 Aug 2016 09:26:45 +0000 Subject: [PATCH] Task #9678: Replace select.select by select.poll to support fd > 1024 --- CEP/Pipeline/framework/lofarpipe/support/jobserver.py | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/CEP/Pipeline/framework/lofarpipe/support/jobserver.py b/CEP/Pipeline/framework/lofarpipe/support/jobserver.py index 1e2f724730f..10182fe2890 100644 --- a/CEP/Pipeline/framework/lofarpipe/support/jobserver.py +++ b/CEP/Pipeline/framework/lofarpipe/support/jobserver.py @@ -122,11 +122,13 @@ class JobSocketReceiver(SocketServer.ThreadingTCPServer): # until the queue is empty, thereby avoiding the problem of falling # out of the logger threads before all log messages have been handled. def loop_in_thread(): + poller = select.poll() + poller.register(self.socket.fileno(), select.POLLIN) + while True: - rd, wr, ex = select.select( - [self.socket.fileno()], [], [], self.timeout - ) - if rd: + events = poller.poll(self.timeout) + + if events: self.handle_request() elif self.abort: break -- GitLab