acm-sdk-python icon indicating copy to clipboard operation
acm-sdk-python copied to clipboard

watcher with gevent will throw BlockingIOError:

Open Nipi64310 opened this issue 5 years ago • 0 comments

bug recurrence: acm watcher script with code "from gevent import monkey; monkey.patch_all()" or gunicorn start service with "-k gevent"

Traceback (most recent call last): File "/root/anaconda3/lib/python3.6/site-packages/gunicorn/arbiter.py", line 583, in spawn_worker worker.init_process() File "/root/anaconda3/lib/python3.6/site-packages/gunicorn/workers/gthread.py", line 104, in init_process super(ThreadWorker, self).init_process() File "/root/anaconda3/lib/python3.6/site-packages/gunicorn/workers/base.py", line 129, in init_process self.load_wsgi() File "/root/anaconda3/lib/python3.6/site-packages/gunicorn/workers/base.py", line 138, in load_wsgi self.wsgi = self.app.wsgi() File "/root/anaconda3/lib/python3.6/site-packages/gunicorn/app/base.py", line 67, in wsgi self.callable = self.load() File "/root/anaconda3/lib/python3.6/site-packages/gunicorn/app/wsgiapp.py", line 52, in load return self.load_wsgiapp() File "/root/anaconda3/lib/python3.6/site-packages/gunicorn/app/wsgiapp.py", line 41, in load_wsgiapp return util.import_app(self.app_uri) File "/root/anaconda3/lib/python3.6/site-packages/gunicorn/util.py", line 350, in import_app import(module) File "xxxxxxxxx", line 32, in xxxxxxxxxxxx File "xxxxxxxxx", line 12, in init self.client.add_watcher(xxxxxxxxxxx) File "/root/anaconda3/lib/python3.6/site-packages/acm/commons.py", line 10, in synced_func return func(*args, **kws) File "/root/anaconda3/lib/python3.6/site-packages/acm/client.py", line 557, in add_watcher self.add_watchers(data_id, group, [cb]) File "/root/anaconda3/lib/python3.6/site-packages/acm/commons.py", line 10, in synced_func return func(*args, **kws) File "/root/anaconda3/lib/python3.6/site-packages/acm/client.py", line 602, in add_watchers key_list = self.process_mgr.list() File "/root/anaconda3/lib/python3.6/multiprocessing/managers.py", line 662, in temp token, exp = self._create(typeid, *args, **kwds) File "/root/anaconda3/lib/python3.6/multiprocessing/managers.py", line 554, in _create conn = self._Client(self._address, authkey=self._authkey) File "/root/anaconda3/lib/python3.6/multiprocessing/connection.py", line 493, in Client answer_challenge(c, authkey) File "/root/anaconda3/lib/python3.6/multiprocessing/connection.py", line 732, in answer_challenge message = connection.recv_bytes(256) # reject large message File "/root/anaconda3/lib/python3.6/multiprocessing/connection.py", line 216, in recv_bytes buf = self._recv_bytes(maxlength) File "/root/anaconda3/lib/python3.6/multiprocessing/connection.py", line 407, in _recv_bytes buf = self._recv(4) File "/root/anaconda3/lib/python3.6/multiprocessing/connection.py", line 379, in _recv chunk = read(handle, remaining) BlockingIOError: [Errno 11] Resource temporarily unavailable

Nipi64310 avatar Sep 29 '20 02:09 Nipi64310